-# talks only about the 180-degree meridian with respect to ships in
-# international waters; it ignores the international date line.
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/backward b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/backward
deleted file mode 100755
index dc7769fb1..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/backward
+++ /dev/null
@@ -1,117 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# This file provides links between current names for time zones
-# and their old names. Many names changed in late 1993.
-
-Link Africa/Asmara Africa/Asmera
-Link Africa/Bamako Africa/Timbuktu
-Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
-Link America/Adak America/Atka
-Link America/Argentina/Buenos_Aires America/Buenos_Aires
-Link America/Argentina/Catamarca America/Catamarca
-Link America/Atikokan America/Coral_Harbour
-Link America/Argentina/Cordoba America/Cordoba
-Link America/Tijuana America/Ensenada
-Link America/Indiana/Indianapolis America/Fort_Wayne
-Link America/Indiana/Indianapolis America/Indianapolis
-Link America/Argentina/Jujuy America/Jujuy
-Link America/Indiana/Knox America/Knox_IN
-Link America/Kentucky/Louisville America/Louisville
-Link America/Argentina/Mendoza America/Mendoza
-Link America/Rio_Branco America/Porto_Acre
-Link America/Argentina/Cordoba America/Rosario
-Link America/St_Thomas America/Virgin
-Link Asia/Ashgabat Asia/Ashkhabad
-Link Asia/Chongqing Asia/Chungking
-Link Asia/Dhaka Asia/Dacca
-Link Asia/Kathmandu Asia/Katmandu
-Link Asia/Kolkata Asia/Calcutta
-Link Asia/Macau Asia/Macao
-Link Asia/Jerusalem Asia/Tel_Aviv
-Link Asia/Ho_Chi_Minh Asia/Saigon
-Link Asia/Thimphu Asia/Thimbu
-Link Asia/Makassar Asia/Ujung_Pandang
-Link Asia/Ulaanbaatar Asia/Ulan_Bator
-Link Atlantic/Faroe Atlantic/Faeroe
-Link Europe/Oslo Atlantic/Jan_Mayen
-Link Australia/Sydney Australia/ACT
-Link Australia/Sydney Australia/Canberra
-Link Australia/Lord_Howe Australia/LHI
-Link Australia/Sydney Australia/NSW
-Link Australia/Darwin Australia/North
-Link Australia/Brisbane Australia/Queensland
-Link Australia/Adelaide Australia/South
-Link Australia/Hobart Australia/Tasmania
-Link Australia/Melbourne Australia/Victoria
-Link Australia/Perth Australia/West
-Link Australia/Broken_Hill Australia/Yancowinna
-Link America/Rio_Branco Brazil/Acre
-Link America/Noronha Brazil/DeNoronha
-Link America/Sao_Paulo Brazil/East
-Link America/Manaus Brazil/West
-Link America/Halifax Canada/Atlantic
-Link America/Winnipeg Canada/Central
-Link America/Regina Canada/East-Saskatchewan
-Link America/Toronto Canada/Eastern
-Link America/Edmonton Canada/Mountain
-Link America/St_Johns Canada/Newfoundland
-Link America/Vancouver Canada/Pacific
-Link America/Regina Canada/Saskatchewan
-Link America/Whitehorse Canada/Yukon
-Link America/Santiago Chile/Continental
-Link Pacific/Easter Chile/EasterIsland
-Link America/Havana Cuba
-Link Africa/Cairo Egypt
-Link Europe/Dublin Eire
-Link Europe/London Europe/Belfast
-Link Europe/Chisinau Europe/Tiraspol
-Link Europe/London GB
-Link Europe/London GB-Eire
-Link Etc/GMT GMT+0
-Link Etc/GMT GMT-0
-Link Etc/GMT GMT0
-Link Etc/GMT Greenwich
-Link Asia/Hong_Kong Hongkong
-Link Atlantic/Reykjavik Iceland
-Link Asia/Tehran Iran
-Link Asia/Jerusalem Israel
-Link America/Jamaica Jamaica
-Link Asia/Tokyo Japan
-Link Pacific/Kwajalein Kwajalein
-Link Africa/Tripoli Libya
-Link America/Tijuana Mexico/BajaNorte
-Link America/Mazatlan Mexico/BajaSur
-Link America/Mexico_City Mexico/General
-Link Pacific/Auckland NZ
-Link Pacific/Chatham NZ-CHAT
-Link America/Denver Navajo
-Link Asia/Shanghai PRC
-Link Pacific/Pago_Pago Pacific/Samoa
-Link Pacific/Chuuk Pacific/Yap
-Link Pacific/Chuuk Pacific/Truk
-Link Pacific/Pohnpei Pacific/Ponape
-Link Europe/Warsaw Poland
-Link Europe/Lisbon Portugal
-Link Asia/Taipei ROC
-Link Asia/Seoul ROK
-Link Asia/Singapore Singapore
-Link Europe/Istanbul Turkey
-Link Etc/UCT UCT
-Link America/Anchorage US/Alaska
-Link America/Adak US/Aleutian
-Link America/Phoenix US/Arizona
-Link America/Chicago US/Central
-Link America/Indiana/Indianapolis US/East-Indiana
-Link America/New_York US/Eastern
-Link Pacific/Honolulu US/Hawaii
-Link America/Indiana/Knox US/Indiana-Starke
-Link America/Detroit US/Michigan
-Link America/Denver US/Mountain
-Link America/Los_Angeles US/Pacific
-Link Pacific/Pago_Pago US/Samoa
-Link Etc/UTC UTC
-Link Etc/UTC Universal
-Link Europe/Moscow W-SU
-Link Etc/UTC Zulu
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/etcetera b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/etcetera
deleted file mode 100755
index a9ff72938..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/etcetera
+++ /dev/null
@@ -1,81 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# These entries are mostly present for historical reasons, so that
-# people in areas not otherwise covered by the tz files could "zic -l"
-# to a time zone that was right for their area. These days, the
-# tz files cover almost all the inhabited world, and the only practical
-# need now for the entries that are not on UTC are for ships at sea
-# that cannot use POSIX TZ settings.
-
-Zone Etc/GMT 0 - GMT
-Zone Etc/UTC 0 - UTC
-Zone Etc/UCT 0 - UCT
-
-# The following link uses older naming conventions,
-# but it belongs here, not in the file `backward',
-# as functions like gmtime load the "GMT" file to handle leap seconds properly.
-# We want this to work even on installations that omit the other older names.
-Link Etc/GMT GMT
-
-Link Etc/UTC Etc/Universal
-Link Etc/UTC Etc/Zulu
-
-Link Etc/GMT Etc/Greenwich
-Link Etc/GMT Etc/GMT-0
-Link Etc/GMT Etc/GMT+0
-Link Etc/GMT Etc/GMT0
-
-# We use POSIX-style signs in the Zone names and the output abbreviations,
-# even though this is the opposite of what many people expect.
-# POSIX has positive signs west of Greenwich, but many people expect
-# positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
-# the abbreviation "GMT+4" and corresponds to 4 hours behind UTC
-# (i.e. west of Greenwich) even though many people would expect it to
-# mean 4 hours ahead of UTC (i.e. east of Greenwich).
-#
-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
-# TZ='+4'; if you want time zone abbreviations conforming to
-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
-# offset is kept within the angle bracket (and is used for display)
-# while the POSIX sign is kept outside the angle bracket (and is used
-# for calculation).
-#
-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
-# GMT but uses the completely misleading abbreviation "GMT".
-
-# Earlier incarnations of this package were not POSIX-compliant,
-# and had lines such as
-# Zone GMT-12 -12 - GMT-1200
-# We did not want things to change quietly if someone accustomed to the old
-# way does a
-# zic -l GMT-12
-# so we moved the names into the Etc subdirectory.
-
-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
-Zone Etc/GMT-13 13 - GMT-13
-Zone Etc/GMT-12 12 - GMT-12
-Zone Etc/GMT-11 11 - GMT-11
-Zone Etc/GMT-10 10 - GMT-10
-Zone Etc/GMT-9 9 - GMT-9
-Zone Etc/GMT-8 8 - GMT-8
-Zone Etc/GMT-7 7 - GMT-7
-Zone Etc/GMT-6 6 - GMT-6
-Zone Etc/GMT-5 5 - GMT-5
-Zone Etc/GMT-4 4 - GMT-4
-Zone Etc/GMT-3 3 - GMT-3
-Zone Etc/GMT-2 2 - GMT-2
-Zone Etc/GMT-1 1 - GMT-1
-Zone Etc/GMT+1 -1 - GMT+1
-Zone Etc/GMT+2 -2 - GMT+2
-Zone Etc/GMT+3 -3 - GMT+3
-Zone Etc/GMT+4 -4 - GMT+4
-Zone Etc/GMT+5 -5 - GMT+5
-Zone Etc/GMT+6 -6 - GMT+6
-Zone Etc/GMT+7 -7 - GMT+7
-Zone Etc/GMT+8 -8 - GMT+8
-Zone Etc/GMT+9 -9 - GMT+9
-Zone Etc/GMT+10 -10 - GMT+10
-Zone Etc/GMT+11 -11 - GMT+11
-Zone Etc/GMT+12 -12 - GMT+12
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/europe b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/europe
deleted file mode 100755
index ad9816c10..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/europe
+++ /dev/null
@@ -1,2856 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@iana.org for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1991, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-# Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-# which I found in the UCLA library.
-#
-#
-# William Willett, The Waste of Daylight, 19th edition
-# (1914-03)
-#
-# Brazil's Departamento Servico da Hora (DSH),
-#
-# History of Summer Time
-# (1998-09-21, in Portuguese)
-
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-# std dst 2dst
-# LMT Local Mean Time
-# -4:00 AST ADT Atlantic
-# -3:00 WGT WGST Western Greenland*
-# -1:00 EGT EGST Eastern Greenland*
-# 0:00 GMT BST BDST Greenwich, British Summer
-# 0:00 GMT IST Greenwich, Irish Summer
-# 0:00 WET WEST WEMT Western Europe
-# 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
-# 0:20 NET NEST Netherlands (1937-1940)*
-# 1:00 CET CEST CEMT Central Europe
-# 1:00:14 SET Swedish (1879-1899)*
-# 2:00 EET EEST Eastern Europe
-# 3:00 MSK MSD Moscow
-#
-# A reliable and entertaining source about time zones, especially in Britain,
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-# From Peter Ilieve (1994-12-04),
-# The original six [EU members]: Belgium, France, (West) Germany, Italy,
-# Luxembourg, the Netherlands.
-# Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom.
-# Plus, from 1 Jan 81: Greece.
-# Plus, from 1 Jan 86: Spain, Portugal.
-# Plus, from 1 Jan 95: Austria, Finland, Sweden. (Norway negotiated terms for
-# entry but in a referendum on 28 Nov 94 the people voted No by 52.2% to 47.8%
-# on a turnout of 88.6%. This was almost the same result as Norway's previous
-# referendum in 1972, they are the only country to have said No twice.
-# Referendums in the other three countries voted Yes.)
-# ...
-# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT.
-# I don't think they know yet what they will do from 1996 onwards.
-# ...
-# There shouldn't be any [current members who are not using EU rules].
-# A Directive has the force of law, member states are obliged to enact
-# national law to implement it. The only contentious issue was the
-# different end date for the UK and Ireland, and this was always allowed
-# in the Directive.
-
-
-###############################################################################
-
-# Britain (United Kingdom) and Ireland (Eire)
-
-# From Peter Ilieve (1994-07-06):
-#
-# On 17 Jan 1994 the Independent, a UK quality newspaper, had a piece about
-# historical vistas along the Thames in west London. There was a photo
-# and a sketch map showing some of the sightlines involved. One paragraph
-# of the text said:
-#
-# `An old stone obelisk marking a forgotten terrestrial meridian stands
-# beside the river at Kew. In the 18th century, before time and longitude
-# was standardised by the Royal Observatory in Greenwich, scholars observed
-# this stone and the movement of stars from Kew Observatory nearby. They
-# made their calculations and set the time for the Horse Guards and Parliament,
-# but now the stone is obscured by scrubwood and can only be seen by walking
-# along the towpath within a few yards of it.'
-#
-# I have a one inch to one mile map of London and my estimate of the stone's
-# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should
-# be within about +-2". The Ordnance Survey grid reference is TQ172761.
-#
-# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
-
-# From Paul Eggert (1993-11-18):
-#
-# Howse writes that Britain was the first country to use standard time.
-# The railways cared most about the inconsistencies of local mean time,
-# and it was they who forced a uniform time on the country.
-# The original idea was credited to Dr. William Hyde Wollaston (1766-1828)
-# and was popularized by Abraham Follett Osler (1808-1903).
-# The first railway to adopt London time was the Great Western Railway
-# in November 1840; other railways followed suit, and by 1847 most
-# (though not all) railways used London time. On 1847-09-22 the
-# Railway Clearing House, an industry standards body, recommended that GMT be
-# adopted at all stations as soon as the General Post Office permitted it.
-# The transition occurred on 12-01 for the L&NW, the Caledonian,
-# and presumably other railways; the January 1848 Bradshaw's lists many
-# railways as using GMT. By 1855 the vast majority of public
-# clocks in Britain were set to GMT (though some, like the great clock
-# on Tom Tower at Christ Church, Oxford, were fitted with two minute hands,
-# one for local time and one for GMT). The last major holdout was the legal
-# system, which stubbornly stuck to local time for many years, leading
-# to oddities like polls opening at 08:13 and closing at 16:13.
-# The legal system finally switched to GMT when the Statutes (Definition
-# of Time) Act took effect; it received the Royal Assent on 1880-08-02.
-#
-# In the tables below, we condense this complicated story into a single
-# transition date for London, namely 1847-12-01. We don't know as much
-# about Dublin, so we use 1880-08-02, the legal transition time.
-
-# From Paul Eggert (2003-09-27):
-# Summer Time was first seriously proposed by William Willett (1857-1915),
-# a London builder and member of the Royal Astronomical Society
-# who circulated a pamphlet ``The Waste of Daylight'' (1907)
-# that proposed advancing clocks 20 minutes on each of four Sundays in April,
-# and retarding them by the same amount on four Sundays in September.
-# A bill was drafted in 1909 and introduced in Parliament several times,
-# but it met with ridicule and opposition, especially from farming interests.
-# Later editions of the pamphlet proposed one-hour summer time, and
-# it was eventually adopted as a wartime measure in 1916.
-# See: Summer Time Arrives Early, The Times (2000-05-18).
-# A monument to Willett was unveiled on 1927-05-21, in an open space in
-# a 45-acre wood near Chislehurst, Kent that was purchased by popular
-# subscription and open to the public. On the south face of the monolith,
-# designed by G. W. Miller, is the...William Willett Memorial Sundial,
-# which is permanently set to Summer Time.
-
-# From Winston Churchill (1934-04-28):
-# It is one of the paradoxes of history that we should owe the boon of
-# summer time, which gives every year to the people of this country
-# between 160 and 170 hours more daylight leisure, to a war which
-# plunged Europe into darkness for four years, and shook the
-# foundations of civilization throughout the world.
-# --
-# "A Silent Toast to William Willett", Pictorial Weekly
-#
-
-# From Paul Eggert (1996-09-03):
-# The OED Supplement says that the English originally said ``Daylight Saving''
-# when they were debating the adoption of DST in 1908; but by 1916 this
-# term appears only in quotes taken from DST's opponents, whereas the
-# proponents (who eventually won the argument) are quoted as using ``Summer''.
-
-# From Arthur David Olson (1989-01-19):
-#
-# A source at the British Information Office in New York avers that it's
-# known as "British" Summer Time in all parts of the United Kingdom.
-
-# Date: 4 Jan 89 08:57:25 GMT (Wed)
-# From: Jonathan Leffler
-# [British Summer Time] is fixed annually by Act of Parliament.
-# If you can predict what Parliament will do, you should be in
-# politics making a fortune, not computing.
-
-# From Chris Carrier (1996-06-14):
-# I remember reading in various wartime issues of the London Times the
-# acronym BDST for British Double Summer Time. Look for the published
-# time of sunrise and sunset in The Times, when BDST was in effect, and
-# if you find a zone reference it will say, "All times B.D.S.T."
-
-# From Joseph S. Myers (1999-09-02):
-# ... some military cables (WO 219/4100 - this is a copy from the
-# main SHAEF archives held in the US National Archives, SHAEF/5252/8/516)
-# agree that the usage is BDST (this appears in a message dated 17 Feb 1945).
-
-# From Joseph S. Myers (2000-10-03):
-# On 18th April 1941, Sir Stephen Tallents of the BBC wrote to Sir
-# Alexander Maxwell of the Home Office asking whether there was any
-# official designation; the reply of the 21st was that there wasn't
-# but he couldn't think of anything better than the "Double British
-# Summer Time" that the BBC had been using informally.
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
-
-# From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
-# [N]o official designation has as far as I know been adopted for the time
-# which is to be introduced in May....
-# I cannot think of anything better than "Double British Summer Time"
-# which could not be said to run counter to any official description.
-
-# From Paul Eggert (2000-10-02):
-# Howse writes (p 157) `DBST' too, but `BDST' seems to have been common
-# and follows the more usual convention of putting the location name first,
-# so we use `BDST'.
-
-# Peter Ilieve (1998-04-19) described at length
-# the history of summer time legislation in the United Kingdom.
-# Since 1998 Joseph S. Myers has been updating
-# and extending this list, which can be found in
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/
-#
-# History of legal time in Britain
-#
-# Rob Crowther (2012-01-04) reports that that URL no longer
-# exists, and the article can now be found at:
-#
-# http://www.polyomino.org.uk/british-time/
-#
-
-# From Joseph S. Myers (1998-01-06):
-#
-# The legal time in the UK outside of summer time is definitely GMT, not UTC;
-# see Lord Tanlaw's speech
-#
-# (Lords Hansard 11 June 1997 columns 964 to 976)
-# .
-
-# From Paul Eggert (2006-03-22):
-#
-# For lack of other data, follow Shanks & Pottenger for Eire in 1940-1948.
-#
-# Given Ilieve and Myers's data, the following claims by Shanks & Pottenger
-# are incorrect:
-# * Wales did not switch from GMT to daylight saving time until
-# 1921 Apr 3, when they began to conform with the rest of Great Britain.
-# Actually, Wales was identical after 1880.
-# * Eire had two transitions on 1916 Oct 1.
-# It actually just had one transition.
-# * Northern Ireland used single daylight saving time throughout WW II.
-# Actually, it conformed to Britain.
-# * GB-Eire changed standard time to 1 hour ahead of GMT on 1968-02-18.
-# Actually, that date saw the usual switch to summer time.
-# Standard time was not changed until 1968-10-27 (the clocks didn't change).
-#
-# Here is another incorrect claim by Shanks & Pottenger:
-# * Jersey, Guernsey, and the Isle of Man did not switch from GMT
-# to daylight saving time until 1921 Apr 3, when they began to
-# conform with Great Britain.
-# S.R.&O. 1916, No. 382 and HO 45/10811/312364 (quoted above) say otherwise.
-#
-# The following claim by Shanks & Pottenger is possible though doubtful;
-# we'll ignore it for now.
-# * Dublin's 1971-10-31 switch was at 02:00, even though London's was 03:00.
-#
-#
-# Whitman says Dublin Mean Time was -0:25:21, which is more precise than
-# Shanks & Pottenger.
-# Perhaps this was Dunsink Observatory Time, as Dunsink Observatory
-# (8 km NW of Dublin's center) seemingly was to Dublin as Greenwich was
-# to London. For example:
-#
-# "Timeball on the ballast office is down. Dunsink time."
-# -- James Joyce, Ulysses
-
-# From Joseph S. Myers (2005-01-26):
-# Irish laws are available online at www.irishstatutebook.ie. These include
-# various relating to legal time, for example:
-#
-# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html
-#
-# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html
-# ZZSI27Y1951.html ZZSI73Y1952.html
-#
-# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html
-# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html
-# ZZA23Y1968.html ZZA17Y1971.html
-#
-# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html
-# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html
-# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html
-#
-# [These are all relative to the root, e.g., the first is
-# .]
-#
-# (These are those I found, but there could be more. In any case these
-# should allow various updates to the comments in the europe file to cover
-# the laws applicable in Ireland.)
-#
-# (Note that the time in the Republic of Ireland since 1968 has been defined
-# in terms of standard time being GMT+1 with a period of winter time when it
-# is GMT, rather than standard time being GMT with a period of summer time
-# being GMT+1.)
-
-# From Paul Eggert (1999-03-28):
-# Clive Feather (, 1997-03-31)
-# reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time
-# (CT), equivalent to French civil time.
-# Julian Hill (, 1998-09-30) reports that
-# trains between Dollands Moor (the freight facility next door)
-# and Frethun run in CT.
-# My admittedly uninformed guess is that the terminal has two authorities,
-# the French concession operators and the British civil authorities,
-# and that the time depends on who you're talking to.
-# If, say, the British police were called to the station for some reason,
-# I would expect the official police report to use GMT/BST and not CET/CEST.
-# This is a borderline case, but for now let's stick to GMT/BST.
-
-# From an anonymous contributor (1996-06-02):
-# The law governing time in Ireland is under Statutory Instrument SI 395/94,
-# which gives force to European Union 7th Council Directive # 94/21/EC.
-# Under this directive, the Minister for Justice in Ireland makes appropriate
-# regulations. I spoke this morning with the Secretary of the Department of
-# Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
-# "Irish Summer Time", abbreviated to "IST".
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Summer Time Act, 1916
-Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
-Rule GB-Eire 1916 only - Oct 1 2:00s 0 GMT
-# S.R.&O. 1917, No. 358
-Rule GB-Eire 1917 only - Apr 8 2:00s 1:00 BST
-Rule GB-Eire 1917 only - Sep 17 2:00s 0 GMT
-# S.R.&O. 1918, No. 274
-Rule GB-Eire 1918 only - Mar 24 2:00s 1:00 BST
-Rule GB-Eire 1918 only - Sep 30 2:00s 0 GMT
-# S.R.&O. 1919, No. 297
-Rule GB-Eire 1919 only - Mar 30 2:00s 1:00 BST
-Rule GB-Eire 1919 only - Sep 29 2:00s 0 GMT
-# S.R.&O. 1920, No. 458
-Rule GB-Eire 1920 only - Mar 28 2:00s 1:00 BST
-# S.R.&O. 1920, No. 1844
-Rule GB-Eire 1920 only - Oct 25 2:00s 0 GMT
-# S.R.&O. 1921, No. 363
-Rule GB-Eire 1921 only - Apr 3 2:00s 1:00 BST
-Rule GB-Eire 1921 only - Oct 3 2:00s 0 GMT
-# S.R.&O. 1922, No. 264
-Rule GB-Eire 1922 only - Mar 26 2:00s 1:00 BST
-Rule GB-Eire 1922 only - Oct 8 2:00s 0 GMT
-# The Summer Time Act, 1922
-Rule GB-Eire 1923 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1923 1924 - Sep Sun>=16 2:00s 0 GMT
-Rule GB-Eire 1924 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1925 1926 - Apr Sun>=16 2:00s 1:00 BST
-# The Summer Time Act, 1925
-Rule GB-Eire 1925 1938 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1927 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1928 1929 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1930 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1931 1932 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1933 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1934 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1935 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1936 1937 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1938 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1939 only - Apr Sun>=16 2:00s 1:00 BST
-# S.R.&O. 1939, No. 1379
-Rule GB-Eire 1939 only - Nov Sun>=16 2:00s 0 GMT
-# S.R.&O. 1940, No. 172 and No. 1883
-Rule GB-Eire 1940 only - Feb Sun>=23 2:00s 1:00 BST
-# S.R.&O. 1941, No. 476
-Rule GB-Eire 1941 only - May Sun>=2 1:00s 2:00 BDST
-Rule GB-Eire 1941 1943 - Aug Sun>=9 1:00s 1:00 BST
-# S.R.&O. 1942, No. 506
-Rule GB-Eire 1942 1944 - Apr Sun>=2 1:00s 2:00 BDST
-# S.R.&O. 1944, No. 932
-Rule GB-Eire 1944 only - Sep Sun>=16 1:00s 1:00 BST
-# S.R.&O. 1945, No. 312
-Rule GB-Eire 1945 only - Apr Mon>=2 1:00s 2:00 BDST
-Rule GB-Eire 1945 only - Jul Sun>=9 1:00s 1:00 BST
-# S.R.&O. 1945, No. 1208
-Rule GB-Eire 1945 1946 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1946 only - Apr Sun>=9 2:00s 1:00 BST
-# The Summer Time Act, 1947
-Rule GB-Eire 1947 only - Mar 16 2:00s 1:00 BST
-Rule GB-Eire 1947 only - Apr 13 1:00s 2:00 BDST
-Rule GB-Eire 1947 only - Aug 10 1:00s 1:00 BST
-Rule GB-Eire 1947 only - Nov 2 2:00s 0 GMT
-# Summer Time Order, 1948 (S.I. 1948/495)
-Rule GB-Eire 1948 only - Mar 14 2:00s 1:00 BST
-Rule GB-Eire 1948 only - Oct 31 2:00s 0 GMT
-# Summer Time Order, 1949 (S.I. 1949/373)
-Rule GB-Eire 1949 only - Apr 3 2:00s 1:00 BST
-Rule GB-Eire 1949 only - Oct 30 2:00s 0 GMT
-# Summer Time Order, 1950 (S.I. 1950/518)
-# Summer Time Order, 1951 (S.I. 1951/430)
-# Summer Time Order, 1952 (S.I. 1952/451)
-Rule GB-Eire 1950 1952 - Apr Sun>=14 2:00s 1:00 BST
-Rule GB-Eire 1950 1952 - Oct Sun>=21 2:00s 0 GMT
-# revert to the rules of the Summer Time Act, 1925
-Rule GB-Eire 1953 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1953 1960 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1954 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1955 1956 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1957 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1958 1959 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1960 only - Apr Sun>=9 2:00s 1:00 BST
-# Summer Time Order, 1961 (S.I. 1961/71)
-# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
-# Summer Time Order, 1963 (S.I. 1963/81)
-Rule GB-Eire 1961 1963 - Mar lastSun 2:00s 1:00 BST
-Rule GB-Eire 1961 1968 - Oct Sun>=23 2:00s 0 GMT
-# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
-# Summer Time Order, 1964 (S.I. 1964/1201)
-# Summer Time Order, 1967 (S.I. 1967/1148)
-Rule GB-Eire 1964 1967 - Mar Sun>=19 2:00s 1:00 BST
-# Summer Time Order, 1968 (S.I. 1968/117)
-Rule GB-Eire 1968 only - Feb 18 2:00s 1:00 BST
-# The British Standard Time Act, 1968
-# (no summer time)
-# The Summer Time Act, 1972
-Rule GB-Eire 1972 1980 - Mar Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1972 1980 - Oct Sun>=23 2:00s 0 GMT
-# Summer Time Order, 1980 (S.I. 1980/1089)
-# Summer Time Order, 1982 (S.I. 1982/1673)
-# Summer Time Order, 1986 (S.I. 1986/223)
-# Summer Time Order, 1988 (S.I. 1988/931)
-Rule GB-Eire 1981 1995 - Mar lastSun 1:00u 1:00 BST
-Rule GB-Eire 1981 1989 - Oct Sun>=23 1:00u 0 GMT
-# Summer Time Order, 1989 (S.I. 1989/985)
-# Summer Time Order, 1992 (S.I. 1992/1729)
-# Summer Time Order 1994 (S.I. 1994/2798)
-Rule GB-Eire 1990 1995 - Oct Sun>=22 1:00u 0 GMT
-# Summer Time Order 1997 (S.I. 1997/2982)
-# See EU for rules starting in 1996.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
- 0:00 GB-Eire %s 1968 Oct 27
- 1:00 - BST 1971 Oct 31 2:00u
- 0:00 GB-Eire %s 1996
- 0:00 EU GMT/BST
-Link Europe/London Europe/Jersey
-Link Europe/London Europe/Guernsey
-Link Europe/London Europe/Isle_of_Man
-Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
- -0:25:21 - DMT 1916 May 21 2:00
- -0:25:21 1:00 IST 1916 Oct 1 2:00s
- 0:00 GB-Eire %s 1921 Dec 6 # independence
- 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
- 0:00 1:00 IST 1946 Oct 6 2:00
- 0:00 - GMT 1947 Mar 16 2:00
- 0:00 1:00 IST 1947 Nov 2 2:00
- 0:00 - GMT 1948 Apr 18 2:00
- 0:00 GB-Eire GMT/IST 1968 Oct 27
- 1:00 - IST 1971 Oct 31 2:00u
- 0:00 GB-Eire GMT/IST 1996
- 0:00 EU GMT/IST
-
-###############################################################################
-
-# Europe
-
-# EU rules are for the European Union, previously known as the EC, EEC,
-# Common Market, etc.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule EU 1977 1980 - Apr Sun>=1 1:00u 1:00 S
-Rule EU 1977 only - Sep lastSun 1:00u 0 -
-Rule EU 1978 only - Oct 1 1:00u 0 -
-Rule EU 1979 1995 - Sep lastSun 1:00u 0 -
-Rule EU 1981 max - Mar lastSun 1:00u 1:00 S
-Rule EU 1996 max - Oct lastSun 1:00u 0 -
-# The most recent directive covers the years starting in 2002. See:
-#
-# Directive 2000/84/EC of the European Parliament and of the Council
-# of 19 January 2001 on summer-time arrangements.
-#
-
-# W-Eur differs from EU only in that W-Eur uses standard time.
-Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S
-Rule W-Eur 1977 only - Sep lastSun 1:00s 0 -
-Rule W-Eur 1978 only - Oct 1 1:00s 0 -
-Rule W-Eur 1979 1995 - Sep lastSun 1:00s 0 -
-Rule W-Eur 1981 max - Mar lastSun 1:00s 1:00 S
-Rule W-Eur 1996 max - Oct lastSun 1:00s 0 -
-
-# Older C-Eur rules are for convenience in the tables.
-# From 1977 on, C-Eur differs from EU only in that C-Eur uses standard time.
-Rule C-Eur 1916 only - Apr 30 23:00 1:00 S
-Rule C-Eur 1916 only - Oct 1 1:00 0 -
-Rule C-Eur 1917 1918 - Apr Mon>=15 2:00s 1:00 S
-Rule C-Eur 1917 1918 - Sep Mon>=15 2:00s 0 -
-Rule C-Eur 1940 only - Apr 1 2:00s 1:00 S
-Rule C-Eur 1942 only - Nov 2 2:00s 0 -
-Rule C-Eur 1943 only - Mar 29 2:00s 1:00 S
-Rule C-Eur 1943 only - Oct 4 2:00s 0 -
-Rule C-Eur 1944 1945 - Apr Mon>=1 2:00s 1:00 S
-# Whitman gives 1944 Oct 7; go with Shanks & Pottenger.
-Rule C-Eur 1944 only - Oct 2 2:00s 0 -
-# From Jesper Norgaard Welen (2008-07-13):
-#
-# I found what is probably a typo of 2:00 which should perhaps be 2:00s
-# in the C-Eur rule from tz database version 2008d (this part was
-# corrected in version 2008d). The circumstancial evidence is simply the
-# tz database itself, as seen below:
-#
-# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
-# 0:00 France WE%sT 1945 Sep 16 3:00
-#
-# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
-# 0:00 France WE%sT 1945 Sep 16 3:00
-#
-# Zone Europe/Belgrade 1:22:00 - LMT 1884
-# 1:00 1:00 CEST 1945 Sep 16 2:00s
-#
-# Rule France 1945 only - Sep 16 3:00 0 -
-# Rule Belgium 1945 only - Sep 16 2:00s 0 -
-# Rule Neth 1945 only - Sep 16 2:00s 0 -
-#
-# The rule line to be changed is:
-#
-# Rule C-Eur 1945 only - Sep 16 2:00 0 -
-#
-# It seems that Paris, Monaco, Rule France, Rule Belgium all agree on
-# 2:00 standard time, e.g. 3:00 local time. However there are no
-# countries that use C-Eur rules in September 1945, so the only items
-# affected are apparently these ficticious zones that translates acronyms
-# CET and MET:
-#
-# Zone CET 1:00 C-Eur CE%sT
-# Zone MET 1:00 C-Eur ME%sT
-#
-# It this is right then the corrected version would look like:
-#
-# Rule C-Eur 1945 only - Sep 16 2:00s 0 -
-#
-# A small step for mankind though 8-)
-Rule C-Eur 1945 only - Sep 16 2:00s 0 -
-Rule C-Eur 1977 1980 - Apr Sun>=1 2:00s 1:00 S
-Rule C-Eur 1977 only - Sep lastSun 2:00s 0 -
-Rule C-Eur 1978 only - Oct 1 2:00s 0 -
-Rule C-Eur 1979 1995 - Sep lastSun 2:00s 0 -
-Rule C-Eur 1981 max - Mar lastSun 2:00s 1:00 S
-Rule C-Eur 1996 max - Oct lastSun 2:00s 0 -
-
-# E-Eur differs from EU only in that E-Eur switches at midnight local time.
-Rule E-Eur 1977 1980 - Apr Sun>=1 0:00 1:00 S
-Rule E-Eur 1977 only - Sep lastSun 0:00 0 -
-Rule E-Eur 1978 only - Oct 1 0:00 0 -
-Rule E-Eur 1979 1995 - Sep lastSun 0:00 0 -
-Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
-Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
-Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
-Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
-Rule Russia 1918 only - Sep 16 1:00 1:00 MST
-Rule Russia 1919 only - May 31 23:00 2:00 MDST
-Rule Russia 1919 only - Jul 1 2:00 1:00 S
-Rule Russia 1919 only - Aug 16 0:00 0 -
-Rule Russia 1921 only - Feb 14 23:00 1:00 S
-Rule Russia 1921 only - Mar 20 23:00 2:00 M # Midsummer
-Rule Russia 1921 only - Sep 1 0:00 1:00 S
-Rule Russia 1921 only - Oct 1 0:00 0 -
-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
-Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
-Rule Russia 1981 1983 - Oct 1 0:00 0 -
-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
-#
-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
-Rule Russia 1992 only - Sep lastSat 23:00 0 -
-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
-Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
-
-# From Alexander Krivenyshev (2011-06-14):
-# According to Kremlin press service, Russian President Dmitry Medvedev
-# signed a federal law "On calculation of time" on June 9, 2011.
-# According to the law Russia is abolishing daylight saving time.
-#
-# Medvedev signed a law "On the Calculation of Time" (in russian):
-#
-# http://bmockbe.ru/events/?ID=7583
-#
-#
-# Medvedev signed a law on the calculation of the time (in russian):
-#
-# http://www.regnum.ru/news/polit/1413906.html
-#
-
-# From Arthur David Olson (2011-06-15):
-# Take "abolishing daylight saving time" to mean that time is now considered
-# to be standard.
-
-# These are for backward compatibility with older versions.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone WET 0:00 EU WE%sT
-Zone CET 1:00 C-Eur CE%sT
-Zone MET 1:00 C-Eur ME%sT
-Zone EET 2:00 EU EE%sT
-
-# Previous editions of this database used abbreviations like MET DST
-# for Central European Summer Time, but this didn't agree with common usage.
-
-# From Markus Kuhn (1996-07-12):
-# The official German names ... are
-#
-# Mitteleuropaeische Zeit (MEZ) = UTC+01:00
-# Mitteleuropaeische Sommerzeit (MESZ) = UTC+02:00
-#
-# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG),
-# 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111)....
-# I wrote ... to the German Federal Physical-Technical Institution
-#
-# Physikalisch-Technische Bundesanstalt (PTB)
-# Laboratorium 4.41 "Zeiteinheit"
-# Postfach 3345
-# D-38023 Braunschweig
-# phone: +49 531 592-0
-#
-# ... I received today an answer letter from Dr. Peter Hetzel, head of the PTB
-# department for time and frequency transmission. He explained that the
-# PTB translates MEZ and MESZ into English as
-#
-# Central European Time (CET) = UTC+01:00
-# Central European Summer Time (CEST) = UTC+02:00
-
-
-# Albania
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Albania 1940 only - Jun 16 0:00 1:00 S
-Rule Albania 1942 only - Nov 2 3:00 0 -
-Rule Albania 1943 only - Mar 29 2:00 1:00 S
-Rule Albania 1943 only - Apr 10 3:00 0 -
-Rule Albania 1974 only - May 4 0:00 1:00 S
-Rule Albania 1974 only - Oct 2 0:00 0 -
-Rule Albania 1975 only - May 1 0:00 1:00 S
-Rule Albania 1975 only - Oct 2 0:00 0 -
-Rule Albania 1976 only - May 2 0:00 1:00 S
-Rule Albania 1976 only - Oct 3 0:00 0 -
-Rule Albania 1977 only - May 8 0:00 1:00 S
-Rule Albania 1977 only - Oct 2 0:00 0 -
-Rule Albania 1978 only - May 6 0:00 1:00 S
-Rule Albania 1978 only - Oct 1 0:00 0 -
-Rule Albania 1979 only - May 5 0:00 1:00 S
-Rule Albania 1979 only - Sep 30 0:00 0 -
-Rule Albania 1980 only - May 3 0:00 1:00 S
-Rule Albania 1980 only - Oct 4 0:00 0 -
-Rule Albania 1981 only - Apr 26 0:00 1:00 S
-Rule Albania 1981 only - Sep 27 0:00 0 -
-Rule Albania 1982 only - May 2 0:00 1:00 S
-Rule Albania 1982 only - Oct 3 0:00 0 -
-Rule Albania 1983 only - Apr 18 0:00 1:00 S
-Rule Albania 1983 only - Oct 1 0:00 0 -
-Rule Albania 1984 only - Apr 1 0:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Tirane 1:19:20 - LMT 1914
- 1:00 - CET 1940 Jun 16
- 1:00 Albania CE%sT 1984 Jul
- 1:00 EU CE%sT
-
-# Andorra
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Andorra 0:06:04 - LMT 1901
- 0:00 - WET 1946 Sep 30
- 1:00 - CET 1985 Mar 31 2:00
- 1:00 EU CE%sT
-
-# Austria
-
-# From Paul Eggert (2006-03-22): Shanks & Pottenger give 1918-06-16 and
-# 1945-11-18, but the Austrian Federal Office of Metrology and
-# Surveying (BEV) gives 1918-09-16 and for Vienna gives the "alleged"
-# date of 1945-04-12 with no time. For the 1980-04-06 transition
-# Shanks & Pottenger give 02:00, the BEV 00:00. Go with the BEV,
-# and guess 02:00 for 1945-04-12.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Austria 1920 only - Apr 5 2:00s 1:00 S
-Rule Austria 1920 only - Sep 13 2:00s 0 -
-Rule Austria 1946 only - Apr 14 2:00s 1:00 S
-Rule Austria 1946 1948 - Oct Sun>=1 2:00s 0 -
-Rule Austria 1947 only - Apr 6 2:00s 1:00 S
-Rule Austria 1948 only - Apr 18 2:00s 1:00 S
-Rule Austria 1980 only - Apr 6 0:00 1:00 S
-Rule Austria 1980 only - Sep 28 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vienna 1:05:20 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1920
- 1:00 Austria CE%sT 1940 Apr 1 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
- 1:00 1:00 CEST 1945 Apr 12 2:00s
- 1:00 - CET 1946
- 1:00 Austria CE%sT 1981
- 1:00 EU CE%sT
-
-# Belarus
-# From Yauhen Kharuzhy (2011-09-16):
-# By latest Belarus government act Europe/Minsk timezone was changed to
-# GMT+3 without DST (was GMT+2 with DST).
-#
-# Sources (Russian language):
-# 1.
-#
-# http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html
-#
-# 2.
-#
-# http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/
-#
-# 3.
-#
-# http://news.tut.by/society/250578.html
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Minsk 1:50:16 - LMT 1880
- 1:50 - MMT 1924 May 2 # Minsk Mean Time
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Jun 28
- 1:00 C-Eur CE%sT 1944 Jul 3
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1991 Mar 31 2:00s
- 2:00 1:00 EEST 1991 Sep 29 2:00s
- 2:00 - EET 1992 Mar 29 0:00s
- 2:00 1:00 EEST 1992 Sep 27 0:00s
- 2:00 Russia EE%sT 2011 Mar 27 2:00s
- 3:00 - FET # Further-eastern European Time
-
-# Belgium
-#
-# From Paul Eggert (1997-07-02):
-# Entries from 1918 through 1991 are taken from:
-# Annuaire de L'Observatoire Royal de Belgique,
-# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991
-# (Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC),
-# pp 8-9.
-# LMT before 1892 was 0:17:30, according to the official journal of Belgium:
-# Moniteur Belge, Samedi 30 Avril 1892, N.121.
-# Thanks to Pascal Delmoitie for these references.
-# The 1918 rules are listed for completeness; they apply to unoccupied Belgium.
-# Assume Brussels switched to WET in 1918 when the armistice took effect.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Belgium 1918 only - Mar 9 0:00s 1:00 S
-Rule Belgium 1918 1919 - Oct Sat>=1 23:00s 0 -
-Rule Belgium 1919 only - Mar 1 23:00s 1:00 S
-Rule Belgium 1920 only - Feb 14 23:00s 1:00 S
-Rule Belgium 1920 only - Oct 23 23:00s 0 -
-Rule Belgium 1921 only - Mar 14 23:00s 1:00 S
-Rule Belgium 1921 only - Oct 25 23:00s 0 -
-Rule Belgium 1922 only - Mar 25 23:00s 1:00 S
-Rule Belgium 1922 1927 - Oct Sat>=1 23:00s 0 -
-Rule Belgium 1923 only - Apr 21 23:00s 1:00 S
-Rule Belgium 1924 only - Mar 29 23:00s 1:00 S
-Rule Belgium 1925 only - Apr 4 23:00s 1:00 S
-# DSH writes that a royal decree of 1926-02-22 specified the Sun following 3rd
-# Sat in Apr (except if it's Easter, in which case it's one Sunday earlier),
-# to Sun following 1st Sat in Oct, and that a royal decree of 1928-09-15
-# changed the transition times to 02:00 GMT.
-Rule Belgium 1926 only - Apr 17 23:00s 1:00 S
-Rule Belgium 1927 only - Apr 9 23:00s 1:00 S
-Rule Belgium 1928 only - Apr 14 23:00s 1:00 S
-Rule Belgium 1928 1938 - Oct Sun>=2 2:00s 0 -
-Rule Belgium 1929 only - Apr 21 2:00s 1:00 S
-Rule Belgium 1930 only - Apr 13 2:00s 1:00 S
-Rule Belgium 1931 only - Apr 19 2:00s 1:00 S
-Rule Belgium 1932 only - Apr 3 2:00s 1:00 S
-Rule Belgium 1933 only - Mar 26 2:00s 1:00 S
-Rule Belgium 1934 only - Apr 8 2:00s 1:00 S
-Rule Belgium 1935 only - Mar 31 2:00s 1:00 S
-Rule Belgium 1936 only - Apr 19 2:00s 1:00 S
-Rule Belgium 1937 only - Apr 4 2:00s 1:00 S
-Rule Belgium 1938 only - Mar 27 2:00s 1:00 S
-Rule Belgium 1939 only - Apr 16 2:00s 1:00 S
-Rule Belgium 1939 only - Nov 19 2:00s 0 -
-Rule Belgium 1940 only - Feb 25 2:00s 1:00 S
-Rule Belgium 1944 only - Sep 17 2:00s 0 -
-Rule Belgium 1945 only - Apr 2 2:00s 1:00 S
-Rule Belgium 1945 only - Sep 16 2:00s 0 -
-Rule Belgium 1946 only - May 19 2:00s 1:00 S
-Rule Belgium 1946 only - Oct 7 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Brussels 0:17:30 - LMT 1880
- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
- 0:00 - WET 1914 Nov 8
- 1:00 - CET 1916 May 1 0:00
- 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
- 0:00 Belgium WE%sT 1940 May 20 2:00s
- 1:00 C-Eur CE%sT 1944 Sep 3
- 1:00 Belgium CE%sT 1977
- 1:00 EU CE%sT
-
-# Bosnia and Herzegovina
-# see Serbia
-
-# Bulgaria
-#
-# From Plamen Simenov via Steffen Thorsen (1999-09-09):
-# A document of Government of Bulgaria (No.94/1997) says:
-# EET --> EETDST is in 03:00 Local time in last Sunday of March ...
-# EETDST --> EET is in 04:00 Local time in last Sunday of October
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Bulg 1979 only - Mar 31 23:00 1:00 S
-Rule Bulg 1979 only - Oct 1 1:00 0 -
-Rule Bulg 1980 1982 - Apr Sat>=1 23:00 1:00 S
-Rule Bulg 1980 only - Sep 29 1:00 0 -
-Rule Bulg 1981 only - Sep 27 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Sofia 1:33:16 - LMT 1880
- 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
- 2:00 - EET 1942 Nov 2 3:00
- 1:00 C-Eur CE%sT 1945
- 1:00 - CET 1945 Apr 2 3:00
- 2:00 - EET 1979 Mar 31 23:00
- 2:00 Bulg EE%sT 1982 Sep 26 2:00
- 2:00 C-Eur EE%sT 1991
- 2:00 E-Eur EE%sT 1997
- 2:00 EU EE%sT
-
-# Croatia
-# see Serbia
-
-# Cyprus
-# Please see the `asia' file for Asia/Nicosia.
-
-# Czech Republic
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Czech 1945 only - Apr 8 2:00s 1:00 S
-Rule Czech 1945 only - Nov 18 2:00s 0 -
-Rule Czech 1946 only - May 6 2:00s 1:00 S
-Rule Czech 1946 1949 - Oct Sun>=1 2:00s 0 -
-Rule Czech 1947 only - Apr 20 2:00s 1:00 S
-Rule Czech 1948 only - Apr 18 2:00s 1:00 S
-Rule Czech 1949 only - Apr 9 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Prague 0:57:44 - LMT 1850
- 0:57:44 - PMT 1891 Oct # Prague Mean Time
- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
- 1:00 Czech CE%sT 1979
- 1:00 EU CE%sT
-
-# Denmark, Faroe Islands, and Greenland
-
-# From Jesper Norgaard Welen (2005-04-26):
-# http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law
-# [introducing standard time] was in effect from 1894-01-01....
-# The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL
-# confirms this, and states that the law was put forth 1893-03-29.
-#
-# The EU treaty with effect from 1973:
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL
-#
-# This provoked a new law from 1974 to make possible summer time changes
-# in subsequenet decrees with the law
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL
-#
-# It seems however that no decree was set forward until 1980. I have
-# not found any decree, but in another related law, the effecting DST
-# changes are stated explicitly to be from 1980-04-06 at 02:00 to
-# 1980-09-28 at 02:00. If this is true, this differs slightly from
-# the EU rule in that DST runs to 02:00, not 03:00. We don't know
-# when Denmark began using the EU rule correctly, but we have only
-# confirmation of the 1980-time, so I presume it was correct in 1981:
-# The law is about the management of the extra hour, concerning
-# working hours reported and effect on obligatory-rest rules (which
-# was suspended on that night):
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL
-
-# From Jesper Norgaard Welen (2005-06-11):
-# The Herning Folkeblad (1980-09-26) reported that the night between
-# Saturday and Sunday the clock is set back from three to two.
-
-# From Paul Eggert (2005-06-11):
-# Hence the "02:00" of the 1980 law refers to standard time, not
-# wall-clock time, and so the EU rules were in effect in 1980.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Denmark 1916 only - May 14 23:00 1:00 S
-Rule Denmark 1916 only - Sep 30 23:00 0 -
-Rule Denmark 1940 only - May 15 0:00 1:00 S
-Rule Denmark 1945 only - Apr 2 2:00s 1:00 S
-Rule Denmark 1945 only - Aug 15 2:00s 0 -
-Rule Denmark 1946 only - May 1 2:00s 1:00 S
-Rule Denmark 1946 only - Sep 1 2:00s 0 -
-Rule Denmark 1947 only - May 4 2:00s 1:00 S
-Rule Denmark 1947 only - Aug 10 2:00s 0 -
-Rule Denmark 1948 only - May 9 2:00s 1:00 S
-Rule Denmark 1948 only - Aug 8 2:00s 0 -
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Copenhagen 0:50:20 - LMT 1890
- 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
- 1:00 Denmark CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Denmark CE%sT 1980
- 1:00 EU CE%sT
-Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Torshavn
- 0:00 - WET 1981
- 0:00 EU WE%sT
-#
-# From Paul Eggert (2004-10-31):
-# During World War II, Germany maintained secret manned weather stations in
-# East Greenland and Franz Josef Land, but we don't know their time zones.
-# My source for this is Wilhelm Dege's book mentioned under Svalbard.
-#
-# From Paul Eggert (2006-03-22):
-# Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01,
-# and left the EU on 1985-02-01. It therefore should have been using EU
-# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthab
-# used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU
-# rules since at least 1991. Assume EU rules since 1980.
-
-# From Gwillin Law (2001-06-06), citing
-# (2001-03-15),
-# and with translations corrected by Steffen Thorsen:
-#
-# Greenland has four local times, and the relation to UTC
-# is according to the following time line:
-#
-# The military zone near Thule UTC-4
-# Standard Greenland time UTC-3
-# Scoresbysund UTC-1
-# Danmarkshavn UTC
-#
-# In the military area near Thule and in Danmarkshavn DST will not be
-# introduced.
-
-# From Rives McDow (2001-11-01):
-#
-# I correspond regularly with the Dansk Polarcenter, and wrote them at
-# the time to clarify the situation in Thule. Unfortunately, I have
-# not heard back from them regarding my recent letter. [But I have
-# info from earlier correspondence.]
-#
-# According to the center, a very small local time zone around Thule
-# Air Base keeps the time according to UTC-4, implementing daylight
-# savings using North America rules, changing the time at 02:00 local time....
-#
-# The east coast of Greenland north of the community of Scoresbysund
-# uses UTC in the same way as in Iceland, year round, with no dst.
-# There are just a few stations on this coast, including the
-# Danmarkshavn ICAO weather station mentioned in your September 29th
-# email. The other stations are two sledge patrol stations in
-# Mestersvig and Daneborg, the air force base at Station Nord, and the
-# DPC research station at Zackenberg.
-#
-# Scoresbysund and two small villages nearby keep time UTC-1 and use
-# the same daylight savings time period as in West Greenland (Godthab).
-#
-# The rest of Greenland, including Godthab (this area, although it
-# includes central Greenland, is known as west Greenland), keeps time
-# UTC-3, with daylight savings methods according to European rules.
-#
-# It is common procedure to use UTC 0 in the wilderness of East and
-# North Greenland, because it is mainly Icelandic aircraft operators
-# maintaining traffic in these areas. However, the official status of
-# this area is that it sticks with Godthab time. This area might be
-# considered a dual time zone in some respects because of this.
-
-# From Rives McDow (2001-11-19):
-# I heard back from someone stationed at Thule; the time change took place
-# there at 2:00 AM.
-
-# From Paul Eggert (2006-03-22):
-# From 1997 on the CIA map shows Danmarkshavn on GMT;
-# the 1995 map as like Godthab.
-# For lack of better info, assume they were like Godthab before 1996.
-# startkart.no says Thule does not observe DST, but this is clearly an error,
-# so go with Shanks & Pottenger for Thule transitions until this year.
-# For 2007 on assume Thule will stay in sync with US DST rules.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
-Rule Thule 1991 1992 - Sep lastSun 2:00 0 S
-Rule Thule 1993 2006 - Apr Sun>=1 2:00 1:00 D
-Rule Thule 1993 2006 - Oct lastSun 2:00 0 S
-Rule Thule 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
- -3:00 - WGT 1980 Apr 6 2:00
- -3:00 EU WG%sT 1996
- 0:00 - GMT
-Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
- -2:00 - CGT 1980 Apr 6 2:00
- -2:00 C-Eur CG%sT 1981 Mar 29
- -1:00 EU EG%sT
-Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
- -3:00 - WGT 1980 Apr 6 2:00
- -3:00 EU WG%sT
-Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
- -4:00 Thule A%sT
-
-# Estonia
-# From Peter Ilieve (1994-10-15):
-# A relative in Tallinn confirms the accuracy of the data for 1989 onwards
-# [through 1994] and gives the legal authority for it,
-# a regulation of the Government of Estonia, No. 111 of 1989....
-#
-# From Peter Ilieve (1996-10-28):
-# [IATA SSIM (1992/1996) claims that the Baltic republics switch at 01:00s,
-# but a relative confirms that Estonia still switches at 02:00s, writing:]
-# ``I do not [know] exactly but there are some little different
-# (confusing) rules for International Air and Railway Transport Schedules
-# conversion in Sunday connected with end of summer time in Estonia....
-# A discussion is running about the summer time efficiency and effect on
-# human physiology. It seems that Estonia maybe will not change to
-# summer time next spring.''
-
-# From Peter Ilieve (1998-11-04), heavily edited:
-#
-# The 1998-09-22 Estonian time law
-#
-# refers to the Eighth Directive and cites the association agreement between
-# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120).
-#
-# I also asked [my relative] whether they use any standard abbreviation
-# for their standard and summer times. He says no, they use "suveaeg"
-# (summer time) and "talveaeg" (winter time).
-
-# From The Baltic Times (1999-09-09)
-# via Steffen Thorsen:
-# This year will mark the last time Estonia shifts to summer time,
-# a council of the ruling coalition announced Sept. 6....
-# But what this could mean for Estonia's chances of joining the European
-# Union are still unclear. In 1994, the EU declared summer time compulsory
-# for all member states until 2001. Brussels has yet to decide what to do
-# after that.
-
-# From Mart Oruaas (2000-01-29):
-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
-# the year round. The regulation is effective 1999-11-01.
-
-# From Toomas Soome (2002-02-21):
-# The Estonian government has changed once again timezone politics.
-# Now we are using again EU rules.
-#
-# From Urmet Jaanes (2002-03-28):
-# The legislative reference is Government decree No. 84 on 2002-02-21.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Tallinn 1:39:00 - LMT 1880
- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
- 1:00 C-Eur CE%sT 1919 Jul
- 1:39:00 - TMT 1921 May
- 2:00 - EET 1940 Aug 6
- 3:00 - MSK 1941 Sep 15
- 1:00 C-Eur CE%sT 1944 Sep 22
- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
- 2:00 1:00 EEST 1989 Sep 24 2:00s
- 2:00 C-Eur EE%sT 1998 Sep 22
- 2:00 EU EE%sT 1999 Nov 1
- 2:00 - EET 2002 Feb 21
- 2:00 EU EE%sT
-
-# Finland
-
-# From Hannu Strang (1994-09-25 06:03:37 UTC):
-# Well, here in Helsinki we're just changing from summer time to regular one,
-# and it's supposed to change at 4am...
-
-# From Janne Snabb (2010-0715):
-#
-# I noticed that the Finland data is not accurate for years 1981 and 1982.
-# During these two first trial years the DST adjustment was made one hour
-# earlier than in forthcoming years. Starting 1983 the adjustment was made
-# according to the central European standards.
-#
-# This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac
-# Office of University of Helsinki, ISBN 952-10-3221-9, available online (in
-# Finnish) at
-#
-#
-# http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
-#
-#
-# Page 105 (56 in PDF version) has a handy table of all past daylight savings
-# transitions. It is easy enough to interpret without Finnish skills.
-#
-# This is also confirmed by Finnish Broadcasting Company's archive at:
-#
-#
-# http://www.yle.fi/elavaarkisto/?s=s&g=1&ag=5&t=&a=3401
-#
-#
-# The news clip from 1981 says that "the time between 2 and 3 o'clock does not
-# exist tonight."
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Finland 1942 only - Apr 3 0:00 1:00 S
-Rule Finland 1942 only - Oct 3 0:00 0 -
-Rule Finland 1981 1982 - Mar lastSun 2:00 1:00 S
-Rule Finland 1981 1982 - Sep lastSun 3:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31
- 1:39:52 - HMT 1921 May # Helsinki Mean Time
- 2:00 Finland EE%sT 1983
- 2:00 EU EE%sT
-
-# Aaland Is
-Link Europe/Helsinki Europe/Mariehamn
-
-
-# France
-
-# From Ciro Discepolo (2000-12-20):
-#
-# Henri Le Corre, Regimes Horaires pour le monde entier, Editions
-# Traditionnelles - Paris 2 books, 1993
-#
-# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur,
-# Paris, 1991
-#
-# Francoise Gauquelin, Problemes de l'heure resolus en astrologie,
-# Guy tredaniel, Paris 1987
-
-
-#
-# Shank & Pottenger seem to use `24:00' ambiguously; resolve it with Whitman.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule France 1916 only - Jun 14 23:00s 1:00 S
-Rule France 1916 1919 - Oct Sun>=1 23:00s 0 -
-Rule France 1917 only - Mar 24 23:00s 1:00 S
-Rule France 1918 only - Mar 9 23:00s 1:00 S
-Rule France 1919 only - Mar 1 23:00s 1:00 S
-Rule France 1920 only - Feb 14 23:00s 1:00 S
-Rule France 1920 only - Oct 23 23:00s 0 -
-Rule France 1921 only - Mar 14 23:00s 1:00 S
-Rule France 1921 only - Oct 25 23:00s 0 -
-Rule France 1922 only - Mar 25 23:00s 1:00 S
-# DSH writes that a law of 1923-05-24 specified 3rd Sat in Apr at 23:00 to 1st
-# Sat in Oct at 24:00; and that in 1930, because of Easter, the transitions
-# were Apr 12 and Oct 5. Go with Shanks & Pottenger.
-Rule France 1922 1938 - Oct Sat>=1 23:00s 0 -
-Rule France 1923 only - May 26 23:00s 1:00 S
-Rule France 1924 only - Mar 29 23:00s 1:00 S
-Rule France 1925 only - Apr 4 23:00s 1:00 S
-Rule France 1926 only - Apr 17 23:00s 1:00 S
-Rule France 1927 only - Apr 9 23:00s 1:00 S
-Rule France 1928 only - Apr 14 23:00s 1:00 S
-Rule France 1929 only - Apr 20 23:00s 1:00 S
-Rule France 1930 only - Apr 12 23:00s 1:00 S
-Rule France 1931 only - Apr 18 23:00s 1:00 S
-Rule France 1932 only - Apr 2 23:00s 1:00 S
-Rule France 1933 only - Mar 25 23:00s 1:00 S
-Rule France 1934 only - Apr 7 23:00s 1:00 S
-Rule France 1935 only - Mar 30 23:00s 1:00 S
-Rule France 1936 only - Apr 18 23:00s 1:00 S
-Rule France 1937 only - Apr 3 23:00s 1:00 S
-Rule France 1938 only - Mar 26 23:00s 1:00 S
-Rule France 1939 only - Apr 15 23:00s 1:00 S
-Rule France 1939 only - Nov 18 23:00s 0 -
-Rule France 1940 only - Feb 25 2:00 1:00 S
-# The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger
-# write that they were used in Monaco and in many French locations.
-# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
-# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
-# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Descartes,
-# Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
-# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
-# Dole, Morez, St-Claude, and Collonges (Haute-Savoie).
-Rule France 1941 only - May 5 0:00 2:00 M # Midsummer
-# Shanks & Pottenger say this transition occurred at Oct 6 1:00,
-# but go with Denis Excoffier (1997-12-12),
-# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
-# as saying 5/10/41 22hUT.
-Rule France 1941 only - Oct 6 0:00 1:00 S
-Rule France 1942 only - Mar 9 0:00 2:00 M
-Rule France 1942 only - Nov 2 3:00 1:00 S
-Rule France 1943 only - Mar 29 2:00 2:00 M
-Rule France 1943 only - Oct 4 3:00 1:00 S
-Rule France 1944 only - Apr 3 2:00 2:00 M
-Rule France 1944 only - Oct 8 1:00 1:00 S
-Rule France 1945 only - Apr 2 2:00 2:00 M
-Rule France 1945 only - Sep 16 3:00 0 -
-# Shanks & Pottenger give Mar 28 2:00 and Sep 26 3:00;
-# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
-Rule France 1976 only - Mar 28 1:00 1:00 S
-Rule France 1976 only - Sep 26 1:00 0 -
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
-# but Howse quotes the actual French legislation as saying 0:09:21.
-# Go with Howse. Howse writes that the time in France was officially based
-# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
-# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
- 0:00 France WE%sT 1940 Jun 14 23:00
-# Le Corre says Paris stuck with occupied-France time after the liberation;
-# go with Shanks & Pottenger.
- 1:00 C-Eur CE%sT 1944 Aug 25
- 0:00 France WE%sT 1945 Sep 16 3:00
- 1:00 France CE%sT 1977
- 1:00 EU CE%sT
-
-# Germany
-
-# From Markus Kuhn (1998-09-29):
-# The German time zone web site by the Physikalisch-Technische
-# Bundesanstalt contains DST information back to 1916.
-# [See tz-link.htm for the URL.]
-
-# From Joerg Schilling (2002-10-23):
-# In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
-#
-# General [Nikolai] Bersarin .
-
-# From Paul Eggert (2003-03-08):
-#
-# http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
-#
-# says that Bersarin issued an order to use Moscow time on May 20.
-# However, Moscow did not observe daylight saving in 1945, so
-# this was equivalent to CEMT (GMT+3), not GMT+4.
-
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Germany 1946 only - Apr 14 2:00s 1:00 S
-Rule Germany 1946 only - Oct 7 2:00s 0 -
-Rule Germany 1947 1949 - Oct Sun>=1 2:00s 0 -
-# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
-# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
-# Go with the PTB.
-Rule Germany 1947 only - Apr 6 3:00s 1:00 S
-Rule Germany 1947 only - May 11 2:00s 2:00 M
-Rule Germany 1947 only - Jun 29 3:00 1:00 S
-Rule Germany 1948 only - Apr 18 2:00s 1:00 S
-Rule Germany 1949 only - Apr 10 2:00s 1:00 S
-
-Rule SovietZone 1945 only - May 24 2:00 2:00 M # Midsummer
-Rule SovietZone 1945 only - Sep 24 3:00 1:00 S
-Rule SovietZone 1945 only - Nov 18 2:00s 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1945 May 24 2:00
- 1:00 SovietZone CE%sT 1946
- 1:00 Germany CE%sT 1980
- 1:00 EU CE%sT
-
-# Georgia
-# Please see the "asia" file for Asia/Tbilisi.
-# Herodotus (Histories, IV.45) says Georgia north of the Phasis (now Rioni)
-# is in Europe. Our reference location Tbilisi is in the Asian part.
-
-# Gibraltar
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
- 0:00 GB-Eire %s 1957 Apr 14 2:00
- 1:00 - CET 1982
- 1:00 EU CE%sT
-
-# Greece
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman gives 1932 Jul 5 - Nov 1; go with Shanks & Pottenger.
-Rule Greece 1932 only - Jul 7 0:00 1:00 S
-Rule Greece 1932 only - Sep 1 0:00 0 -
-# Whitman gives 1941 Apr 25 - ?; go with Shanks & Pottenger.
-Rule Greece 1941 only - Apr 7 0:00 1:00 S
-# Whitman gives 1942 Feb 2 - ?; go with Shanks & Pottenger.
-Rule Greece 1942 only - Nov 2 3:00 0 -
-Rule Greece 1943 only - Mar 30 0:00 1:00 S
-Rule Greece 1943 only - Oct 4 0:00 0 -
-# Whitman gives 1944 Oct 3 - Oct 31; go with Shanks & Pottenger.
-Rule Greece 1952 only - Jul 1 0:00 1:00 S
-Rule Greece 1952 only - Nov 2 0:00 0 -
-Rule Greece 1975 only - Apr 12 0:00s 1:00 S
-Rule Greece 1975 only - Nov 26 0:00s 0 -
-Rule Greece 1976 only - Apr 11 2:00s 1:00 S
-Rule Greece 1976 only - Oct 10 2:00s 0 -
-Rule Greece 1977 1978 - Apr Sun>=1 2:00s 1:00 S
-Rule Greece 1977 only - Sep 26 2:00s 0 -
-Rule Greece 1978 only - Sep 24 4:00 0 -
-Rule Greece 1979 only - Apr 1 9:00 1:00 S
-Rule Greece 1979 only - Sep 29 2:00 0 -
-Rule Greece 1980 only - Apr 1 0:00 1:00 S
-Rule Greece 1980 only - Sep 28 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
- 2:00 Greece EE%sT 1941 Apr 30
- 1:00 Greece CE%sT 1944 Apr 4
- 2:00 Greece EE%sT 1981
- # Shanks & Pottenger say it switched to C-Eur in 1981;
- # go with EU instead, since Greece joined it on Jan 1.
- 2:00 EU EE%sT
-
-# Hungary
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Hungary 1918 only - Apr 1 3:00 1:00 S
-Rule Hungary 1918 only - Sep 29 3:00 0 -
-Rule Hungary 1919 only - Apr 15 3:00 1:00 S
-Rule Hungary 1919 only - Sep 15 3:00 0 -
-Rule Hungary 1920 only - Apr 5 3:00 1:00 S
-Rule Hungary 1920 only - Sep 30 3:00 0 -
-Rule Hungary 1945 only - May 1 23:00 1:00 S
-Rule Hungary 1945 only - Nov 3 0:00 0 -
-Rule Hungary 1946 only - Mar 31 2:00s 1:00 S
-Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 -
-Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S
-Rule Hungary 1950 only - Apr 17 2:00s 1:00 S
-Rule Hungary 1950 only - Oct 23 2:00s 0 -
-Rule Hungary 1954 1955 - May 23 0:00 1:00 S
-Rule Hungary 1954 1955 - Oct 3 0:00 0 -
-Rule Hungary 1956 only - Jun Sun>=1 0:00 1:00 S
-Rule Hungary 1956 only - Sep lastSun 0:00 0 -
-Rule Hungary 1957 only - Jun Sun>=1 1:00 1:00 S
-Rule Hungary 1957 only - Sep lastSun 3:00 0 -
-Rule Hungary 1980 only - Apr 6 1:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
- 1:00 C-Eur CE%sT 1918
- 1:00 Hungary CE%sT 1941 Apr 6 2:00
- 1:00 C-Eur CE%sT 1945
- 1:00 Hungary CE%sT 1980 Sep 28 2:00s
- 1:00 EU CE%sT
-
-# Iceland
-#
-# From Adam David (1993-11-06):
-# The name of the timezone in Iceland for system / mail / news purposes is GMT.
-#
-# (1993-12-05):
-# This material is paraphrased from the 1988 edition of the University of
-# Iceland Almanak.
-#
-# From January 1st, 1908 the whole of Iceland was standardised at 1 hour
-# behind GMT. Previously, local mean solar time was used in different parts
-# of Iceland, the almanak had been based on Reykjavik mean solar time which
-# was 1 hour and 28 minutes behind GMT.
-#
-# "first day of winter" referred to [below] means the first day of the 26 weeks
-# of winter, according to the old icelandic calendar that dates back to the
-# time the norsemen first settled Iceland. The first day of winter is always
-# Saturday, but is not dependent on the Julian or Gregorian calendars.
-#
-# (1993-12-10):
-# I have a reference from the Oxford Icelandic-English dictionary for the
-# beginning of winter, which ties it to the ecclesiastical calendar (and thus
-# to the julian/gregorian calendar) over the period in question.
-# the winter begins on the Saturday next before St. Luke's day
-# (old style), or on St. Luke's day, if a Saturday.
-# St. Luke's day ought to be traceable from ecclesiastical sources. "old style"
-# might be a reference to the Julian calendar as opposed to Gregorian, or it
-# might mean something else (???).
-#
-# From Paul Eggert (2006-03-22):
-# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
-# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
-# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Iceland 1917 1918 - Feb 19 23:00 1:00 S
-Rule Iceland 1917 only - Oct 21 1:00 0 -
-Rule Iceland 1918 only - Nov 16 1:00 0 -
-Rule Iceland 1939 only - Apr 29 23:00 1:00 S
-Rule Iceland 1939 only - Nov 29 2:00 0 -
-Rule Iceland 1940 only - Feb 25 2:00 1:00 S
-Rule Iceland 1940 only - Nov 3 2:00 0 -
-Rule Iceland 1941 only - Mar 2 1:00s 1:00 S
-Rule Iceland 1941 only - Nov 2 1:00s 0 -
-Rule Iceland 1942 only - Mar 8 1:00s 1:00 S
-Rule Iceland 1942 only - Oct 25 1:00s 0 -
-# 1943-1946 - first Sunday in March until first Sunday in winter
-Rule Iceland 1943 1946 - Mar Sun>=1 1:00s 1:00 S
-Rule Iceland 1943 1948 - Oct Sun>=22 1:00s 0 -
-# 1947-1967 - first Sunday in April until first Sunday in winter
-Rule Iceland 1947 1967 - Apr Sun>=1 1:00s 1:00 S
-# 1949 Oct transition delayed by 1 week
-Rule Iceland 1949 only - Oct 30 1:00s 0 -
-Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
-Rule Iceland 1967 only - Oct 29 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
- -1:27:48 - RMT 1908 # Reykjavik Mean Time?
- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
- 0:00 - GMT
-
-# Italy
-#
-# From Paul Eggert (2001-03-06):
-# Sicily and Sardinia each had their own time zones from 1866 to 1893,
-# called Palermo Time (+00:53:28) and Cagliari Time (+00:36:32).
-# During World War II, German-controlled Italy used German time.
-# But these events all occurred before the 1970 cutoff,
-# so record only the time in Rome.
-#
-# From Paul Eggert (2006-03-22):
-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
-# F. Pollastri
-#
-# Day-light Saving Time in Italy (2006-02-03)
-#
-# (`FP' below), taken from an Italian National Electrotechnical Institute
-# publication. When the three sources disagree, guess who's right, as follows:
-#
-# year FP Shanks&P. (S) Whitman (W) Go with:
-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
-# 09-30 09-29 24:00 09-30 01:00 FP & W
-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
-# 10-06 10-05 24:00 10-06 01:00 FP & W
-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
-# 1944 04-02 04-03 02:00 S (see C-Eur)
-# 09-16 10-02 03:00 FP; guess 24:00s
-# 1945 09-14 09-16 24:00 FP; guess 24:00s
-# 1970 05-21 05-31 00:00 S
-# 09-20 09-27 00:00 S
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
-Rule Italy 1916 only - Oct 1 0:00s 0 -
-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
-Rule Italy 1917 only - Sep 30 0:00s 0 -
-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
-Rule Italy 1920 only - Sep 19 0:00s 0 -
-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
-Rule Italy 1944 only - Sep 17 0:00s 0 -
-Rule Italy 1945 only - Apr 2 2:00 1:00 S
-Rule Italy 1945 only - Sep 15 0:00s 0 -
-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
-Rule Italy 1946 only - Oct 6 2:00s 0 -
-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
-Rule Italy 1947 only - Oct 5 0:00s 0 -
-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
-Rule Italy 1948 only - Oct 3 2:00s 0 -
-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
-Rule Italy 1969 only - Jun 1 0:00 1:00 S
-Rule Italy 1970 only - May 31 0:00 1:00 S
-Rule Italy 1970 only - Sep lastSun 0:00 0 -
-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
-Rule Italy 1971 only - Sep lastSun 1:00 0 -
-Rule Italy 1972 only - Oct 1 0:00 0 -
-Rule Italy 1973 only - Jun 3 0:00 1:00 S
-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
-Rule Italy 1974 only - May 26 0:00 1:00 S
-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
-Rule Italy 1976 only - May 30 0:00s 1:00 S
-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
-Rule Italy 1978 only - Oct 1 0:00s 0 -
-Rule Italy 1979 only - Sep 30 0:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
- 1:00 Italy CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1944 Jul
- 1:00 Italy CE%sT 1980
- 1:00 EU CE%sT
-
-Link Europe/Rome Europe/Vatican
-Link Europe/Rome Europe/San_Marino
-
-# Latvia
-
-# From Liene Kanepe (1998-09-17):
-
-# I asked about this matter Scientific Secretary of the Institute of Astronomy
-# of The University of Latvia Dr. paed Mr. Ilgonis Vilks. I also searched the
-# correct data in juridical acts and I found some juridical documents about
-# changes in the counting of time in Latvia from 1981....
-#
-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
-# and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
-#
-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on the last Sunday of March at 02:00
-# (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
-# September at 03:00 (GMT 23:00 on the previous day).
-#
-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
-# ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
-# Estonian SSR and Kaliningrad region of Russian Federation all year round the
-# time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
-# transition to summer time is performed on the last Sunday of March at 02:00
-# (GMT 00:00), turning the hands of the clock 1 hour forward. The end of
-# daylight saving time is performed on the last Sunday of September at 03:00
-# (GMT 00:00), turning the hands of the clock 1 hour backward. Exception is
-# 1989-03-26, when we must not turn the hands of the clock....
-#
-# The Regulations of the Cabinet of Ministers of the Republic of Latvia of
-# 1997-01-21 on transition to Summer time ... established the same order of
-# daylight savings time settings as in the States of the European Union.
-
-# From Andrei Ivanov (2000-03-06):
-# This year Latvia will not switch to Daylight Savings Time (as specified in
-#
-# The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
-# 29-Feb-2000 (#79) , in Latvian for subscribers only).
-
-#
-# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow:
-#
-# The Latvian government on 2 January decided that the country will
-# institute daylight-saving time this spring, LETA reported.
-# Last February the three Baltic states decided not to turn back their
-# clocks one hour in the spring....
-# Minister of Economy Aigars Kalvitis noted that Latvia had too few
-# daylight hours and thus decided to comply with a draft European
-# Commission directive that provides for instituting daylight-saving
-# time in EU countries between 2002 and 2006. The Latvian government
-# urged Lithuania and Estonia to adopt a similar time policy, but it
-# appears that they will not do so....
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S
-Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Riga 1:36:24 - LMT 1880
- 1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time
- 1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
- 1:36:24 - RMT 1919 Apr 1 2:00
- 1:36:24 1:00 LST 1919 May 22 3:00
- 1:36:24 - RMT 1926 May 11
- 2:00 - EET 1940 Aug 5
- 3:00 - MSK 1941 Jul
- 1:00 C-Eur CE%sT 1944 Oct 13
- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
- 2:00 1:00 EEST 1989 Sep lastSun 2:00s
- 2:00 Latvia EE%sT 1997 Jan 21
- 2:00 EU EE%sT 2000 Feb 29
- 2:00 - EET 2001 Jan 2
- 2:00 EU EE%sT
-
-# Liechtenstein
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
- 1:00 - CET 1981
- 1:00 EU CE%sT
-
-# Lithuania
-
-# From Paul Eggert (1996-11-22):
-# IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
-# known to be wrong about Estonia and Latvia, assume it's wrong here too.
-
-# From Marius Gedminas (1998-08-07):
-# I would like to inform that in this year Lithuanian time zone
-# (Europe/Vilnius) was changed.
-
-# From ELTA No. 972 (2582) (1999-09-29),
-# via Steffen Thorsen:
-# Lithuania has shifted back to the second time zone (GMT plus two hours)
-# to be valid here starting from October 31,
-# as decided by the national government on Wednesday....
-# The Lithuanian government also announced plans to consider a
-# motion to give up shifting to summer time in spring, as it was
-# already done by Estonia.
-
-# From the
-# Fact File, Lithuanian State Department of Tourism
-# (2000-03-27): Local time is GMT+2 hours ..., no daylight saving.
-
-# From a user via Klaus Marten (2003-02-07):
-# As a candidate for membership of the European Union, Lithuania will
-# observe Summer Time in 2003, changing its clocks at the times laid
-# down in EU Directive 2000/84 of 19.I.01 (i.e. at the same times as its
-# neighbour Latvia). The text of the Lithuanian government Order of
-# 7.XI.02 to this effect can be found at
-# http://www.lrvk.lt/nut/11/n1749.htm
-
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vilnius 1:41:16 - LMT 1880
- 1:24:00 - WMT 1917 # Warsaw Mean Time
- 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
- 1:00 - CET 1920 Jul 12
- 2:00 - EET 1920 Oct 9
- 1:00 - CET 1940 Aug 3
- 3:00 - MSK 1941 Jun 24
- 1:00 C-Eur CE%sT 1944 Aug
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 1:00 EEST 1991 Sep 29 2:00s
- 2:00 C-Eur EE%sT 1998
- 2:00 - EET 1998 Mar 29 1:00u
- 1:00 EU CE%sT 1999 Oct 31 1:00u
- 2:00 - EET 2003 Jan 1
- 2:00 EU EE%sT
-
-# Luxembourg
-# Whitman disagrees with most of these dates in minor ways;
-# go with Shanks & Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Lux 1916 only - May 14 23:00 1:00 S
-Rule Lux 1916 only - Oct 1 1:00 0 -
-Rule Lux 1917 only - Apr 28 23:00 1:00 S
-Rule Lux 1917 only - Sep 17 1:00 0 -
-Rule Lux 1918 only - Apr Mon>=15 2:00s 1:00 S
-Rule Lux 1918 only - Sep Mon>=15 2:00s 0 -
-Rule Lux 1919 only - Mar 1 23:00 1:00 S
-Rule Lux 1919 only - Oct 5 3:00 0 -
-Rule Lux 1920 only - Feb 14 23:00 1:00 S
-Rule Lux 1920 only - Oct 24 2:00 0 -
-Rule Lux 1921 only - Mar 14 23:00 1:00 S
-Rule Lux 1921 only - Oct 26 2:00 0 -
-Rule Lux 1922 only - Mar 25 23:00 1:00 S
-Rule Lux 1922 only - Oct Sun>=2 1:00 0 -
-Rule Lux 1923 only - Apr 21 23:00 1:00 S
-Rule Lux 1923 only - Oct Sun>=2 2:00 0 -
-Rule Lux 1924 only - Mar 29 23:00 1:00 S
-Rule Lux 1924 1928 - Oct Sun>=2 1:00 0 -
-Rule Lux 1925 only - Apr 5 23:00 1:00 S
-Rule Lux 1926 only - Apr 17 23:00 1:00 S
-Rule Lux 1927 only - Apr 9 23:00 1:00 S
-Rule Lux 1928 only - Apr 14 23:00 1:00 S
-Rule Lux 1929 only - Apr 20 23:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
- 1:00 Lux CE%sT 1918 Nov 25
- 0:00 Lux WE%sT 1929 Oct 6 2:00s
- 0:00 Belgium WE%sT 1940 May 14 3:00
- 1:00 C-Eur WE%sT 1944 Sep 18 3:00
- 1:00 Belgium CE%sT 1977
- 1:00 EU CE%sT
-
-# Macedonia
-# see Serbia
-
-# Malta
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Malta 1973 only - Mar 31 0:00s 1:00 S
-Rule Malta 1973 only - Sep 29 0:00s 0 -
-Rule Malta 1974 only - Apr 21 0:00s 1:00 S
-Rule Malta 1974 only - Sep 16 0:00s 0 -
-Rule Malta 1975 1979 - Apr Sun>=15 2:00 1:00 S
-Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
-Rule Malta 1980 only - Mar 31 2:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
- 1:00 Italy CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
- 1:00 Italy CE%sT 1973 Mar 31
- 1:00 Malta CE%sT 1981
- 1:00 EU CE%sT
-
-# Moldova
-
-# From Paul Eggert (2006-03-22):
-# A previous version of this database followed Shanks & Pottenger, who write
-# that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
-# However, this is most likely an error, as Moldova declared independence
-# on 1991-08-27 (the 1992-01-19 date is that of a Russian decree).
-# In early 1992 there was large-scale interethnic violence in the area
-# and it's possible that some Russophones continued to observe Moscow time.
-# But [two people] separately reported via
-# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
-# The Tiraspol entry has therefore been removed for now.
-#
-# From Alexander Krivenyshev (2011-10-17):
-# Pridnestrovian Moldavian Republic (PMR, also known as
-# "Pridnestrovie") has abolished seasonal clock change (no transition
-# to the Winter Time).
-#
-# News (in Russian):
-#
-# http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html
-#
-#
-#
-# http://www.allmoldova.com/moldova-news/1249064116.html
-#
-#
-# The substance of this change (reinstatement of the Tiraspol entry)
-# is from a patch from Petr Machata (2011-10-17)
-#
-# From Tim Parenti (2011-10-19)
-# In addition, being situated at +4651+2938 would give Tiraspol
-# a pre-1880 LMT offset of 1:58:32.
-#
-# (which agrees with the earlier entry that had been removed)
-#
-# From Alexander Krivenyshev (2011-10-26)
-# NO need to divide Moldova into two timezones at this point.
-# As of today, Transnistria (Pridnestrovie)- Tiraspol reversed its own
-# decision to abolish DST this winter.
-# Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
-# Tiraspol will go back to winter time on October 30, 2011.
-# News from Moldova (in russian):
-#
-# http://ru.publika.md/link_317061.html
-#
-
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Chisinau 1:55:20 - LMT 1880
- 1:55 - CMT 1918 Feb 15 # Chisinau MT
- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
- 2:00 Romania EE%sT 1940 Aug 15
- 2:00 1:00 EEST 1941 Jul 17
- 1:00 C-Eur CE%sT 1944 Aug 24
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 May 6
- 2:00 - EET 1991
- 2:00 Russia EE%sT 1992
- 2:00 E-Eur EE%sT 1997
-# See Romania commentary for the guessed 1997 transition to EU rules.
- 2:00 EU EE%sT
-
-# Monaco
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
- 0:00 France WE%sT 1945 Sep 16 3:00
- 1:00 France CE%sT 1977
- 1:00 EU CE%sT
-
-# Montenegro
-# see Serbia
-
-# Netherlands
-
-# Howse writes that the Netherlands' railways used GMT between 1892 and 1940,
-# but for other purposes the Netherlands used Amsterdam mean time.
-
-# However, Robert H. van Gent writes (2001-04-01):
-# Howse's statement is only correct up to 1909. From 1909-05-01 (00:00:00
-# Amsterdam mean time) onwards, the whole of the Netherlands (including
-# the Dutch railways) was required by law to observe Amsterdam mean time
-# (19 minutes 32.13 seconds ahead of GMT). This had already been the
-# common practice (except for the railways) for many decades but it was
-# not until 1909 when the Dutch government finally defined this by law.
-# On 1937-07-01 this was changed to 20 minutes (exactly) ahead of GMT and
-# was generally known as Dutch Time ("Nederlandse Tijd").
-#
-# (2001-04-08):
-# 1892-05-01 was the date when the Dutch railways were by law required to
-# observe GMT while the remainder of the Netherlands adhered to the common
-# practice of following Amsterdam mean time.
-#
-# (2001-04-09):
-# In 1835 the authorities of the province of North Holland requested the
-# municipal authorities of the towns and cities in the province to observe
-# Amsterdam mean time but I do not know in how many cases this request was
-# actually followed.
-#
-# From 1852 onwards the Dutch telegraph offices were by law required to
-# observe Amsterdam mean time. As the time signals from the observatory of
-# Leiden were also distributed by the telegraph system, I assume that most
-# places linked up with the telegraph (and railway) system automatically
-# adopted Amsterdam mean time.
-#
-# Although the early Dutch railway companies initially observed a variety
-# of times, most of them had adopted Amsterdam mean time by 1858 but it
-# was not until 1866 when they were all required by law to observe
-# Amsterdam mean time.
-
-# The data before 1945 are taken from
-# .
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
-Rule Neth 1916 only - Oct 1 0:00 0 AMT # Amsterdam Mean Time
-Rule Neth 1917 only - Apr 16 2:00s 1:00 NST
-Rule Neth 1917 only - Sep 17 2:00s 0 AMT
-Rule Neth 1918 1921 - Apr Mon>=1 2:00s 1:00 NST
-Rule Neth 1918 1921 - Sep lastMon 2:00s 0 AMT
-Rule Neth 1922 only - Mar lastSun 2:00s 1:00 NST
-Rule Neth 1922 1936 - Oct Sun>=2 2:00s 0 AMT
-Rule Neth 1923 only - Jun Fri>=1 2:00s 1:00 NST
-Rule Neth 1924 only - Mar lastSun 2:00s 1:00 NST
-Rule Neth 1925 only - Jun Fri>=1 2:00s 1:00 NST
-# From 1926 through 1939 DST began 05-15, except that it was delayed by a week
-# in years when 05-15 fell in the Pentecost weekend.
-Rule Neth 1926 1931 - May 15 2:00s 1:00 NST
-Rule Neth 1932 only - May 22 2:00s 1:00 NST
-Rule Neth 1933 1936 - May 15 2:00s 1:00 NST
-Rule Neth 1937 only - May 22 2:00s 1:00 NST
-Rule Neth 1937 only - Jul 1 0:00 1:00 S
-Rule Neth 1937 1939 - Oct Sun>=2 2:00s 0 -
-Rule Neth 1938 1939 - May 15 2:00s 1:00 S
-Rule Neth 1945 only - Apr 2 2:00s 1:00 S
-Rule Neth 1945 only - Sep 16 2:00s 0 -
-#
-# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
-# below because the current format requires GMTOFF to be an integer.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Amsterdam 0:19:32 - LMT 1835
- 0:19:32 Neth %s 1937 Jul 1
- 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Neth CE%sT 1977
- 1:00 EU CE%sT
-
-# Norway
-# http://met.no/met/met_lex/q_u/sommertid.html (2004-01) agrees with Shanks &
-# Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Norway 1916 only - May 22 1:00 1:00 S
-Rule Norway 1916 only - Sep 30 0:00 0 -
-Rule Norway 1945 only - Apr 2 2:00s 1:00 S
-Rule Norway 1945 only - Oct 1 2:00s 0 -
-Rule Norway 1959 1964 - Mar Sun>=15 2:00s 1:00 S
-Rule Norway 1959 1965 - Sep Sun>=15 2:00s 0 -
-Rule Norway 1965 only - Apr 25 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Oslo 0:43:00 - LMT 1895 Jan 1
- 1:00 Norway CE%sT 1940 Aug 10 23:00
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Norway CE%sT 1980
- 1:00 EU CE%sT
-
-# Svalbard & Jan Mayen
-
-# From Steffen Thorsen (2001-05-01):
-# Although I could not find it explicitly, it seems that Jan Mayen and
-# Svalbard have been using the same time as Norway at least since the
-# time they were declared as parts of Norway. Svalbard was declared
-# as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan
-# Mayen by law of 1930-02-27 no 2, section 2. (From
-# http://www.lovdata.no/all/nl-19250717-011.html and
-# http://www.lovdata.no/all/nl-19300227-002.html). The law/regulation
-# for normal/standard time in Norway is from 1894-06-29 no 1 (came
-# into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a
-# part of this law since 1925/1930. (From
-# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been
-# able to find if Jan Mayen used a different time zone (e.g. -0100)
-# before 1930. Jan Mayen has only been "inhabitated" since 1921 by
-# Norwegian meteorologists and maybe used the same time as Norway ever
-# since 1921. Svalbard (Arctic/Longyearbyen) has been inhabited since
-# before 1895, and therefore probably changed the local time somewhere
-# between 1895 and 1925 (inclusive).
-
-# From Paul Eggert (2001-05-01):
-#
-# Actually, Jan Mayen was never occupied by Germany during World War II,
-# so it must have diverged from Oslo time during the war, as Oslo was
-# keeping Berlin time.
-#
-# says that the meteorologists
-# burned down their station in 1940 and left the island, but returned in
-# 1941 with a small Norwegian garrison and continued operations despite
-# frequent air ttacks from Germans. In 1943 the Americans established a
-# radiolocating station on the island, called "Atlantic City". Possibly
-# the UTC offset changed during the war, but I think it unlikely that
-# Jan Mayen used German daylight-saving rules.
-#
-# Svalbard is more complicated, as it was raided in August 1941 by an
-# Allied party that evacuated the civilian population to England (says
-# ). The Svalbard FAQ
-# says that the Germans were
-# expelled on 1942-05-14. However, small parties of Germans did return,
-# and according to Wilhelm Dege's book "War North of 80" (1954)
-#
-# the German armed forces at the Svalbard weather station code-named
-# Haudegen did not surrender to the Allies until September 1945.
-#
-# All these events predate our cutoff date of 1970. Unless we can
-# come up with more definitive info about the timekeeping during the
-# war years it's probably best just do...the following for now:
-Link Europe/Oslo Arctic/Longyearbyen
-
-# Poland
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Poland 1918 1919 - Sep 16 2:00s 0 -
-Rule Poland 1919 only - Apr 15 2:00s 1:00 S
-Rule Poland 1944 only - Apr 3 2:00s 1:00 S
-# Whitman gives 1944 Nov 30; go with Shanks & Pottenger.
-Rule Poland 1944 only - Oct 4 2:00 0 -
-# For 1944-1948 Whitman gives the previous day; go with Shanks & Pottenger.
-Rule Poland 1945 only - Apr 29 0:00 1:00 S
-Rule Poland 1945 only - Nov 1 0:00 0 -
-# For 1946 on the source is Kazimierz Borkowski,
-# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
-#
-# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference.
-# He also gives these further references:
-# Mon Pol nr 13, poz 162 (1995)
-# Druk nr 2180 (2003)
-Rule Poland 1946 only - Apr 14 0:00s 1:00 S
-Rule Poland 1946 only - Oct 7 2:00s 0 -
-Rule Poland 1947 only - May 4 2:00s 1:00 S
-Rule Poland 1947 1949 - Oct Sun>=1 2:00s 0 -
-Rule Poland 1948 only - Apr 18 2:00s 1:00 S
-Rule Poland 1949 only - Apr 10 2:00s 1:00 S
-Rule Poland 1957 only - Jun 2 1:00s 1:00 S
-Rule Poland 1957 1958 - Sep lastSun 1:00s 0 -
-Rule Poland 1958 only - Mar 30 1:00s 1:00 S
-Rule Poland 1959 only - May 31 1:00s 1:00 S
-Rule Poland 1959 1961 - Oct Sun>=1 1:00s 0 -
-Rule Poland 1960 only - Apr 3 1:00s 1:00 S
-Rule Poland 1961 1964 - May lastSun 1:00s 1:00 S
-Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Warsaw 1:24:00 - LMT 1880
- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
- 1:00 C-Eur CE%sT 1918 Sep 16 3:00
- 2:00 Poland EE%sT 1922 Jun
- 1:00 Poland CE%sT 1940 Jun 23 2:00
- 1:00 C-Eur CE%sT 1944 Oct
- 1:00 Poland CE%sT 1977
- 1:00 W-Eur CE%sT 1988
- 1:00 EU CE%sT
-
-# Portugal
-#
-# From Rui Pedro Salgueiro (1992-11-12):
-# Portugal has recently (September, 27) changed timezone
-# (from WET to MET or CET) to harmonize with EEC.
-#
-# Martin Bruckmann (1996-02-29) reports via Peter Ilieve
-# that Portugal is reverting to 0:00 by not moving its clocks this spring.
-# The new Prime Minister was fed up with getting up in the dark in the winter.
-#
-# From Paul Eggert (1996-11-12):
-# IATA SSIM (1991-09) reports several 1991-09 and 1992-09 transitions
-# at 02:00u, not 01:00u. Assume that these are typos.
-# IATA SSIM (1991/1992) reports that the Azores were at -1:00.
-# IATA SSIM (1993-02) says +0:00; later issues (through 1996-09) say -1:00.
-# Guess that the Azores changed to EU rules in 1992 (since that's when Portugal
-# harmonized with the EU), and that they stayed +0:00 that winter.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# DSH writes that despite Decree 1,469 (1915), the change to the clocks was not
-# done every year, depending on what Spain did, because of railroad schedules.
-# Go with Shanks & Pottenger.
-Rule Port 1916 only - Jun 17 23:00 1:00 S
-# Whitman gives 1916 Oct 31; go with Shanks & Pottenger.
-Rule Port 1916 only - Nov 1 1:00 0 -
-Rule Port 1917 only - Feb 28 23:00s 1:00 S
-Rule Port 1917 1921 - Oct 14 23:00s 0 -
-Rule Port 1918 only - Mar 1 23:00s 1:00 S
-Rule Port 1919 only - Feb 28 23:00s 1:00 S
-Rule Port 1920 only - Feb 29 23:00s 1:00 S
-Rule Port 1921 only - Feb 28 23:00s 1:00 S
-Rule Port 1924 only - Apr 16 23:00s 1:00 S
-Rule Port 1924 only - Oct 14 23:00s 0 -
-Rule Port 1926 only - Apr 17 23:00s 1:00 S
-Rule Port 1926 1929 - Oct Sat>=1 23:00s 0 -
-Rule Port 1927 only - Apr 9 23:00s 1:00 S
-Rule Port 1928 only - Apr 14 23:00s 1:00 S
-Rule Port 1929 only - Apr 20 23:00s 1:00 S
-Rule Port 1931 only - Apr 18 23:00s 1:00 S
-# Whitman gives 1931 Oct 8; go with Shanks & Pottenger.
-Rule Port 1931 1932 - Oct Sat>=1 23:00s 0 -
-Rule Port 1932 only - Apr 2 23:00s 1:00 S
-Rule Port 1934 only - Apr 7 23:00s 1:00 S
-# Whitman gives 1934 Oct 5; go with Shanks & Pottenger.
-Rule Port 1934 1938 - Oct Sat>=1 23:00s 0 -
-# Shanks & Pottenger give 1935 Apr 30; go with Whitman.
-Rule Port 1935 only - Mar 30 23:00s 1:00 S
-Rule Port 1936 only - Apr 18 23:00s 1:00 S
-# Whitman gives 1937 Apr 2; go with Shanks & Pottenger.
-Rule Port 1937 only - Apr 3 23:00s 1:00 S
-Rule Port 1938 only - Mar 26 23:00s 1:00 S
-Rule Port 1939 only - Apr 15 23:00s 1:00 S
-# Whitman gives 1939 Oct 7; go with Shanks & Pottenger.
-Rule Port 1939 only - Nov 18 23:00s 0 -
-Rule Port 1940 only - Feb 24 23:00s 1:00 S
-# Shanks & Pottenger give 1940 Oct 7; go with Whitman.
-Rule Port 1940 1941 - Oct 5 23:00s 0 -
-Rule Port 1941 only - Apr 5 23:00s 1:00 S
-Rule Port 1942 1945 - Mar Sat>=8 23:00s 1:00 S
-Rule Port 1942 only - Apr 25 22:00s 2:00 M # Midsummer
-Rule Port 1942 only - Aug 15 22:00s 1:00 S
-Rule Port 1942 1945 - Oct Sat>=24 23:00s 0 -
-Rule Port 1943 only - Apr 17 22:00s 2:00 M
-Rule Port 1943 1945 - Aug Sat>=25 22:00s 1:00 S
-Rule Port 1944 1945 - Apr Sat>=21 22:00s 2:00 M
-Rule Port 1946 only - Apr Sat>=1 23:00s 1:00 S
-Rule Port 1946 only - Oct Sat>=1 23:00s 0 -
-Rule Port 1947 1949 - Apr Sun>=1 2:00s 1:00 S
-Rule Port 1947 1949 - Oct Sun>=1 2:00s 0 -
-# Shanks & Pottenger say DST was observed in 1950; go with Whitman.
-# Whitman gives Oct lastSun for 1952 on; go with Shanks & Pottenger.
-Rule Port 1951 1965 - Apr Sun>=1 2:00s 1:00 S
-Rule Port 1951 1965 - Oct Sun>=1 2:00s 0 -
-Rule Port 1977 only - Mar 27 0:00s 1:00 S
-Rule Port 1977 only - Sep 25 0:00s 0 -
-Rule Port 1978 1979 - Apr Sun>=1 0:00s 1:00 S
-Rule Port 1978 only - Oct 1 0:00s 0 -
-Rule Port 1979 1982 - Sep lastSun 1:00s 0 -
-Rule Port 1980 only - Mar lastSun 0:00s 1:00 S
-Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
-Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
-# Willett says 1912-01-01. Go with Willett.
-Zone Europe/Lisbon -0:36:32 - LMT 1884
- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time
- 0:00 Port WE%sT 1966 Apr 3 2:00
- 1:00 - CET 1976 Sep 26 1:00
- 0:00 Port WE%sT 1983 Sep 25 1:00s
- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
- 1:00 EU CE%sT 1996 Mar 31 1:00u
- 0:00 EU WE%sT
-Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
- -1:54:32 - HMT 1911 May 24 # Horta Mean Time
- -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
- -1:00 Port AZO%sT 1983 Sep 25 1:00s
- -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
- 0:00 EU WE%sT 1993 Mar 28 1:00u
- -1:00 EU AZO%sT
-Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time
- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
- 0:00 Port WE%sT 1983 Sep 25 1:00s
- 0:00 EU WE%sT
-
-# Romania
-#
-# From Paul Eggert (1999-10-07):
-#
-# Nine O'clock (1998-10-23) reports that the switch occurred at
-# 04:00 local time in fall 1998. For lack of better info,
-# assume that Romania and Moldova switched to EU rules in 1997,
-# the same year as Bulgaria.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Romania 1932 only - May 21 0:00s 1:00 S
-Rule Romania 1932 1939 - Oct Sun>=1 0:00s 0 -
-Rule Romania 1933 1939 - Apr Sun>=2 0:00s 1:00 S
-Rule Romania 1979 only - May 27 0:00 1:00 S
-Rule Romania 1979 only - Sep lastSun 0:00 0 -
-Rule Romania 1980 only - Apr 5 23:00 1:00 S
-Rule Romania 1980 only - Sep lastSun 1:00 0 -
-Rule Romania 1991 1993 - Mar lastSun 0:00s 1:00 S
-Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
- 2:00 Romania EE%sT 1981 Mar 29 2:00s
- 2:00 C-Eur EE%sT 1991
- 2:00 Romania EE%sT 1994
- 2:00 E-Eur EE%sT 1997
- 2:00 EU EE%sT
-
-# Russia
-
-# From Paul Eggert (2006-03-22):
-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
-# Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
-# are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
-# except we follow Chernov's report that 1992 DST transitions were Sat
-# 23:00, not Sun 02:00s.
-#
-# From Stanislaw A. Kuzikowski (1994-06-29):
-# But now it is some months since Novosibirsk is 3 hours ahead of Moscow!
-# I do not know why they have decided to make this change;
-# as far as I remember it was done exactly during winter->summer switching
-# so we (Novosibirsk) simply did not switch.
-#
-# From Andrey A. Chernov (1996-10-04):
-# `MSK' and `MSD' were born and used initially on Moscow computers with
-# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
-# The next step was the UUCP network, the Relcom predecessor
-# (used mainly for mail), and MSK/MSD was actively used there.
-#
-# From Chris Carrier (1996-10-30):
-# According to a friend of mine who rode the Trans-Siberian Railroad from
-# Moscow to Irkutsk in 1995, public air and rail transport in Russia ...
-# still follows Moscow time, no matter where in Russia it is located.
-#
-# For Grozny, Chechnya, we have the following story from
-# John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07):
-# News--often false--is spread by word of mouth. A rumor that it was
-# time to move the clocks back put this whole city out of sync with
-# the rest of Russia for two weeks--even soldiers stationed here began
-# enforcing curfew at the wrong time.
-#
-# From Gwillim Law (2001-06-05):
-# There's considerable evidence that Sakhalin Island used to be in
-# UTC+11, and has changed to UTC+10, in this decade. I start with the
-# SSIM, which listed Yuzhno-Sakhalinsk in zone RU10 along with Magadan
-# until February 1997, and then in RU9 with Khabarovsk and Vladivostok
-# since September 1997.... Although the Kuril Islands are
-# administratively part of Sakhalin oblast', they appear to have
-# remained on UTC+11 along with Magadan.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Kaliningradskaya oblast'.
-Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1945
- 2:00 Poland CE%sT 1946
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 Russia EE%sT 2011 Mar 27 2:00s
- 3:00 - FET # Further-eastern European Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Adygeya, Arkhangel'skaya oblast',
-# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast',
-# Vologodskaya oblast', Voronezhskaya oblast',
-# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya,
-# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya,
-# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya,
-# Respublika Kareliya, Respublika Komi,
-# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast',
-# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El,
-# Respublika Mordoviya, Moskva, Moskovskaya oblast',
-# Murmanskaya oblast', Nenetskij avtonomnyj okrug,
-# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast',
-# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast',
-# Ryazanskaya oblast', Sankt-Peterburg,
-# Respublika Severnaya Osetiya, Smolenskaya oblast',
-# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan,
-# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast',
-# Chechenskaya Respublika, Chuvashskaya oblast',
-# Yaroslavskaya oblast'
-Zone Europe/Moscow 2:30:20 - LMT 1880
- 2:30 - MMT 1916 Jul 3 # Moscow Mean Time
- 2:30:48 Russia %s 1919 Jul 1 2:00
- 3:00 Russia MSK/MSD 1922 Oct
- 2:00 - EET 1930 Jun 21
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 Russia EE%sT 1992 Jan 19 2:00s
- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
- 4:00 - MSK
-#
-# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
-# Volgogradskaya oblast'. Shanks & Pottenger say Kirov is still at +0400
-# but Wikipedia (2006-05-09) says +0300. Perhaps it switched after the
-# others? But we have no data.
-Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
- 4:00 - STAT 1961 Nov 11
- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
- 4:00 - VOLT 1992 Mar 29 2:00s
- 3:00 Russia VOL%sT 2011 Mar 27 2:00s
- 4:00 - VOLT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Samarskaya oblast', Udmyrtskaya respublika
-Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
- 3:00 - SAMT 1930 Jun 21
- 4:00 - SAMT 1935 Jan 27
- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
- 3:00 Russia KUY%sT 1991 Mar 31 2:00s
- 2:00 Russia KUY%sT 1991 Sep 29 2:00s
- 3:00 - KUYT 1991 Oct 20 3:00
- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
- 4:00 - SAMT
-
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug,
-# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast',
-# Sverdlovskaya oblast', Tyumenskaya oblast',
-# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast',
-# Yamalo-Nenetskij avtonomnyj okrug.
-Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00
- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
- 6:00 - YEKT # Yekaterinburg Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Altaj, Altajskij kraj, Omskaya oblast'.
-Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
- 5:00 - OMST 1930 Jun 21 # Omsk TIme
- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
- 7:00 - OMST
-#
-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
-# not clear when it switched from +7 to +6.
-# Novosibirskaya oblast', Tomskaya oblast'.
-Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
- 7:00 - NOVT
-
-# From Alexander Krivenyshev (2009-10-13):
-# Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
-# March 28, 2010:
-# from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
-# to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
-#
-# This is according to Government of Russia decree # 740, on September
-# 14, 2009 "Application in the territory of the Kemerovo region the Fifth
-# time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
-#
-# Russian Government web site (Russian language)
-#
-# http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archive/2009/09/14/991633.htm
-#
-# or Russian-English translation by WorldTimeZone.com with reference
-# map to local region and new Russia Time Zone map after March 28, 2010
-#
-# http://www.worldtimezone.com/dst_news/dst_news_russia03.html
-#
-#
-# Thus, when Russia will switch to DST on the night of March 28, 2010
-# Kemerovo region (Kemerovo oblast') will not change the clock.
-#
-# As a result, Kemerovo oblast' will be in the same time zone as
-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
-
-Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6
- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
- 7:00 - NOVT # Novosibirsk/Novokuznetsk Time
-
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Krasnoyarskij kraj,
-# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug,
-# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug.
-Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
- 8:00 - KRAT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Buryatiya, Irkutskaya oblast',
-# Ust'-Ordynskij Buryatskij avtonomnyj okrug.
-Zone Asia/Irkutsk 6:57:20 - LMT 1880
- 6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time
- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
- 9:00 - IRKT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
-# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'.
-
-# From Oscar van Vlijmen (2009-11-29):
-# ...some regions of [Russia] were merged with others since 2005...
-# Some names were changed, no big deal, except for one instance: a new name.
-# YAK/YAKST: UTC+9 Zabajkal'skij kraj.
-
-# From Oscar van Vlijmen (2009-11-29):
-# The Sakha districts are: Aldanskij, Amginskij, Anabarskij,
-# Verkhnevilyujskij, Vilyujskij, Gornyj,
-# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij,
-# Namskij, Nyurbinskij, Olenyokskij, Olyokminskij,
-# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij,
-# Churapchinskij, Eveno-Bytantajskij Natsional'nij.
-
-Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
- 10:00 - YAKT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
-# [parts of] Respublika Sakha (Yakutiya).
-
-# From Oscar van Vlijmen (2009-11-29):
-# The Sakha districts are: Bulunskij, Verkhoyanskij, Tomponskij, Ust'-Majskij,
-# Ust'-Yanskij.
-Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15
- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
- 9:00 Russia VLA%sST 1992 Jan 19 2:00s
- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
- 11:00 - VLAT
-#
-# Sakhalinskaya oblast'.
-# The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
-Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
- 9:00 - CJT 1938
- 9:00 - JST 1945 Aug 25
- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T.
- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
- 11:00 - SAKT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Magadanskaya oblast', Respublika Sakha (Yakutiya).
-# Probably also: Kuril Islands.
-
-# From Oscar van Vlijmen (2009-11-29):
-# The Sakha districts are: Abyjskij, Allaikhovskij, Verkhhhnekolymskij, Momskij,
-# Nizhnekolymskij, Ojmyakonskij, Srednekolymskij.
-Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
- 10:00 - MAGT 1930 Jun 21 # Magadan Time
- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
- 12:00 - MAGT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
-#
-# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long.
-Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
- 11:00 - PETT 1930 Jun 21 # P-K Time
- 12:00 Russia PET%sT 1991 Mar 31 2:00s
- 11:00 Russia PET%sT 1992 Jan 19 2:00s
- 12:00 Russia PET%sT 2010 Mar 28 2:00s
- 11:00 Russia PET%sT 2011 Mar 27 2:00s
- 12:00 - PETT
-#
-# Chukotskij avtonomnyj okrug
-Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
- 12:00 - ANAT
-
-# Serbia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Belgrade 1:22:00 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945
- 1:00 - CET 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
-# Metod Kozelj reports that the legal date of
-# transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
-# Shanks & Pottenger don't give as much detail, so go with Kozelj.
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
-Link Europe/Belgrade Europe/Ljubljana # Slovenia
-Link Europe/Belgrade Europe/Podgorica # Montenegro
-Link Europe/Belgrade Europe/Sarajevo # Bosnia and Herzegovina
-Link Europe/Belgrade Europe/Skopje # Macedonia
-Link Europe/Belgrade Europe/Zagreb # Croatia
-
-# Slovakia
-Link Europe/Prague Europe/Bratislava
-
-# Slovenia
-# see Serbia
-
-# Spain
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
-# go with Shanks & Pottenger.
-Rule Spain 1917 only - May 5 23:00s 1:00 S
-Rule Spain 1917 1919 - Oct 6 23:00s 0 -
-Rule Spain 1918 only - Apr 15 23:00s 1:00 S
-Rule Spain 1919 only - Apr 5 23:00s 1:00 S
-# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
-Rule Spain 1924 only - Apr 16 23:00s 1:00 S
-# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
-Rule Spain 1924 only - Oct 4 23:00s 0 -
-Rule Spain 1926 only - Apr 17 23:00s 1:00 S
-# Whitman says no DST in 1929; go with Shanks & Pottenger.
-Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
-Rule Spain 1927 only - Apr 9 23:00s 1:00 S
-Rule Spain 1928 only - Apr 14 23:00s 1:00 S
-Rule Spain 1929 only - Apr 20 23:00s 1:00 S
-# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
-# go with Shanks & Pottenger.
-Rule Spain 1937 only - May 22 23:00s 1:00 S
-Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
-Rule Spain 1938 only - Mar 22 23:00s 1:00 S
-Rule Spain 1939 only - Apr 15 23:00s 1:00 S
-Rule Spain 1940 only - Mar 16 23:00s 1:00 S
-# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
-Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
-Rule Spain 1942 only - Sep 1 22:00s 1:00 S
-Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
-Rule Spain 1943 only - Oct 3 22:00s 1:00 S
-Rule Spain 1944 only - Oct 10 22:00s 1:00 S
-Rule Spain 1945 only - Sep 30 1:00 1:00 S
-Rule Spain 1946 only - Sep 30 0:00 0 -
-Rule Spain 1949 only - Apr 30 23:00 1:00 S
-Rule Spain 1949 only - Sep 30 1:00 0 -
-Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
-Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
-Rule Spain 1976 only - Mar 27 23:00 1:00 S
-Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
-Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
-Rule Spain 1978 only - Oct 1 1:00 0 -
-# The following rules are copied from Morocco from 1967 through 1978.
-Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
-Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
-Rule SpainAfrica 1974 only - Jun 24 0:00 1:00 S
-Rule SpainAfrica 1974 only - Sep 1 0:00 0 -
-Rule SpainAfrica 1976 1977 - May 1 0:00 1:00 S
-Rule SpainAfrica 1976 only - Aug 1 0:00 0 -
-Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
-Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
-Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
- 0:00 Spain WE%sT 1946 Sep 30
- 1:00 Spain CE%sT 1979
- 1:00 EU CE%sT
-Zone Africa/Ceuta -0:21:16 - LMT 1901
- 0:00 - WET 1918 May 6 23:00
- 0:00 1:00 WEST 1918 Oct 7 23:00
- 0:00 - WET 1924
- 0:00 Spain WE%sT 1929
- 0:00 SpainAfrica WE%sT 1984 Mar 16
- 1:00 - CET 1986
- 1:00 EU CE%sT
-Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
- -1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
- 0:00 - WET 1980 Apr 6 0:00s
- 0:00 1:00 WEST 1980 Sep 28 0:00s
- 0:00 EU WE%sT
-# IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
-# Ignore this for now, as the Canaries are part of the EU.
-
-# Sweden
-
-# From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger:
-#
-# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879:
-# From the beginning of 1879 (that is 01-01 00:00) the time for all
-# places in the country is "the mean solar time for the meridian at
-# three degrees, or twelve minutes of time, to the west of the
-# meridian of the Observatory of Stockholm". The law is dated 1878-05-31.
-#
-# The observatory at that time had the meridian 18 degrees 03' 30"
-# eastern longitude = 01:12:14 in time. Less 12 minutes gives the
-# national standard time as 01:00:14 ahead of GMT....
-#
-# About the beginning of CET in Sweden. The lawtext ("Svensk
-# forfattningssamling 1899, no 44") states, that "from the beginning
-# of 1900... ... the same as the mean solar time for the meridian at
-# the distance of one hour of time from the meridian of the English
-# observatory at Greenwich, or at 12 minutes 14 seconds to the west
-# from the meridian of the Observatory of Stockholm". The law is dated
-# 1899-06-16. In short: At 1900-01-01 00:00:00 the new standard time
-# in Sweden is 01:00:00 ahead of GMT.
-#
-# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states
-# that "1916-05-15 is considered to begin one hour earlier". It is
-# pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00....
-# Further the law says, that "1916-09-30 is considered to end one hour later".
-#
-# The laws regulating [DST] are available on the site of the Swedish
-# Parliament beginning with 1985 - the laws regulating 1980/1984 are
-# not available on the site (to my knowledge they are only available
-# in Swedish): (type
-# "sommartid" without the quotes in the field "Fritext" and then click
-# the Sok-button).
-#
-# (2001-05-13):
-#
-# I have now found a newspaper stating that at 1916-10-01 01:00
-# summertime the church-clocks etc were set back one hour to show
-# 1916-10-01 00:00 standard time. The article also reports that some
-# people thought the switch to standard time would take place already
-# at 1916-10-01 00:00 summer time, but they had to wait for another
-# hour before the event took place.
-#
-# Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
- 1:00:14 - SET 1900 Jan 1 # Swedish Time
- 1:00 - CET 1916 May 14 23:00
- 1:00 1:00 CEST 1916 Oct 1 01:00
- 1:00 - CET 1980
- 1:00 EU CE%sT
-
-# Switzerland
-# From Howse:
-# By the end of the 18th century clocks and watches became commonplace
-# and their performance improved enormously. Communities began to keep
-# mean time in preference to apparent time -- Geneva from 1780 ....
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# From Whitman (who writes ``Midnight?''):
-# Rule Swiss 1940 only - Nov 2 0:00 1:00 S
-# Rule Swiss 1940 only - Dec 31 0:00 0 -
-# From Shanks & Pottenger:
-# Rule Swiss 1941 1942 - May Sun>=1 2:00 1:00 S
-# Rule Swiss 1941 1942 - Oct Sun>=1 0:00 0 -
-
-# From Alois Treindl (2008-12-17):
-# I have researched the DST usage in Switzerland during the 1940ies.
-#
-# As I wrote in an earlier message, I suspected the current tzdata values
-# to be wrong. This is now verified.
-#
-# I have found copies of the original ruling by the Swiss Federal
-# government, in 'Eidgen[o]ssische Gesetzessammlung 1941 and 1942' (Swiss
-# federal law collection)...
-#
-# DST began on Monday 5 May 1941, 1:00 am by shifting the clocks to 2:00 am
-# DST ended on Monday 6 Oct 1941, 2:00 am by shifting the clocks to 1:00 am.
-#
-# DST began on Monday, 4 May 1942 at 01:00 am
-# DST ended on Monday, 5 Oct 1942 at 02:00 am
-#
-# There was no DST in 1940, I have checked the law collection carefully.
-# It is also indicated by the fact that the 1942 entry in the law
-# collection points back to 1941 as a reference, but no reference to any
-# other years are made.
-#
-# Newspaper articles I have read in the archives on 6 May 1941 reported
-# about the introduction of DST (Sommerzeit in German) during the previous
-# night as an absolute novelty, because this was the first time that such
-# a thing had happened in Switzerland.
-#
-# I have also checked 1916, because one book source (Gabriel, Traite de
-# l'heure dans le monde) claims that Switzerland had DST in 1916. This is
-# false, no official document could be found. Probably Gabriel got misled
-# by references to Germany, which introduced DST in 1916 for the first time.
-#
-# The tzdata rules for Switzerland must be changed to:
-# Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
-# Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
-#
-# The 1940 rules must be deleted.
-#
-# One further detail for Switzerland, which is probably out of scope for
-# most users of tzdata:
-# The zone file
-# Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
-# 0:29:44 - BMT 1894 Jun #Bern Mean Time
-# 1:00 Swiss CE%sT 1981
-# 1:00 EU CE%sT
-# describes all of Switzerland correctly, with the exception of
-# the Cantone Geneve (Geneva, Genf). Between 1848 and 1894 Geneve did not
-# follow Bern Mean Time but kept its own local mean time.
-# To represent this, an extra zone would be needed.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
-Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
- 0:29:44 - BMT 1894 Jun # Bern Mean Time
- 1:00 Swiss CE%sT 1981
- 1:00 EU CE%sT
-
-# Turkey
-
-# From Amar Devegowda (2007-01-03):
-# The time zone rules for Istanbul, Turkey have not been changed for years now.
-# ... The latest rules are available at -
-# http://www.timeanddate.com/worldclock/timezone.html?n=107
-# From Steffen Thorsen (2007-01-03):
-# I have been able to find press records back to 1996 which all say that
-# DST started 01:00 local time and end at 02:00 local time. I am not sure
-# what happened before that. One example for each year from 1996 to 2001:
-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
-# From Paul Eggert (2007-01-03):
-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
-
-# From Steffen Thorsen (2007-03-09):
-# Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
-# start/end time, according to the following page (2007-03-07):
-# http://www.ntvmsnbc.com/news/402029.asp
-# The official document is located here - it is in Turkish...:
-# http://rega.basbakanlik.gov.tr/eskiler/2007/03/20070307-7.htm
-# I was able to locate the following seemingly official document
-# (on a non-government server though) describing dates between 2002 and 2006:
-# http://www.alomaliye.com/bkk_2002_3769.htm
-
-# From Gökdeniz Karadağ (2011-03-10):
-#
-# According to the articles linked below, Turkey will change into summer
-# time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27.
-# This change is due to a nationwide exam on 27th.
-#
-#
-# http://www.worldbulletin.net/?aType=haber&ArticleID=70872
-#
-# Turkish:
-#
-# http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373
-#
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Turkey 1916 only - May 1 0:00 1:00 S
-Rule Turkey 1916 only - Oct 1 0:00 0 -
-Rule Turkey 1920 only - Mar 28 0:00 1:00 S
-Rule Turkey 1920 only - Oct 25 0:00 0 -
-Rule Turkey 1921 only - Apr 3 0:00 1:00 S
-Rule Turkey 1921 only - Oct 3 0:00 0 -
-Rule Turkey 1922 only - Mar 26 0:00 1:00 S
-Rule Turkey 1922 only - Oct 8 0:00 0 -
-# Whitman gives 1923 Apr 28 - Sep 16 and no DST in 1924-1925;
-# go with Shanks & Pottenger.
-Rule Turkey 1924 only - May 13 0:00 1:00 S
-Rule Turkey 1924 1925 - Oct 1 0:00 0 -
-Rule Turkey 1925 only - May 1 0:00 1:00 S
-Rule Turkey 1940 only - Jun 30 0:00 1:00 S
-Rule Turkey 1940 only - Oct 5 0:00 0 -
-Rule Turkey 1940 only - Dec 1 0:00 1:00 S
-Rule Turkey 1941 only - Sep 21 0:00 0 -
-Rule Turkey 1942 only - Apr 1 0:00 1:00 S
-# Whitman omits the next two transition and gives 1945 Oct 1;
-# go with Shanks & Pottenger.
-Rule Turkey 1942 only - Nov 1 0:00 0 -
-Rule Turkey 1945 only - Apr 2 0:00 1:00 S
-Rule Turkey 1945 only - Oct 8 0:00 0 -
-Rule Turkey 1946 only - Jun 1 0:00 1:00 S
-Rule Turkey 1946 only - Oct 1 0:00 0 -
-Rule Turkey 1947 1948 - Apr Sun>=16 0:00 1:00 S
-Rule Turkey 1947 1950 - Oct Sun>=2 0:00 0 -
-Rule Turkey 1949 only - Apr 10 0:00 1:00 S
-Rule Turkey 1950 only - Apr 19 0:00 1:00 S
-Rule Turkey 1951 only - Apr 22 0:00 1:00 S
-Rule Turkey 1951 only - Oct 8 0:00 0 -
-Rule Turkey 1962 only - Jul 15 0:00 1:00 S
-Rule Turkey 1962 only - Oct 8 0:00 0 -
-Rule Turkey 1964 only - May 15 0:00 1:00 S
-Rule Turkey 1964 only - Oct 1 0:00 0 -
-Rule Turkey 1970 1972 - May Sun>=2 0:00 1:00 S
-Rule Turkey 1970 1972 - Oct Sun>=2 0:00 0 -
-Rule Turkey 1973 only - Jun 3 1:00 1:00 S
-Rule Turkey 1973 only - Nov 4 3:00 0 -
-Rule Turkey 1974 only - Mar 31 2:00 1:00 S
-Rule Turkey 1974 only - Nov 3 5:00 0 -
-Rule Turkey 1975 only - Mar 30 0:00 1:00 S
-Rule Turkey 1975 1976 - Oct lastSun 0:00 0 -
-Rule Turkey 1976 only - Jun 1 0:00 1:00 S
-Rule Turkey 1977 1978 - Apr Sun>=1 0:00 1:00 S
-Rule Turkey 1977 only - Oct 16 0:00 0 -
-Rule Turkey 1979 1980 - Apr Sun>=1 3:00 1:00 S
-Rule Turkey 1979 1982 - Oct Mon>=11 0:00 0 -
-Rule Turkey 1981 1982 - Mar lastSun 3:00 1:00 S
-Rule Turkey 1983 only - Jul 31 0:00 1:00 S
-Rule Turkey 1983 only - Oct 2 0:00 0 -
-Rule Turkey 1985 only - Apr 20 0:00 1:00 S
-Rule Turkey 1985 only - Sep 28 0:00 0 -
-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
-Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Istanbul 1:55:52 - LMT 1880
- 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
- 2:00 Turkey EE%sT 1978 Oct 15
- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
- 2:00 Turkey EE%sT 2007
- 2:00 EU EE%sT 2011 Mar 27 1:00u
- 2:00 - EET 2011 Mar 28 1:00u
- 2:00 EU EE%sT
-Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
-
-# Ukraine
-#
-# From Igor Karpov, who works for the Ukranian Ministry of Justice,
-# via Garrett Wollman (2003-01-27):
-# BTW, I've found the official document on this matter. It's goverment
-# regulations number 509, May 13, 1996. In my poor translation it says:
-# "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
-# of March at 3am the time is changing to 4am and each last Sunday of
-# October the time at 4am is changing to 3am"
-
-# From Alexander Krivenyshev (2011-09-20):
-# On September 20, 2011 the deputies of the Verkhovna Rada agreed to
-# abolish the transfer clock to winter time.
-#
-# Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got
-# approval from 266 deputies.
-#
-# Ukraine abolishes transter back to the winter time (in Russian)
-#
-# http://news.mail.ru/politics/6861560/
-#
-#
-# The Ukrainians will no longer change the clock (in Russian)
-#
-# http://www.segodnya.ua/news/14290482.html
-#
-#
-# Deputies cancelled the winter time (in Russian)
-#
-# http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
-#
-#
-# From Philip Pizzey (2011-10-18):
-# Today my Ukrainian colleagues have informed me that the
-# Ukrainian parliament have decided that they will go to winter
-# time this year after all.
-#
-# From Udo Schwedt (2011-10-18):
-# As far as I understand, the recent change to the Ukranian time zone
-# (Europe/Kiev) to introduce permanent daylight saving time (similar
-# to Russia) was reverted today:
-#
-#
-# http://portal.rada.gov.ua/rada/control/en/publish/article/info_left?art_id=287324&cat_id=105995
-#
-#
-# Also reported by Alexander Bokovoy (2011-10-18) who also noted:
-# The law documents themselves are at
-#
-#
-# http://w1.c1.rada.gov.ua/pls/zweb_n/webproc4_1?id=&pf3511=41484
-#
-
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Most of Ukraine since 1970 has been like Kiev.
-# "Kyiv" is the transliteration of the Ukrainian name, but
-# "Kiev" is more common in English.
-Zone Europe/Kiev 2:02:04 - LMT 1880
- 2:02:04 - KMT 1924 May 2 # Kiev Mean Time
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Sep 20
- 1:00 C-Eur CE%sT 1943 Nov 6
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 2:00 - EET 1992
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Ruthenia used CET 1990/1991.
-# "Uzhhorod" is the transliteration of the Ukrainian name, but
-# "Uzhgorod" is more common in English.
-Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
- 1:00 - CET 1940
- 1:00 C-Eur CE%sT 1944 Oct
- 1:00 1:00 CEST 1944 Oct 26
- 1:00 - CET 1945 Jun 29
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 1:00 - CET 1991 Mar 31 3:00
- 2:00 - EET 1992
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
-# "Zaporizhia" is the transliteration of the Ukrainian name, but
-# "Zaporozh'ye" is more common in English. Use the common English
-# spelling, except omit the apostrophe as it is not allowed in
-# portable Posix file names.
-Zone Europe/Zaporozhye 2:20:40 - LMT 1880
- 2:20 - CUT 1924 May 2 # Central Ukraine T
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Aug 25
- 1:00 C-Eur CE%sT 1943 Oct 25
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Central Crimea used Moscow time 1994/1997.
-Zone Europe/Simferopol 2:16:24 - LMT 1880
- 2:16 - SMT 1924 May 2 # Simferopol Mean T
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Nov
- 1:00 C-Eur CE%sT 1944 Apr 13
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 2:00 - EET 1992
-# From Paul Eggert (2006-03-22):
-# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched
-# from Kiev to Moscow time sometime after the January 1994 elections.
-# Shanks (1999) says ``date of change uncertain'', but implies that it happened
-# sometime between the 1994 DST switches. Shanks & Pottenger simply say
-# 1994-09-25 03:00, but that can't be right. For now, guess it
-# changed in May.
- 2:00 E-Eur EE%sT 1994 May
-# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
- 3:00 1:00 MSD 1996 Oct 27 3:00s
-# IATA SSIM (1997-09) says Crimea switched to EET/EEST.
-# Assume it happened in March by not changing the clocks.
- 3:00 Russia MSK/MSD 1997
- 3:00 - MSK 1997 Mar lastSun 1:00u
- 2:00 EU EE%sT
-
-###############################################################################
-
-# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
-# the last Sunday in March to the last Sunday in September in 1986.
-# The source shows Romania changing a day later than everybody else.
-#
-# According to Bernard Sieloff's source, Poland is in the MET time zone but
-# uses the WE DST rules. The Western USSR uses EET+1 and ME DST rules.
-# Bernard Sieloff's source claims Romania switches on the same day, but at
-# 00:00 standard time (i.e., 01:00 DST). It also claims that Turkey
-# switches on the same day, but switches on at 01:00 standard time
-# and off at 00:00 standard time (i.e., 01:00 DST)
-
-# ...
-# Date: Wed, 28 Jan 87 16:56:27 -0100
-# From: Tom Hofmann
-# ...
-#
-# ...the European time rules are...standardized since 1981, when
-# most European coun[tr]ies started DST. Before that year, only
-# a few countries (UK, France, Italy) had DST, each according
-# to own national rules. In 1981, however, DST started on
-# 'Apr firstSun', and not on 'Mar lastSun' as in the following
-# years...
-# But also since 1981 there are some more national exceptions
-# than listed in 'europe': Switzerland, for example, joined DST
-# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
-# lastSun' in 1981---I don't know how they handle now.
-#
-# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
-# Soviet Union (as far as I know).
-#
-# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
-# 4002 Basle, Switzerland
-# ...
-
-# ...
-# Date: Wed, 4 Feb 87 22:35:22 +0100
-# From: Dik T. Winter
-# ...
-#
-# The information from Tom Hofmann is (as far as I know) not entirely correct.
-# After a request from chongo at amdahl I tried to retrieve all information
-# about DST in Europe. I was able to find all from about 1969.
-#
-# ...standardization on DST in Europe started in about 1977 with switches on
-# first Sunday in April and last Sunday in September...
-# In 1981 UK joined Europe insofar that
-# the starting day for both shifted to last Sunday in March. And from 1982
-# the whole of Europe used DST, with switch dates April 1 and October 1 in
-# the Sov[i]et Union. In 1985 the SU reverted to standard Europe[a]n switch
-# dates...
-#
-# It should also be remembered that time-zones are not constants; e.g.
-# Portugal switched in 1976 from MET (or CET) to WET with DST...
-# Note also that though there were rules for switch dates not
-# all countries abided to these dates, and many individual deviations
-# occurred, though not since 1982 I believe. Another note: it is always
-# assumed that DST is 1 hour ahead of normal time, this need not be the
-# case; at least in the Netherlands there have been times when DST was 2 hours
-# in advance of normal time.
-#
-# ...
-# dik t. winter, cwi, amsterdam, nederland
-# ...
-
-# From Bob Devine (1988-01-28):
-# ...
-# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
-# Since 1978. Change at midnight.
-# ...
-# Monaco: has same DST as France.
-# ...
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/factory b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/factory
deleted file mode 100755
index d29a5857f..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/factory
+++ /dev/null
@@ -1,10 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# For companies who don't want to put time zone specification in
-# their installation procedures. When users run date, they'll get the message.
-# Also useful for the "comp.sources" version.
-
-# Zone NAME GMTOFF RULES FORMAT
-Zone Factory 0 - "Local time zone must be set--see zic manual page"
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/iso3166.tab b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/iso3166.tab
deleted file mode 100755
index b952ca1c5..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/iso3166.tab
+++ /dev/null
@@ -1,276 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-# ISO 3166 alpha-2 country codes
-#
-# From Paul Eggert (2006-09-27):
-#
-# This file contains a table with the following columns:
-# 1. ISO 3166-1 alpha-2 country code, current as of
-# ISO 3166-1 Newsletter VI-1 (2007-09-21). See:
-#
-# ISO 3166 Maintenance agency (ISO 3166/MA)
-# .
-# 2. The usual English name for the country,
-# chosen so that alphabetic sorting of subsets produces helpful lists.
-# This is not the same as the English name in the ISO 3166 tables.
-#
-# Columns are separated by a single tab.
-# The table is sorted by country code.
-#
-# Lines beginning with `#' are comments.
-#
-# From Arthur David Olson (2011-08-17):
-# Resynchronized today with the ISO 3166 site (adding SS for South Sudan).
-#
-#country-
-#code country name
-AD Andorra
-AE United Arab Emirates
-AF Afghanistan
-AG Antigua & Barbuda
-AI Anguilla
-AL Albania
-AM Armenia
-AO Angola
-AQ Antarctica
-AR Argentina
-AS Samoa (American)
-AT Austria
-AU Australia
-AW Aruba
-AX Aaland Islands
-AZ Azerbaijan
-BA Bosnia & Herzegovina
-BB Barbados
-BD Bangladesh
-BE Belgium
-BF Burkina Faso
-BG Bulgaria
-BH Bahrain
-BI Burundi
-BJ Benin
-BL St Barthelemy
-BM Bermuda
-BN Brunei
-BO Bolivia
-BQ Bonaire Sint Eustatius & Saba
-BR Brazil
-BS Bahamas
-BT Bhutan
-BV Bouvet Island
-BW Botswana
-BY Belarus
-BZ Belize
-CA Canada
-CC Cocos (Keeling) Islands
-CD Congo (Dem. Rep.)
-CF Central African Rep.
-CG Congo (Rep.)
-CH Switzerland
-CI Cote d'Ivoire
-CK Cook Islands
-CL Chile
-CM Cameroon
-CN China
-CO Colombia
-CR Costa Rica
-CU Cuba
-CV Cape Verde
-CW Curacao
-CX Christmas Island
-CY Cyprus
-CZ Czech Republic
-DE Germany
-DJ Djibouti
-DK Denmark
-DM Dominica
-DO Dominican Republic
-DZ Algeria
-EC Ecuador
-EE Estonia
-EG Egypt
-EH Western Sahara
-ER Eritrea
-ES Spain
-ET Ethiopia
-FI Finland
-FJ Fiji
-FK Falkland Islands
-FM Micronesia
-FO Faroe Islands
-FR France
-GA Gabon
-GB Britain (UK)
-GD Grenada
-GE Georgia
-GF French Guiana
-GG Guernsey
-GH Ghana
-GI Gibraltar
-GL Greenland
-GM Gambia
-GN Guinea
-GP Guadeloupe
-GQ Equatorial Guinea
-GR Greece
-GS South Georgia & the South Sandwich Islands
-GT Guatemala
-GU Guam
-GW Guinea-Bissau
-GY Guyana
-HK Hong Kong
-HM Heard Island & McDonald Islands
-HN Honduras
-HR Croatia
-HT Haiti
-HU Hungary
-ID Indonesia
-IE Ireland
-IL Israel
-IM Isle of Man
-IN India
-IO British Indian Ocean Territory
-IQ Iraq
-IR Iran
-IS Iceland
-IT Italy
-JE Jersey
-JM Jamaica
-JO Jordan
-JP Japan
-KE Kenya
-KG Kyrgyzstan
-KH Cambodia
-KI Kiribati
-KM Comoros
-KN St Kitts & Nevis
-KP Korea (North)
-KR Korea (South)
-KW Kuwait
-KY Cayman Islands
-KZ Kazakhstan
-LA Laos
-LB Lebanon
-LC St Lucia
-LI Liechtenstein
-LK Sri Lanka
-LR Liberia
-LS Lesotho
-LT Lithuania
-LU Luxembourg
-LV Latvia
-LY Libya
-MA Morocco
-MC Monaco
-MD Moldova
-ME Montenegro
-MF St Martin (French part)
-MG Madagascar
-MH Marshall Islands
-MK Macedonia
-ML Mali
-MM Myanmar (Burma)
-MN Mongolia
-MO Macau
-MP Northern Mariana Islands
-MQ Martinique
-MR Mauritania
-MS Montserrat
-MT Malta
-MU Mauritius
-MV Maldives
-MW Malawi
-MX Mexico
-MY Malaysia
-MZ Mozambique
-NA Namibia
-NC New Caledonia
-NE Niger
-NF Norfolk Island
-NG Nigeria
-NI Nicaragua
-NL Netherlands
-NO Norway
-NP Nepal
-NR Nauru
-NU Niue
-NZ New Zealand
-OM Oman
-PA Panama
-PE Peru
-PF French Polynesia
-PG Papua New Guinea
-PH Philippines
-PK Pakistan
-PL Poland
-PM St Pierre & Miquelon
-PN Pitcairn
-PR Puerto Rico
-PS Palestine
-PT Portugal
-PW Palau
-PY Paraguay
-QA Qatar
-RE Reunion
-RO Romania
-RS Serbia
-RU Russia
-RW Rwanda
-SA Saudi Arabia
-SB Solomon Islands
-SC Seychelles
-SD Sudan
-SE Sweden
-SG Singapore
-SH St Helena
-SI Slovenia
-SJ Svalbard & Jan Mayen
-SK Slovakia
-SL Sierra Leone
-SM San Marino
-SN Senegal
-SO Somalia
-SR Suriname
-SS South Sudan
-ST Sao Tome & Principe
-SV El Salvador
-SX Sint Maarten
-SY Syria
-SZ Swaziland
-TC Turks & Caicos Is
-TD Chad
-TF French Southern & Antarctic Lands
-TG Togo
-TH Thailand
-TJ Tajikistan
-TK Tokelau
-TL East Timor
-TM Turkmenistan
-TN Tunisia
-TO Tonga
-TR Turkey
-TT Trinidad & Tobago
-TV Tuvalu
-TW Taiwan
-TZ Tanzania
-UA Ukraine
-UG Uganda
-UM US minor outlying islands
-US United States
-UY Uruguay
-UZ Uzbekistan
-VA Vatican City
-VC St Vincent
-VE Venezuela
-VG Virgin Islands (UK)
-VI Virgin Islands (US)
-VN Vietnam
-VU Vanuatu
-WF Wallis & Futuna
-WS Samoa (western)
-YE Yemen
-YT Mayotte
-ZA South Africa
-ZM Zambia
-ZW Zimbabwe
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/leapseconds b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/leapseconds
deleted file mode 100755
index 5b5c70eb6..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/leapseconds
+++ /dev/null
@@ -1,100 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# Allowance for leapseconds added to each timezone file.
-
-# The International Earth Rotation Service periodically uses leap seconds
-# to keep UTC to within 0.9 s of UT1
-# (which measures the true angular orientation of the earth in space); see
-# Terry J Quinn, The BIPM and the accurate measure of time,
-# Proc IEEE 79, 7 (July 1991), 894-905.
-# There were no leap seconds before 1972, because the official mechanism
-# accounting for the discrepancy between atomic time and the earth's rotation
-# did not exist until the early 1970s.
-
-# The correction (+ or -) is made at the given time, so lines
-# will typically look like:
-# Leap YEAR MON DAY 23:59:60 + R/S
-# or
-# Leap YEAR MON DAY 23:59:59 - R/S
-
-# If the leapsecond is Rolling (R) the given time is local time
-# If the leapsecond is Stationary (S) the given time is UTC
-
-# Leap YEAR MONTH DAY HH:MM:SS CORR R/S
-Leap 1972 Jun 30 23:59:60 + S
-Leap 1972 Dec 31 23:59:60 + S
-Leap 1973 Dec 31 23:59:60 + S
-Leap 1974 Dec 31 23:59:60 + S
-Leap 1975 Dec 31 23:59:60 + S
-Leap 1976 Dec 31 23:59:60 + S
-Leap 1977 Dec 31 23:59:60 + S
-Leap 1978 Dec 31 23:59:60 + S
-Leap 1979 Dec 31 23:59:60 + S
-Leap 1981 Jun 30 23:59:60 + S
-Leap 1982 Jun 30 23:59:60 + S
-Leap 1983 Jun 30 23:59:60 + S
-Leap 1985 Jun 30 23:59:60 + S
-Leap 1987 Dec 31 23:59:60 + S
-Leap 1989 Dec 31 23:59:60 + S
-Leap 1990 Dec 31 23:59:60 + S
-Leap 1992 Jun 30 23:59:60 + S
-Leap 1993 Jun 30 23:59:60 + S
-Leap 1994 Jun 30 23:59:60 + S
-Leap 1995 Dec 31 23:59:60 + S
-Leap 1997 Jun 30 23:59:60 + S
-Leap 1998 Dec 31 23:59:60 + S
-Leap 2005 Dec 31 23:59:60 + S
-Leap 2008 Dec 31 23:59:60 + S
-Leap 2012 Jun 30 23:59:60 + S
-
-# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
-#
-# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
-#
-#
-# SERVICE DE LA ROTATION TERRESTRE
-# OBSERVATOIRE DE PARIS
-# 61, Av. de l'Observatoire 75014 PARIS (France)
-# Tel. : 33 (0) 1 40 51 22 26
-# FAX : 33 (0) 1 40 51 22 91
-# e-mail : (E-Mail Removed)
-# http://hpiers.obspm.fr/eop-pc
-#
-# Paris, 5 January 2012
-#
-#
-# Bulletin C 43
-#
-# To authorities responsible
-# for the measurement and
-# distribution of time
-#
-#
-# UTC TIME STEP
-# on the 1st of July 2012
-#
-#
-# A positive leap second will be introduced at the end of June 2012.
-# The sequence of dates of the UTC second markers will be:
-#
-# 2012 June 30, 23h 59m 59s
-# 2012 June 30, 23h 59m 60s
-# 2012 July 1, 0h 0m 0s
-#
-# The difference between UTC and the International Atomic Time TAI is:
-#
-# from 2009 January 1, 0h UTC, to 2012 July 1 0h UTC : UTC-TAI = - 34s
-# from 2012 July 1, 0h UTC, until further notice : UTC-TAI = - 35s
-#
-# Leap seconds can be introduced in UTC at the end of the months of December
-# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
-# six months, either to announce a time step in UTC or to confirm that there
-# will be no time step at the next possible date.
-#
-#
-# Daniel GAMBIS
-# Head
-# Earth Orientation Center of IERS
-# Observatoire de Paris, France
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/northamerica b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/northamerica
deleted file mode 100755
index 772d7a439..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/northamerica
+++ /dev/null
@@ -1,3235 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# also includes Central America and the Caribbean
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@iana.org for general use in the future).
-
-# From Paul Eggert (1999-03-22):
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-###############################################################################
-
-# United States
-
-# From Paul Eggert (1999-03-31):
-# Howse writes (pp 121-125) that time zones were invented by
-# Professor Charles Ferdinand Dowd (1825-1904),
-# Principal of Temple Grove Ladies' Seminary (Saratoga Springs, NY).
-# His pamphlet ``A System of National Time for Railroads'' (1870)
-# was the result of his proposals at the Convention of Railroad Trunk Lines
-# in New York City (1869-10). His 1870 proposal was based on Washington, DC,
-# but in 1872-05 he moved the proposed origin to Greenwich.
-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
-# and the most of the country soon followed suit.
-
-# From Paul Eggert (2005-04-16):
-# That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
-# See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data in the US is
-# Thomas G. Shanks, The American Atlas (5th edition),
-# San Diego: ACS Publications, Inc. (1991).
-# Make sure you have the errata sheet; the book is somewhat useless without it.
-# It is the source for most of the pre-1991 US entries below.
-
-# From Paul Eggert (2001-03-06):
-# Daylight Saving Time was first suggested as a joke by Benjamin Franklin
-# in his whimsical essay ``An Economical Project for Diminishing the Cost
-# of Light'' published in the Journal de Paris (1784-04-26).
-# Not everyone is happy with the results:
-#
-# I don't really care how time is reckoned so long as there is some
-# agreement about it, but I object to being told that I am saving
-# daylight when my reason tells me that I am doing nothing of the kind.
-# I even object to the implication that I am wasting something
-# valuable if I stay in bed after the sun has risen. As an admirer
-# of moonlight I resent the bossy insistence of those who want to
-# reduce my time for enjoying it. At the back of the Daylight Saving
-# scheme I detect the bony, blue-fingered hand of Puritanism, eager
-# to push people into bed earlier, and get them up earlier, to make
-# them healthy, wealthy and wise in spite of themselves.
-#
-# -- Robertson Davies, The diary of Samuel Marchbanks,
-# Clarke, Irwin (1947), XIX, Sunday
-#
-# For more about the first ten years of DST in the United States, see
-# Robert Garland's
-# Ten years of daylight saving from the Pittsburgh standpoint
-# (Carnegie Library of Pittsburgh, 1927) .
-#
-# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
-# However, DST was imposed by the Standard Time Act of 1918, which
-# was the first nationwide legal time standard, and apparently
-# time was just called "Standard Time" or "Daylight Saving Time".
-
-# From Arthur David Olson:
-# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
-# See, for example, the front page of the Saturday, 1974-10-26
-# and Sunday, 1974-10-27 editions of the Washington Post.
-
-# From Arthur David Olson:
-# Before the Uniform Time Act of 1966 took effect in 1967, observance of
-# Daylight Saving Time in the US was by local option, except during wartime.
-
-# From Arthur David Olson (2000-09-25):
-# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
-# In the introduction, Oboler spoke of "Eastern Peace Time."
-# An AltaVista search turned up
-# :
-# "When the time is announced over the radio now, it is 'Eastern Peace
-# Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
-# (August 1945) by way of confirmation.
-
-# From Joseph Gallant citing
-# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
-# At 7 P.M. (Eastern War Time) [on 1945-08-14], the networks were set
-# to switch to London for Attlee's address, but the American people
-# never got to hear his speech live. According to one press account,
-# CBS' Bob Trout was first to announce the word of Japan's surrender,
-# but a few seconds later, NBC, ABC and Mutual also flashed the word
-# of surrender, all of whom interrupting the bells of Big Ben in
-# London which were to precede Mr. Attlee's speech.
-
-# From Paul Eggert (2003-02-09): It was Robert St John, not Bob Trout. From
-# Myrna Oliver's obituary of St John on page B16 of today's Los Angeles Times:
-#
-# ... a war-weary U.S. clung to radios, awaiting word of Japan's surrender.
-# Any announcement from Asia would reach St. John's New York newsroom on a
-# wire service teletype machine, which had prescribed signals for major news.
-# Associated Press, for example, would ring five bells before spewing out
-# typed copy of an important story, and 10 bells for news "of transcendental
-# importance."
-#
-# On Aug. 14, stalling while talking steadily into the NBC networks' open
-# microphone, St. John heard five bells and waited only to hear a sixth bell,
-# before announcing confidently: "Ladies and gentlemen, World War II is over.
-# The Japanese have agreed to our surrender terms."
-#
-# He had scored a 20-second scoop on other broadcasters.
-
-# From Arthur David Olson (2005-08-22):
-# Paul has been careful to use the "US" rules only in those locations
-# that are part of the United States; this reflects the real scope of
-# U.S. government action. So even though the "US" rules have changed
-# in the latest release, other countries won't be affected.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule US 1918 1919 - Mar lastSun 2:00 1:00 D
-Rule US 1918 1919 - Oct lastSun 2:00 0 S
-Rule US 1942 only - Feb 9 2:00 1:00 W # War
-Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule US 1945 only - Sep 30 2:00 0 S
-Rule US 1967 2006 - Oct lastSun 2:00 0 S
-Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
-Rule US 1974 only - Jan 6 2:00 1:00 D
-Rule US 1975 only - Feb 23 2:00 1:00 D
-Rule US 1976 1986 - Apr lastSun 2:00 1:00 D
-Rule US 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule US 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule US 2007 max - Nov Sun>=1 2:00 0 S
-
-# From Arthur David Olson, 2005-12-19
-# We generate the files specified below to guard against old files with
-# obsolete information being left in the time zone binary directory.
-# We limit the list to names that have appeared in previous versions of
-# this time zone package.
-# We do these as separate Zones rather than as Links to avoid problems if
-# a particular place changes whether it observes DST.
-# We put these specifications here in the northamerica file both to
-# increase the chances that they'll actually get compiled and to
-# avoid the need to duplicate the US rules in another file.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone EST -5:00 - EST
-Zone MST -7:00 - MST
-Zone HST -10:00 - HST
-Zone EST5EDT -5:00 US E%sT
-Zone CST6CDT -6:00 US C%sT
-Zone MST7MDT -7:00 US M%sT
-Zone PST8PDT -8:00 US P%sT
-
-# From Bob Devine (1988-01-28):
-# ...Alaska (and Hawaii) had the timezone names changed in 1967.
-# old new
-# Pacific Standard Time(PST) -same-
-# Yukon Standard Time(YST) -same-
-# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
-# Nome Standard Time (NT) Bering Standard Time (BST)
-#
-# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
-# The YST zone now covers nearly all of the state, AHST just part
-# of the Aleutian islands. No DST.
-
-# From Paul Eggert (1995-12-19):
-# The tables below use `NST', not `NT', for Nome Standard Time.
-# I invented `CAWT' for Central Alaska War Time.
-
-# From U. S. Naval Observatory (1989-01-19):
-# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
-# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
-# USA CENTRAL 6 H BEHIND UTC CHICAGO, HOUSTON
-# USA CENTRAL 5 H BEHIND UTC APR 3 - OCT 30
-# USA MOUNTAIN 7 H BEHIND UTC DENVER
-# USA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 30
-# USA PACIFIC 8 H BEHIND UTC L.A., SAN FRANCISCO
-# USA PACIFIC 7 H BEHIND UTC APR 3 - OCT 30
-# USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST)
-# USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT)
-# USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W
-# USA - " - 9 H BEHIND UTC APR 3 - OCT 30
-# USA HAWAII 10 H BEHIND UTC
-# USA BERING 11 H BEHIND UTC SAMOA, MIDWAY
-
-# From Arthur David Olson (1989-01-21):
-# The above dates are for 1988.
-# Note the "AKST" and "AKDT" abbreviations, the claim that there's
-# no DST in Samoa, and the claim that there is DST in Alaska and the
-# Aleutians.
-
-# From Arthur David Olson (1988-02-13):
-# Legal standard time zone names, from United States Code (1982 Edition and
-# Supplement III), Title 15, Chapter 6, Section 260 and forward. First, names
-# up to 1967-04-01 (when most provisions of the Uniform Time Act of 1966
-# took effect), as explained in sections 263 and 261:
-# (none)
-# United States standard eastern time
-# United States standard mountain time
-# United States standard central time
-# United States standard Pacific time
-# (none)
-# United States standard Alaska time
-# (none)
-# Next, names from 1967-04-01 until 1983-11-30 (the date for
-# public law 98-181):
-# Atlantic standard time
-# eastern standard time
-# central standard time
-# mountain standard time
-# Pacific standard time
-# Yukon standard time
-# Alaska-Hawaii standard time
-# Bering standard time
-# And after 1983-11-30:
-# Atlantic standard time
-# eastern standard time
-# central standard time
-# mountain standard time
-# Pacific standard time
-# Alaska standard time
-# Hawaii-Aleutian standard time
-# Samoa standard time
-# The law doesn't give abbreviations.
-#
-# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
-# Public law 106-564 (2000-12-23) introduced the abbreviation
-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
-# See the file "australasia".
-
-# From Arthur David Olson, 2005-08-09
-# The following was signed into law on 2005-08-08.
-#
-# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
-# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
-# U.S.C. 260a(a)) is amended--
-# (1) by striking `first Sunday of April' and inserting `second
-# Sunday of March'; and
-# (2) by striking `last Sunday of October' and inserting `first
-# Sunday of November'.
-# (b) Effective Date- Subsection (a) shall take effect 1 year after the
-# date of enactment of this Act or March 1, 2007, whichever is later.
-# (c) Report to Congress- Not later than 9 months after the effective
-# date stated in subsection (b), the Secretary shall report to Congress
-# on the impact of this section on energy consumption in the United
-# States.
-# (d) Right to Revert- Congress retains the right to revert the
-# Daylight Saving Time back to the 2005 time schedules once the
-# Department study is complete.
-
-# US eastern time, represented by New York
-
-# Connecticut, Delaware, District of Columbia, most of Florida,
-# Georgia, southeast Indiana (Dearborn and Ohio counties), eastern Kentucky
-# (except America/Kentucky/Louisville below), Maine, Maryland, Massachusetts,
-# New Hampshire, New Jersey, New York, North Carolina, Ohio,
-# Pennsylvania, Rhode Island, South Carolina, eastern Tennessee,
-# Vermont, Virginia, West Virginia
-
-# From Dave Cantor (2004-11-02):
-# Early this summer I had the occasion to visit the Mount Washington
-# Observatory weather station atop (of course!) Mount Washington [, NH]....
-# One of the staff members said that the station was on Eastern Standard Time
-# and didn't change their clocks for Daylight Saving ... so that their
-# reports will always have times which are 5 hours behind UTC.
-
-# From Paul Eggert (2005-08-26):
-# According to today's Huntsville Times
-#
-# a few towns on Alabama's "eastern border with Georgia, such as Phenix City
-# in Russell County, Lanett in Chambers County and some towns in Lee County,
-# set their watches and clocks on Eastern time." It quotes H.H. "Bubba"
-# Roberts, city administrator in Phenix City. as saying "We are in the Central
-# time zone, but we do go by the Eastern time zone because so many people work
-# in Columbus."
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule NYC 1920 only - Mar lastSun 2:00 1:00 D
-Rule NYC 1920 only - Oct lastSun 2:00 0 S
-Rule NYC 1921 1966 - Apr lastSun 2:00 1:00 D
-Rule NYC 1921 1954 - Sep lastSun 2:00 0 S
-Rule NYC 1955 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:03:58
- -5:00 US E%sT 1920
- -5:00 NYC E%sT 1942
- -5:00 US E%sT 1946
- -5:00 NYC E%sT 1967
- -5:00 US E%sT
-
-# US central time, represented by Chicago
-
-# Alabama, Arkansas, Florida panhandle (Bay, Calhoun, Escambia,
-# Gulf, Holmes, Jackson, Okaloosa, Santa Rosa, Walton, and
-# Washington counties), Illinois, western Indiana
-# (Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-# Vanderburgh, and Warrick counties), Iowa, most of Kansas, western
-# Kentucky, Louisiana, Minnesota, Mississippi, Missouri, eastern
-# Nebraska, eastern North Dakota, Oklahoma, eastern South Dakota,
-# western Tennessee, most of Texas, Wisconsin
-
-# From Larry M. Smith (2006-04-26) re Wisconsin:
-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
-# is currently enforced at the 01:00 time of change. Because the local
-# "bar time" in the state corresponds to 02:00, a number of citations
-# are issued for the "sale of class 'B' alcohol after prohibited
-# hours" within the deviated hour of this change every year....
-#
-# From Douglas R. Bomberg (2007-03-12):
-# Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
-# Statue 175 closer in synch with the US Congress' intent....
-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Chicago 1920 only - Jun 13 2:00 1:00 D
-Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
-Rule Chicago 1921 only - Mar lastSun 2:00 1:00 D
-Rule Chicago 1922 1966 - Apr lastSun 2:00 1:00 D
-Rule Chicago 1922 1954 - Sep lastSun 2:00 0 S
-Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
- -6:00 US C%sT 1920
- -6:00 Chicago C%sT 1936 Mar 1 2:00
- -5:00 - EST 1936 Nov 15 2:00
- -6:00 Chicago C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Chicago C%sT 1967
- -6:00 US C%sT
-# Oliver County, ND switched from mountain to central time on 1992-10-25.
-Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
- -7:00 US M%sT 1992 Oct 25 02:00
- -6:00 US C%sT
-# Morton County, ND, switched from mountain to central time on
-# 2003-10-26, except for the area around Mandan which was already central time.
-# See .
-# Officially this switch also included part of Sioux County, and
-# Jones, Mellette, and Todd Counties in South Dakota;
-# but in practice these other counties were already observing central time.
-# See .
-Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
- -7:00 US M%sT 2003 Oct 26 02:00
- -6:00 US C%sT
-
-# From Josh Findley (2011-01-21):
-# ...it appears that Mercer County, North Dakota, changed from the
-# mountain time zone to the central time zone at the last transition from
-# daylight-saving to standard time (on Nov. 7, 2010):
-#
-# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
-#
-#
-# http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
-#
-
-# From Andy Lipscomb (2011-01-24):
-# ...according to the Census Bureau, the largest city is Beulah (although
-# it's commonly referred to as Beulah-Hazen, with Hazen being the next
-# largest city in Mercer County). Google Maps places Beulah's city hall
-# at 4715'51" north, 10146'40" west, which yields an offset of 6h47'07".
-
-Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
- -7:00 US M%sT 2010 Nov 7 2:00
- -6:00 US C%sT
-
-# US mountain time, represented by Denver
-#
-# Colorado, far western Kansas, Montana, western
-# Nebraska, Nevada border (Jackpot, Owyhee, and Mountain City),
-# New Mexico, southwestern North Dakota,
-# western South Dakota, far western Texas (El Paso County, Hudspeth County,
-# and Pine Springs and Nickel Creek in Culberson County), Utah, Wyoming
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Denver 1920 1921 - Mar lastSun 2:00 1:00 D
-Rule Denver 1920 only - Oct lastSun 2:00 0 S
-Rule Denver 1921 only - May 22 2:00 0 S
-Rule Denver 1965 1966 - Apr lastSun 2:00 1:00 D
-Rule Denver 1965 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00:04
- -7:00 US M%sT 1920
- -7:00 Denver M%sT 1942
- -7:00 US M%sT 1946
- -7:00 Denver M%sT 1967
- -7:00 US M%sT
-
-# US Pacific time, represented by Los Angeles
-#
-# California, northern Idaho (Benewah, Bonner, Boundary, Clearwater,
-# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties,
-# and the northern three-quarters of Idaho county),
-# most of Nevada, most of Oregon, and Washington
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule CA 1948 only - Mar 14 2:00 1:00 D
-Rule CA 1949 only - Jan 1 2:00 0 S
-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
-Rule CA 1950 1961 - Sep lastSun 2:00 0 S
-Rule CA 1962 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
- -8:00 US P%sT 1946
- -8:00 CA P%sT 1967
- -8:00 US P%sT
-
-# Alaska
-# AK%sT is the modern abbreviation for -9:00 per USNO.
-#
-# From Paul Eggert (2001-05-30):
-# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
-# and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
-# also a Friday. Include only the time zone part of this transition,
-# ignoring the switch from Julian to Gregorian, since we can't represent
-# the Julian calendar.
-#
-# As far as we know, none of the exact locations mentioned below were
-# permanently inhabited in 1867 by anyone using either calendar.
-# (Yakutat was colonized by the Russians in 1799, but the settlement
-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
-# were nearby inhabitants in some cases and for our purposes perhaps
-# it's best to simply use the official transition.
-#
-
-# From Steve Ferguson (2011-01-31):
-# The author lives in Alaska and many of the references listed are only
-# available to Alaskan residents.
-#
-#
-# http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98
-#
-
-# From Arthur David Olson (2011-02-01):
-# Here's database-relevant material from the 2001 "Alaska History" article:
-#
-# On September 20 [1979]...DOT...officials decreed that on April 27,
-# 1980, Juneau and other nearby communities would move to Yukon Time.
-# Sitka, Petersburg, Wrangell, and Ketchikan, however, would remain on
-# Pacific Time.
-#
-# ...on September 22, 1980, DOT Secretary Neil E. Goldschmidt rescinded the
-# Department's September 1979 decision. Juneau and other communities in
-# northern Southeast reverted to Pacific Time on October 26.
-#
-# On October 28 [1983]...the Metlakatla Indian Community Council voted
-# unanimously to keep the reservation on Pacific Time.
-#
-# According to DOT official Joanne Petrie, Indian reservations are not
-# bound to follow time zones imposed by neighboring jurisdictions.
-#
-# (The last is consistent with how the database now handles the Navajo
-# Nation.)
-
-# From Arthur David Olson (2011-02-09):
-# I just spoke by phone with a staff member at the Metlakatla Indian
-# Community office (using contact information available at
-#
-# http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla
-# ).
-# It's shortly after 1:00 here on the east coast of the United States;
-# the staffer said it was shortly after 10:00 there. When I asked whether
-# that meant they were on Pacific time, they said no--they were on their
-# own time. I asked about daylight saving; they said it wasn't used. I
-# did not inquire about practices in the past.
-
-# From Arthur David Olson (2011-08-17):
-# For lack of better information, assume that Metlakatla's
-# abandonment of use of daylight saving resulted from the 1983 vote.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
- -8:57:41 - LMT 1900 Aug 20 12:00
- -8:00 - PST 1942
- -8:00 US P%sT 1946
- -8:00 - PST 1969
- -8:00 US P%sT 1980 Apr 27 2:00
- -9:00 US Y%sT 1980 Oct 26 2:00
- -8:00 US P%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Sitka 14:58:47 - LMT 1867 Oct 18
- -9:01:13 - LMT 1900 Aug 20 12:00
- -8:00 - PST 1942
- -8:00 US P%sT 1946
- -8:00 - PST 1969
- -8:00 US P%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18
- -8:46:18 - LMT 1900 Aug 20 12:00
- -8:00 - PST 1942
- -8:00 US P%sT 1946
- -8:00 - PST 1969
- -8:00 US P%sT 1983 Oct 30 2:00
- -8:00 - MeST
-Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
- -9:18:55 - LMT 1900 Aug 20 12:00
- -9:00 - YST 1942
- -9:00 US Y%sT 1946
- -9:00 - YST 1969
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
- -9:59:36 - LMT 1900 Aug 20 12:00
- -10:00 - CAT 1942
- -10:00 US CAT/CAWT 1945 Aug 14 23:00u
- -10:00 US CAT/CAPT 1946 # Peace
- -10:00 - CAT 1967 Apr
- -10:00 - AHST 1969
- -10:00 US AH%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Nome 12:58:21 - LMT 1867 Oct 18
- -11:01:38 - LMT 1900 Aug 20 12:00
- -11:00 - NST 1942
- -11:00 US N%sT 1946
- -11:00 - NST 1967 Apr
- -11:00 - BST 1969
- -11:00 US B%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Adak 12:13:21 - LMT 1867 Oct 18
- -11:46:38 - LMT 1900 Aug 20 12:00
- -11:00 - NST 1942
- -11:00 US N%sT 1946
- -11:00 - NST 1967 Apr
- -11:00 - BST 1969
- -11:00 US B%sT 1983 Oct 30 2:00
- -10:00 US AH%sT 1983 Nov 30
- -10:00 US HA%sT
-# The following switches don't quite make our 1970 cutoff.
-#
-# Shanks writes that part of southwest Alaska (e.g. Aniak)
-# switched from -11:00 to -10:00 on 1968-09-22 at 02:00,
-# and another part (e.g. Akiak) made the same switch five weeks later.
-#
-# From David Flater (2004-11-09):
-# In e-mail, 2004-11-02, Ray Hudson, historian/liaison to the Unalaska
-# Historic Preservation Commission, provided this information, which
-# suggests that Unalaska deviated from statutory time from early 1967
-# possibly until 1983:
-#
-# Minutes of the Unalaska City Council Meeting, January 10, 1967:
-# "Except for St. Paul and Akutan, Unalaska is the only important
-# location not on Alaska Standard Time. The following resolution was
-# made by William Robinson and seconded by Henry Swanson: Be it
-# resolved that the City of Unalaska hereby goes to Alaska Standard
-# Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
-# January 14, Alaska Standard Time.) This resolution was passed with
-# three votes for and one against."
-
-# Hawaii
-
-# From Arthur David Olson (2010-12-09):
-# "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
-# of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
-# the article is available at
-#
-# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
-#
-# and indicates that standard time was adopted effective noon, January
-# 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
-# saving for the period between the last Sunday of each April and the
-# last Sunday of each September, but less than a month later repealed the
-# act," (page 220), that year-round daylight saving time was in effect
-# from 1942-02-09 to 1945-09-30 (page 221, with no time of day given for
-# when clocks changed) and that clocks were changed by 30 minutes
-# effective the second Sunday of June, 1947 (page 219, with no time of
-# day given for when clocks changed). A footnote for the 1933 changes
-# cites Session Laws of Hawaii 1933, "Act. 90 (approved 26 Apr. 1933)
-# and Act 163 (approved 21 May 1933)."
-
-# From Arthur David Olson (2011-01-19):
-# The following is from "Laws of the Territory of Hawaii Passed by the
-# Seventeenth Legislature: Regular Session 1933," available (as of
-# 2011-01-19) at American University's Pence Law Library. Page 85: "Act
-# 90...At 2 o'clock ante meridian of the last Sunday in April of each
-# year, the standard time of this Territory shall be advanced one
-# hour...This Act shall take effect upon its approval. Approved this 26th
-# day of April, A. D. 1933. LAWRENCE M JUDD, Governor of the Territory of
-# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is
-# hereby repealed...This Act shall take effect upon its approval, upon
-# which date the standard time of this Territory shall be restored to
-# that existing immediately prior to the taking effect of said Act 90.
-# Approved this 21st day of May, A. D. 1933. LAWRENCE M. JUDD, Governor
-# of the Territory of Hawaii."
-#
-# Note that 1933-05-21 was a Sunday.
-# We're left to guess the time of day when Act 163 was approved; guess noon.
-
-Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 #Schmitt&Cox
- -10:30 - HST 1933 Apr 30 2:00 #Laws 1933
- -10:30 1:00 HDT 1933 May 21 12:00 #Laws 1933+12
- -10:30 - HST 1942 Feb 09 2:00 #Schmitt&Cox+2
- -10:30 1:00 HDT 1945 Sep 30 2:00 #Schmitt&Cox+2
- -10:30 - HST 1947 Jun 8 2:00 #Schmitt&Cox+2
- -10:00 - HST
-
-# Now we turn to US areas that have diverged from the consensus since 1970.
-
-# Arizona mostly uses MST.
-
-# From Paul Eggert (2002-10-20):
-#
-# The information in the rest of this paragraph is derived from the
-#
-# Daylight Saving Time web page (2002-01-23) maintained by the
-# Arizona State Library, Archives and Public Records.
-# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
-# time, but by federal law railroads, airlines, bus lines, military
-# personnel, and some engaged in interstate commerce continued to
-# observe war (i.e., daylight saving) time. The 1944-03-17 Phoenix
-# Gazette says that was the date the law changed, and that 04-01 was
-# the date the state's clocks would change. In 1945 the State of
-# Arizona used standard time all year, again with exceptions only as
-# mandated by federal law. Arizona observed DST in 1967, but Arizona
-# Laws 1968, ch. 183 (effective 1968-03-21) repealed DST.
-#
-# Shanks says the 1944 experiment came to an end on 1944-03-17.
-# Go with the Arizona State Library instead.
-
-Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
- -7:00 US M%sT 1944 Jan 1 00:01
- -7:00 - MST 1944 Apr 1 00:01
- -7:00 US M%sT 1944 Oct 1 00:01
- -7:00 - MST 1967
- -7:00 US M%sT 1968 Mar 21
- -7:00 - MST
-# From Arthur David Olson (1988-02-13):
-# A writer from the Inter Tribal Council of Arizona, Inc.,
-# notes in private correspondence dated 1987-12-28 that "Presently, only the
-# Navajo Nation participates in the Daylight Saving Time policy, due to its
-# large size and location in three states." (The "only" means that other
-# tribal nations don't use DST.)
-
-Link America/Denver America/Shiprock
-
-# Southern Idaho (Ada, Adams, Bannock, Bear Lake, Bingham, Blaine,
-# Boise, Bonneville, Butte, Camas, Canyon, Caribou, Cassia, Clark,
-# Custer, Elmore, Franklin, Fremont, Gem, Gooding, Jefferson, Jerome,
-# Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power,
-# Teton, Twin Falls, Valley, Washington counties, and the southern
-# quarter of Idaho county) and eastern Oregon (most of Malheur County)
-# switched four weeks late in 1974.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
- -8:00 US P%sT 1923 May 13 2:00
- -7:00 US M%sT 1974
- -7:00 - MST 1974 Feb 3 2:00
- -7:00 US M%sT
-
-# Indiana
-#
-# For a map of Indiana's time zone regions, see:
-#
-# What time is it in Indiana?
-# (2006-03-01)
-#
-# From Paul Eggert (2007-08-17):
-# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
-# with the following exceptions:
-#
-# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-# Vandenburgh, and Warrick counties have been like America/Chicago.
-#
-# - Dearborn and Ohio counties have been like America/New_York.
-#
-# - Clark, Floyd, and Harrison counties have been like
-# America/Kentucky/Louisville.
-#
-# - Crawford, Daviess, Dubois, Knox, Martin, Perry, Pike, Pulaski, Starke,
-# and Switzerland counties have their own time zone histories as noted below.
-#
-# Shanks partitioned Indiana into 345 regions, each with its own time history,
-# and wrote ``Even newspaper reports present contradictory information.''
-# Those Hoosiers! Such a flighty and changeable people!
-# Fortunately, most of the complexity occurred before our cutoff date of 1970.
-#
-# Other than Indianapolis, the Indiana place names are so nondescript
-# that they would be ambiguous if we left them at the `America' level.
-# So we reluctantly put them all in a subdirectory `America/Indiana'.
-
-# From Paul Eggert (2005-08-16):
-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
-
-# From Nathan Stratton Treadway (2006-03-30):
-# http://www.dot.gov/affairs/dot0406.htm [3705 B]
-# From Deborah Goldsmith (2006-01-18):
-# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
-# From Paul Eggert (2006-01-20):
-# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
-# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
-# Eastern Time Zone to the Central Time Zone.... The effective date of
-# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
-# changeover date from standard time to Daylight Saving Time."
-# Strictly speaking, this means the affected counties will change their
-# clocks twice that night, but this obviously is in error. The intent
-# is that 01:59:59 EST be followed by 02:00:00 CDT.
-
-# From Gwillim Law (2007-02-10):
-# The Associated Press has been reporting that Pulaski County, Indiana is
-# going to switch from Central to Eastern Time on March 11, 2007....
-# http://www.indystar.com/apps/pbcs.dll/article?AID=/20070207/LOCAL190108/702070524/0/LOCAL
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D
-Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
-Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
- -6:00 US C%sT 1920
- -6:00 Indianapolis C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Indianapolis C%sT 1955 Apr 24 2:00
- -5:00 - EST 1957 Sep 29 2:00
- -6:00 - CST 1958 Apr 27 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006
- -5:00 US E%sT
-#
-# Eastern Crawford County, Indiana, left its clocks alone in 1974,
-# as well as from 1976 through 2005.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Marengo 1951 only - Apr lastSun 2:00 1:00 D
-Rule Marengo 1951 only - Sep lastSun 2:00 0 S
-Rule Marengo 1954 1960 - Apr lastSun 2:00 1:00 D
-Rule Marengo 1954 1960 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
- -6:00 US C%sT 1951
- -6:00 Marengo C%sT 1961 Apr 30 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1974 Jan 6 2:00
- -6:00 1:00 CDT 1974 Oct 27 2:00
- -5:00 US E%sT 1976
- -5:00 - EST 2006
- -5:00 US E%sT
-#
-# Daviess, Dubois, Knox, and Martin Counties, Indiana,
-# switched from eastern to central time in April 2006, then switched back
-# in November 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Vincennes 1946 only - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1946 only - Sep lastSun 2:00 0 S
-Rule Vincennes 1953 1954 - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1953 1959 - Sep lastSun 2:00 0 S
-Rule Vincennes 1955 only - May 1 0:00 1:00 D
-Rule Vincennes 1956 1963 - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1960 only - Oct lastSun 2:00 0 S
-Rule Vincennes 1961 only - Sep lastSun 2:00 0 S
-Rule Vincennes 1962 1963 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
- -6:00 US C%sT 1946
- -6:00 Vincennes C%sT 1964 Apr 26 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Nov 4 2:00
- -5:00 US E%sT
-#
-# Perry County, Indiana, switched from eastern to central time in April 2006.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Perry 1946 only - Apr lastSun 2:00 1:00 D
-Rule Perry 1946 only - Sep lastSun 2:00 0 S
-Rule Perry 1953 1954 - Apr lastSun 2:00 1:00 D
-Rule Perry 1953 1959 - Sep lastSun 2:00 0 S
-Rule Perry 1955 only - May 1 0:00 1:00 D
-Rule Perry 1956 1963 - Apr lastSun 2:00 1:00 D
-Rule Perry 1960 only - Oct lastSun 2:00 0 S
-Rule Perry 1961 only - Sep lastSun 2:00 0 S
-Rule Perry 1962 1963 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
- -6:00 US C%sT 1946
- -6:00 Perry C%sT 1964 Apr 26 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT
-#
-# Pike County, Indiana moved from central to eastern time in 1977,
-# then switched back in 2006, then switched back again in 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Pike 1955 only - May 1 0:00 1:00 D
-Rule Pike 1955 1960 - Sep lastSun 2:00 0 S
-Rule Pike 1956 1964 - Apr lastSun 2:00 1:00 D
-Rule Pike 1961 1964 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
- -6:00 US C%sT 1955
- -6:00 Pike C%sT 1965 Apr 25 2:00
- -5:00 - EST 1966 Oct 30 2:00
- -6:00 US C%sT 1977 Oct 30 2:00
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Nov 4 2:00
- -5:00 US E%sT
-#
-# Starke County, Indiana moved from central to eastern time in 1991,
-# then switched back in 2006.
-# From Arthur David Olson (1991-10-28):
-# An article on page A3 of the Sunday, 1991-10-27 Washington Post
-# notes that Starke County switched from Central time to Eastern time as of
-# 1991-10-27.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Starke 1947 1961 - Apr lastSun 2:00 1:00 D
-Rule Starke 1947 1954 - Sep lastSun 2:00 0 S
-Rule Starke 1955 1956 - Oct lastSun 2:00 0 S
-Rule Starke 1957 1958 - Sep lastSun 2:00 0 S
-Rule Starke 1959 1961 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
- -6:00 US C%sT 1947
- -6:00 Starke C%sT 1962 Apr 29 2:00
- -5:00 - EST 1963 Oct 27 2:00
- -6:00 US C%sT 1991 Oct 27 2:00
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT
-#
-# Pulaski County, Indiana, switched from eastern to central time in
-# April 2006 and then switched back in March 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Pulaski 1946 1960 - Apr lastSun 2:00 1:00 D
-Rule Pulaski 1946 1954 - Sep lastSun 2:00 0 S
-Rule Pulaski 1955 1956 - Oct lastSun 2:00 0 S
-Rule Pulaski 1957 1960 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
- -6:00 US C%sT 1946
- -6:00 Pulaski C%sT 1961 Apr 30 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Mar 11 2:00
- -5:00 US E%sT
-#
-# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
- -6:00 US C%sT 1954 Apr 25 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1973
- -5:00 - EST 2006
- -5:00 US E%sT
-
-# Part of Kentucky left its clocks alone in 1974.
-# This also includes Clark, Floyd, and Harrison counties in Indiana.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Louisville 1921 only - May 1 2:00 1:00 D
-Rule Louisville 1921 only - Sep 1 2:00 0 S
-Rule Louisville 1941 1961 - Apr lastSun 2:00 1:00 D
-Rule Louisville 1941 only - Sep lastSun 2:00 0 S
-Rule Louisville 1946 only - Jun 2 2:00 0 S
-Rule Louisville 1950 1955 - Sep lastSun 2:00 0 S
-Rule Louisville 1956 1960 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
- -6:00 US C%sT 1921
- -6:00 Louisville C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Louisville C%sT 1961 Jul 23 2:00
- -5:00 - EST 1968
- -5:00 US E%sT 1974 Jan 6 2:00
- -6:00 1:00 CDT 1974 Oct 27 2:00
- -5:00 US E%sT
-#
-# Wayne County, Kentucky
-#
-# From
-#
-# Lake Cumberland LIFE
-# (1999-01-29) via WKYM-101.7:
-# Clinton County has joined Wayne County in asking the DoT to change from
-# the Central to the Eastern time zone.... The Wayne County government made
-# the same request in December. And while Russell County officials have not
-# taken action, the majority of respondents to a poll conducted there in
-# August indicated they would like to change to "fast time" also.
-# The three Lake Cumberland counties are the farthest east of any U.S.
-# location in the Central time zone.
-#
-# From Rich Wales (2000-08-29):
-# After prolonged debate, and despite continuing deep differences of opinion,
-# Wayne County (central Kentucky) is switching from Central (-0600) to Eastern
-# (-0500) time. They won't "fall back" this year. See Sara Shipley,
-# The difference an hour makes, Nando Times (2000-08-29 15:33 -0400).
-#
-# From Paul Eggert (2001-07-16):
-# The final rule was published in the
-#
-# Federal Register 65, 160 (2000-08-17), page 50154-50158.
-#
-#
-Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
- -6:00 US C%sT 1946
- -6:00 - CST 1968
- -6:00 US C%sT 2000 Oct 29 2:00
- -5:00 US E%sT
-
-
-# From Rives McDow (2000-08-30):
-# Here ... are all the changes in the US since 1985.
-# Kearny County, KS (put all of county on central;
-# previously split between MST and CST) ... 1990-10
-# Starke County, IN (from CST to EST) ... 1991-10
-# Oliver County, ND (from MST to CST) ... 1992-10
-# West Wendover, NV (from PST TO MST) ... 1999-10
-# Wayne County, KY (from CST to EST) ... 2000-10
-#
-# From Paul Eggert (2001-07-17):
-# We don't know where the line used to be within Kearny County, KS,
-# so omit that change for now.
-# See America/Indiana/Knox for the Starke County, IN change.
-# See America/North_Dakota/Center for the Oliver County, ND change.
-# West Wendover, NV officially switched from Pacific to mountain time on
-# 1999-10-31. See the
-#
-# Federal Register 64, 203 (1999-10-21), page 56705-56707.
-#
-# However, the Federal Register says that West Wendover already operated
-# on mountain time, and the rule merely made this official;
-# hence a separate tz entry is not needed.
-
-# Michigan
-#
-# From Bob Devine (1988-01-28):
-# Michigan didn't observe DST from 1968 to 1973.
-#
-# From Paul Eggert (1999-03-31):
-# Shanks writes that Michigan started using standard time on 1885-09-18,
-# but Howse writes (pp 124-125, referring to Popular Astronomy, 1901-01)
-# that Detroit kept
-#
-# local time until 1900 when the City Council decreed that clocks should
-# be put back twenty-eight minutes to Central Standard Time. Half the
-# city obeyed, half refused. After considerable debate, the decision
-# was rescinded and the city reverted to Sun time. A derisive offer to
-# erect a sundial in front of the city hall was referred to the
-# Committee on Sewers. Then, in 1905, Central time was adopted
-# by city vote.
-#
-# This story is too entertaining to be false, so go with Howse over Shanks.
-#
-# From Paul Eggert (2001-03-06):
-# Garland (1927) writes ``Cleveland and Detroit advanced their clocks
-# one hour in 1914.'' This change is not in Shanks. We have no more
-# info, so omit this for now.
-#
-# Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
-Rule Detroit 1948 only - Sep lastSun 2:00 0 S
-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
-Rule Detroit 1967 only - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Detroit -5:32:11 - LMT 1905
- -6:00 - CST 1915 May 15 2:00
- -5:00 - EST 1942
- -5:00 US E%sT 1946
- -5:00 Detroit E%sT 1973
- -5:00 US E%sT 1975
- -5:00 - EST 1975 Apr 27 2:00
- -5:00 US E%sT
-#
-# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
-# switched from EST to CST/CDT in 1973.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Menominee 1946 only - Apr lastSun 2:00 1:00 D
-Rule Menominee 1946 only - Sep lastSun 2:00 0 S
-Rule Menominee 1966 only - Apr lastSun 2:00 1:00 D
-Rule Menominee 1966 only - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
- -6:00 US C%sT 1946
- -6:00 Menominee C%sT 1969 Apr 27 2:00
- -5:00 - EST 1973 Apr 29 2:00
- -6:00 US C%sT
-
-# Navassa
-# administered by the US Fish and Wildlife Service
-# claimed by US under the provisions of the 1856 Guano Islands Act
-# also claimed by Haiti
-# occupied 1857/1900 by the Navassa Phosphate Co
-# US lighthouse 1917/1996-09
-# currently uninhabited
-# see Mark Fineman, ``An Isle Rich in Guano and Discord'',
-# _Los Angeles Times_ (1998-11-10), A1, A10; it cites
-# Jimmy Skaggs, _The Great Guano Rush_ (1994).
-
-################################################################################
-
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-# Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-# which I found in the UCLA library.
-#
-#
-# William Willett, The Waste of Daylight, 19th edition
-# (1914-03)
-#
-# See the `europe' file for Greenland.
-
-# Canada
-
-# From Alain LaBont (1994-11-14):
-# I post here the time zone abbreviations standardized in Canada
-# for both English and French in the CAN/CSA-Z234.4-89 standard....
-#
-# UTC Standard time Daylight savings time
-# offset French English French English
-# -2:30 - - HAT NDT
-# -3 - - HAA ADT
-# -3:30 HNT NST - -
-# -4 HNA AST HAE EDT
-# -5 HNE EST HAC CDT
-# -6 HNC CST HAR MDT
-# -7 HNR MST HAP PDT
-# -8 HNP PST HAY YDT
-# -9 HNY YST - -
-#
-# HN: Heure Normale ST: Standard Time
-# HA: Heure Avance DT: Daylight saving Time
-#
-# A: de l'Atlantique Atlantic
-# C: du Centre Central
-# E: de l'Est Eastern
-# M: Mountain
-# N: Newfoundland
-# P: du Pacifique Pacific
-# R: des Rocheuses
-# T: de Terre-Neuve
-# Y: du Yukon Yukon
-#
-# From Paul Eggert (1994-11-22):
-# Alas, this sort of thing must be handled by localization software.
-
-# Unless otherwise specified, the data for Canada are all from Shanks
-# & Pottenger.
-
-# From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
-# 2007-03-01):
-# The British Columbia government announced yesterday that it will
-# adjust daylight savings next year to align with changes in the
-# U.S. and the rest of Canada....
-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
-# ...
-# Nova Scotia
-# Daylight saving time will be extended by four weeks starting in 2007....
-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
-#
-# [For New Brunswick] the new legislation dictates that the time change is to
-# be done at 02:00 instead of 00:01.
-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
-# ...
-# Manitoba has traditionally changed the clock every fall at 03:00.
-# As of 2006, the transition is to take place one hour earlier at 02:00.
-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
-# ...
-# [Alberta, Ontario, Quebec] will follow US rules.
-# http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
-# http://www.e-laws.gov.on.ca/DBLaws/Source/Regs/English/2006/R06111_e.htm
-# http://www2.publicationsduquebec.gouv.qc.ca/dynamicSearch/telecharge.php?type=5&file=2006C39A.PDF
-# ...
-# P.E.I. will follow US rules....
-# http://www.assembly.pe.ca/bills/pdf_chapter/62/3/chapter-41.pdf
-# ...
-# Province of Newfoundland and Labrador....
-# http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
-# ...
-# Yukon
-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
-# ...
-# N.W.T. will follow US rules. Whoever maintains the government web site
-# does not seem to believe in bookmarks. To see the news release, click the
-# following link and search for "Daylight Savings Time Change". Press the
-# "Daylight Savings Time Change" link; it will fire off a popup using
-# JavaScript.
-# http://www.exec.gov.nt.ca/currentnews/currentPR.asp?mode=archive
-# ...
-# Nunavut
-# An amendment to the Interpretation Act was registered on February 19/2007....
-# http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
-
-# From Paul Eggert (2006-04-25):
-# H. David Matthews and Mary Vincent's map
-#
-# "It's about TIME", _Canadian Geographic_ (September-October 1998)
-# contains detailed boundaries for regions observing nonstandard
-# time and daylight saving time arrangements in Canada circa 1998.
-#
-# INMS, the Institute for National Measurement Standards in Ottawa, has
-# information about standard and daylight saving time zones in Canada.
-# (updated periodically).
-# Its unofficial information is often taken from Matthews and Vincent.
-
-# From Paul Eggert (2006-06-27):
-# For now, assume all of DST-observing Canada will fall into line with the
-# new US DST rules,
-
-# From Chris Walton (2011-12-01)
-# In the first of Tammy Hardwick's articles
-#
-# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
-#
-# she quotes the Friday November 1/1918 edition of the Creston Review.
-# The quote includes these two statements:
-# 'Sunday the CPR went back to the old system of time...'
-# '... The daylight saving scheme was dropped all over Canada at the same time,'
-# These statements refer to a transition from daylight time to standard time
-# that occurred nationally on Sunday October 27/1918. This transition was
-# also documented in the Saturday October 26/1918 edition of the Toronto Star.
-
-# In light of that evidence, we alter the date from the earlier believed
-# Oct 31, to Oct 27, 1918 (and Sunday is a more likely transition day
-# than Thursday) in all Canadian rulesets.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Canada 1918 only - Apr 14 2:00 1:00 D
-Rule Canada 1918 only - Oct 27 2:00 0 S
-Rule Canada 1942 only - Feb 9 2:00 1:00 W # War
-Rule Canada 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Canada 1945 only - Sep 30 2:00 0 S
-Rule Canada 1974 1986 - Apr lastSun 2:00 1:00 D
-Rule Canada 1974 2006 - Oct lastSun 2:00 0 S
-Rule Canada 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule Canada 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule Canada 2007 max - Nov Sun>=1 2:00 0 S
-
-
-# Newfoundland and Labrador
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
-# but the only part of Labrador that follows the rules is the
-# southeast corner, including Port Hope Simpson and Mary's Harbour,
-# but excluding, say, Black Tickle.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule StJohns 1917 only - Apr 8 2:00 1:00 D
-Rule StJohns 1917 only - Sep 17 2:00 0 S
-# Whitman gives 1919 Apr 5 and 1920 Apr 5; go with Shanks & Pottenger.
-Rule StJohns 1919 only - May 5 23:00 1:00 D
-Rule StJohns 1919 only - Aug 12 23:00 0 S
-# For 1931-1935 Whitman gives Apr same date; go with Shanks & Pottenger.
-Rule StJohns 1920 1935 - May Sun>=1 23:00 1:00 D
-Rule StJohns 1920 1935 - Oct lastSun 23:00 0 S
-# For 1936-1941 Whitman gives May Sun>=8 and Oct Sun>=1; go with Shanks &
-# Pottenger.
-Rule StJohns 1936 1941 - May Mon>=9 0:00 1:00 D
-Rule StJohns 1936 1941 - Oct Mon>=2 0:00 0 S
-# Whitman gives the following transitions:
-# 1942 03-01/12-31, 1943 05-30/09-05, 1944 07-10/09-02, 1945 01-01/10-07
-# but go with Shanks & Pottenger and assume they used Canadian rules.
-# For 1946-9 Whitman gives May 5,4,9,1 - Oct 1,5,3,2, and for 1950 he gives
-# Apr 30 - Sep 24; go with Shanks & Pottenger.
-Rule StJohns 1946 1950 - May Sun>=8 2:00 1:00 D
-Rule StJohns 1946 1950 - Oct Sun>=2 2:00 0 S
-Rule StJohns 1951 1986 - Apr lastSun 2:00 1:00 D
-Rule StJohns 1951 1959 - Sep lastSun 2:00 0 S
-Rule StJohns 1960 1986 - Oct lastSun 2:00 0 S
-# From Paul Eggert (2000-10-02):
-# INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
-# at 00:01 local time. For now, assume it started in 1987.
-
-# From Michael Pelley (2011-09-12):
-# We received today, Monday, September 12, 2011, notification that the
-# changes to the Newfoundland Standard Time Act have been proclaimed.
-# The change in the Act stipulates that the change from Daylight Savings
-# Time to Standard Time and from Standard Time to Daylight Savings Time
-# now occurs at 2:00AM.
-# ...
-#
-# http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm
-#
-# ...
-# MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery
-# Office of the Chief Information Officer
-# Executive Council
-# Government of Newfoundland & Labrador
-
-Rule StJohns 1987 only - Apr Sun>=1 0:01 1:00 D
-Rule StJohns 1987 2006 - Oct lastSun 0:01 0 S
-Rule StJohns 1988 only - Apr Sun>=1 0:01 2:00 DD
-Rule StJohns 1989 2006 - Apr Sun>=1 0:01 1:00 D
-Rule StJohns 2007 2011 - Mar Sun>=8 0:01 1:00 D
-Rule StJohns 2007 2010 - Nov Sun>=1 0:01 0 S
-#
-# St John's has an apostrophe, but Posix file names can't have apostrophes.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Johns -3:30:52 - LMT 1884
- -3:30:52 StJohns N%sT 1918
- -3:30:52 Canada N%sT 1919
- -3:30:52 StJohns N%sT 1935 Mar 30
- -3:30 StJohns N%sT 1942 May 11
- -3:30 Canada N%sT 1946
- -3:30 StJohns N%sT 2011 Nov
- -3:30 Canada N%sT
-
-# most of east Labrador
-
-# The name `Happy Valley-Goose Bay' is too long; use `Goose Bay'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
- -3:30:52 - NST 1918
- -3:30:52 Canada N%sT 1919
- -3:30:52 - NST 1935 Mar 30
- -3:30 - NST 1936
- -3:30 StJohns N%sT 1942 May 11
- -3:30 Canada N%sT 1946
- -3:30 StJohns N%sT 1966 Mar 15 2:00
- -4:00 StJohns A%sT 2011 Nov
- -4:00 Canada A%sT
-
-
-# west Labrador, Nova Scotia, Prince Edward I
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has been like
-# Halifax. Many locales did not observe peacetime DST until 1972;
-# Glace Bay, NS is the largest that we know of.
-# Shanks & Pottenger also write that Liverpool, NS was the only town
-# in Canada to observe DST in 1971 but not 1970; for now we'll assume
-# this is a typo.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Halifax 1916 only - Apr 1 0:00 1:00 D
-Rule Halifax 1916 only - Oct 1 0:00 0 S
-Rule Halifax 1920 only - May 9 0:00 1:00 D
-Rule Halifax 1920 only - Aug 29 0:00 0 S
-Rule Halifax 1921 only - May 6 0:00 1:00 D
-Rule Halifax 1921 1922 - Sep 5 0:00 0 S
-Rule Halifax 1922 only - Apr 30 0:00 1:00 D
-Rule Halifax 1923 1925 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1923 only - Sep 4 0:00 0 S
-Rule Halifax 1924 only - Sep 15 0:00 0 S
-Rule Halifax 1925 only - Sep 28 0:00 0 S
-Rule Halifax 1926 only - May 16 0:00 1:00 D
-Rule Halifax 1926 only - Sep 13 0:00 0 S
-Rule Halifax 1927 only - May 1 0:00 1:00 D
-Rule Halifax 1927 only - Sep 26 0:00 0 S
-Rule Halifax 1928 1931 - May Sun>=8 0:00 1:00 D
-Rule Halifax 1928 only - Sep 9 0:00 0 S
-Rule Halifax 1929 only - Sep 3 0:00 0 S
-Rule Halifax 1930 only - Sep 15 0:00 0 S
-Rule Halifax 1931 1932 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1932 only - May 1 0:00 1:00 D
-Rule Halifax 1933 only - Apr 30 0:00 1:00 D
-Rule Halifax 1933 only - Oct 2 0:00 0 S
-Rule Halifax 1934 only - May 20 0:00 1:00 D
-Rule Halifax 1934 only - Sep 16 0:00 0 S
-Rule Halifax 1935 only - Jun 2 0:00 1:00 D
-Rule Halifax 1935 only - Sep 30 0:00 0 S
-Rule Halifax 1936 only - Jun 1 0:00 1:00 D
-Rule Halifax 1936 only - Sep 14 0:00 0 S
-Rule Halifax 1937 1938 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1937 1941 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1939 only - May 28 0:00 1:00 D
-Rule Halifax 1940 1941 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1946 1949 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1946 1949 - Sep lastSun 2:00 0 S
-Rule Halifax 1951 1954 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1951 1954 - Sep lastSun 2:00 0 S
-Rule Halifax 1956 1959 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
-Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
- -4:00 Halifax A%sT 1918
- -4:00 Canada A%sT 1919
- -4:00 Halifax A%sT 1942 Feb 9 2:00s
- -4:00 Canada A%sT 1946
- -4:00 Halifax A%sT 1974
- -4:00 Canada A%sT
-Zone America/Glace_Bay -3:59:48 - LMT 1902 Jun 15
- -4:00 Canada A%sT 1953
- -4:00 Halifax A%sT 1954
- -4:00 - AST 1972
- -4:00 Halifax A%sT 1974
- -4:00 Canada A%sT
-
-# New Brunswick
-
-# From Paul Eggert (2007-01-31):
-# The Time Definition Act
-# says they changed at 00:01 through 2006, and
-# makes it
-# clear that this was the case since at least 1993.
-# For now, assume it started in 1993.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Moncton 1933 1935 - Jun Sun>=8 1:00 1:00 D
-Rule Moncton 1933 1935 - Sep Sun>=8 1:00 0 S
-Rule Moncton 1936 1938 - Jun Sun>=1 1:00 1:00 D
-Rule Moncton 1936 1938 - Sep Sun>=1 1:00 0 S
-Rule Moncton 1939 only - May 27 1:00 1:00 D
-Rule Moncton 1939 1941 - Sep Sat>=21 1:00 0 S
-Rule Moncton 1940 only - May 19 1:00 1:00 D
-Rule Moncton 1941 only - May 4 1:00 1:00 D
-Rule Moncton 1946 1972 - Apr lastSun 2:00 1:00 D
-Rule Moncton 1946 1956 - Sep lastSun 2:00 0 S
-Rule Moncton 1957 1972 - Oct lastSun 2:00 0 S
-Rule Moncton 1993 2006 - Apr Sun>=1 0:01 1:00 D
-Rule Moncton 1993 2006 - Oct lastSun 0:01 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
- -5:00 - EST 1902 Jun 15
- -4:00 Canada A%sT 1933
- -4:00 Moncton A%sT 1942
- -4:00 Canada A%sT 1946
- -4:00 Moncton A%sT 1973
- -4:00 Canada A%sT 1993
- -4:00 Moncton A%sT 2007
- -4:00 Canada A%sT
-
-# Quebec
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Quebec has been
-# like Montreal.
-
-# From Paul Eggert (2006-06-27):
-# Matthews and Vincent (1998) also write that Quebec east of the -63
-# meridian is supposed to observe AST, but residents as far east as
-# Natashquan use EST/EDT, and residents east of Natashquan use AST.
-# In "Official time in Quebec" the Quebec department of justice writes in
-# http://www.justice.gouv.qc.ca/english/publications/generale/temps-regl-1-a.htm
-# that "The residents of the Municipality of the
-# Cote-Nord-du-Golfe-Saint-Laurent and the municipalities of Saint-Augustin,
-# Bonne-Esperance and Blanc-Sablon apply the Official Time Act as it is
-# written and use Atlantic standard time all year round. The same applies to
-# the residents of the Native facilities along the lower North Shore."
-#
-# says this common practice was codified into law as of 2007.
-# For lack of better info, guess this practice began around 1970, contra to
-# Shanks & Pottenger who have this region observing AST/ADT.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mont 1917 only - Mar 25 2:00 1:00 D
-Rule Mont 1917 only - Apr 24 0:00 0 S
-Rule Mont 1919 only - Mar 31 2:30 1:00 D
-Rule Mont 1919 only - Oct 25 2:30 0 S
-Rule Mont 1920 only - May 2 2:30 1:00 D
-Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
-Rule Mont 1921 only - May 1 2:00 1:00 D
-Rule Mont 1922 only - Apr 30 2:00 1:00 D
-Rule Mont 1924 only - May 17 2:00 1:00 D
-Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
-Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
-# The 1927-to-1937 rules can be expressed more simply as
-# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
-# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
-# The rules below avoid use of 24:00
-# (which pre-1998 versions of zic cannot handle).
-Rule Mont 1927 only - May 1 0:00 1:00 D
-Rule Mont 1927 1932 - Sep lastSun 0:00 0 S
-Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D
-Rule Mont 1932 only - May 1 0:00 1:00 D
-Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D
-Rule Mont 1933 only - Oct 1 0:00 0 S
-Rule Mont 1934 1939 - Sep lastSun 0:00 0 S
-Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
-Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
-Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
-Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
-Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Blanc-Sablon -3:48:28 - LMT 1884
- -4:00 Canada A%sT 1970
- -4:00 - AST
-Zone America/Montreal -4:54:16 - LMT 1884
- -5:00 Mont E%sT 1918
- -5:00 Canada E%sT 1919
- -5:00 Mont E%sT 1942 Feb 9 2:00s
- -5:00 Canada E%sT 1946
- -5:00 Mont E%sT 1974
- -5:00 Canada E%sT
-
-
-# Ontario
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Ontario has been like
-# Toronto.
-# Thunder Bay skipped DST in 1973.
-# Many smaller locales did not observe peacetime DST until 1974;
-# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
-# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
-
-# From Mark Brader (2003-07-26):
-# [According to the Toronto Star] Orillia, Ontario, adopted DST
-# effective Saturday, 1912-06-22, 22:00; the article mentions that
-# Port Arthur (now part of Thunder Bay, Ontario) as well as Moose Jaw
-# have already done so. In Orillia DST was to run until Saturday,
-# 1912-08-31 (no time mentioned), but it was met with considerable
-# hostility from certain segments of the public, and was revoked after
-# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
-# presumably that should be -07-06. (1912-06-19, -07-12; also letters
-# earlier in June).
-#
-# Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
-
-# From Paul Eggert (1997-10-17):
-# Mark Brader writes that an article in the 1997-10-14 Toronto Star
-# says that Atikokan, Ontario currently does not observe DST,
-# but will vote on 11-10 whether to use EST/EDT.
-# He also writes that the
-#
-# Ontario Time Act (1990, Chapter T.9)
-#
-# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
-# Officially Atikokan is therefore on CST/CDT, and most likely this report
-# concerns a non-official time observed as a matter of local practice.
-#
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Atikokan, Pickle Lake, and
-# New Osnaburgh observe CST all year, that Big Trout Lake observes
-# CST/CDT, and that Upsala and Shebandowan observe EST/EDT, all in
-# violation of the official Ontario rules.
-#
-# From Paul Eggert (2006-07-09):
-# Chris Walton (2006-07-06) mentioned an article by Stephanie MacLellan in the
-# 2005-07-21 Chronicle-Journal, which said:
-#
-# The clocks in Atikokan stay set on standard time year-round.
-# This means they spend about half the time on central time and
-# the other half on eastern time.
-#
-# For the most part, the system works, Mayor Dennis Brown said.
-#
-# "The majority of businesses in Atikokan deal more with Eastern
-# Canada, but there are some that deal with Western Canada," he
-# said. "I don't see any changes happening here."
-#
-# Walton also writes "Supposedly Pickle Lake and Mishkeegogamang
-# [New Osnaburgh] follow the same practice."
-
-# From Garry McKinnon (2006-07-14) via Chris Walton:
-# I chatted with a member of my board who has an outstanding memory
-# and a long history in Atikokan (and in the telecom industry) and he
-# can say for certain that Atikokan has been practicing the current
-# time keeping since 1952, at least.
-
-# From Paul Eggert (2006-07-17):
-# Shanks & Pottenger say that Atikokan has agreed with Rainy River
-# ever since standard time was introduced, but the information from
-# McKinnon sounds more authoritative. For now, assume that Atikokan
-# switched to EST immediately after WWII era daylight saving time
-# ended. This matches the old (less-populous) America/Coral_Harbour
-# entry since our cutoff date of 1970, so we can move
-# America/Coral_Harbour to the 'backward' file.
-
-# From Mark Brader (2010-03-06):
-#
-# Currently the database has:
-#
-# # Ontario
-#
-# # From Paul Eggert (2006-07-09):
-# # Shanks & Pottenger write that since 1970 most of Ontario has been like
-# # Toronto.
-# # Thunder Bay skipped DST in 1973.
-# # Many smaller locales did not observe peacetime DST until 1974;
-# # Nipigon (EST) and Rainy River (CST) are the largest that we know of.
-#
-# In the (Toronto) Globe and Mail for Saturday, 1955-09-24, in the bottom
-# right corner of page 1, it says that Toronto will return to standard
-# time at 2 am Sunday morning (which agrees with the database), and that:
-#
-# The one-hour setback will go into effect throughout most of Ontario,
-# except in areas like Windsor which remains on standard time all year.
-#
-# Windsor is, of course, a lot larger than Nipigon.
-#
-# I only came across this incidentally. I don't know if Windsor began
-# observing DST when Detroit did, or in 1974, or on some other date.
-#
-# By the way, the article continues by noting that:
-#
-# Some cities in the United States have pushed the deadline back
-# three weeks and will change over from daylight saving in October.
-
-# From Arthur David Olson (2010-07-17):
-#
-# "Standard Time and Time Zones in Canada" appeared in
-# The Journal of The Royal Astronomical Society of Canada,
-# volume 26, number 2 (February 1932) and, as of 2010-07-17,
-# was available at
-#
-# http://adsabs.harvard.edu/full/1932JRASC..26...49S
-#
-#
-# It includes the text below (starting on page 57):
-#
-# A list of the places in Canada using daylight saving time would
-# require yearly revision. From information kindly furnished by
-# the provincial governments and by the postmasters in many cities
-# and towns, it is found that the following places used daylight sav-
-# ing in 1930. The information for the province of Quebec is definite,
-# for the other provinces only approximate:
-#
-# Province Daylight saving time used
-# Prince Edward Island Not used.
-# Nova Scotia In Halifax only.
-# New Brunswick In St. John only.
-# Quebec In the following places:
-# Montreal Lachine
-# Quebec Mont-Royal
-# Levis Iberville
-# St. Lambert Cap de la Madeleine
-# Verdun Loretteville
-# Westmount Richmond
-# Outremont St. Jerome
-# Longueuil Greenfield Park
-# Arvida Waterloo
-# Chambly-Canton Beaulieu
-# Melbourne La Tuque
-# St. Theophile Buckingham
-# Ontario Used generally in the cities and towns along
-# the southerly part of the province. Not
-# used in the northwesterlhy part.
-# Manitoba Not used.
-# Saskatchewan In Regina only.
-# Alberta Not used.
-# British Columbia Not used.
-#
-# With some exceptions, the use of daylight saving may be said to be limited
-# to those cities and towns lying between Quebec city and Windsor, Ont.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Toronto 1919 only - Mar 30 23:30 1:00 D
-Rule Toronto 1919 only - Oct 26 0:00 0 S
-Rule Toronto 1920 only - May 2 2:00 1:00 D
-Rule Toronto 1920 only - Sep 26 0:00 0 S
-Rule Toronto 1921 only - May 15 2:00 1:00 D
-Rule Toronto 1921 only - Sep 15 2:00 0 S
-Rule Toronto 1922 1923 - May Sun>=8 2:00 1:00 D
-# Shanks & Pottenger say 1923-09-19; assume it's a typo and that "-16"
-# was meant.
-Rule Toronto 1922 1926 - Sep Sun>=15 2:00 0 S
-Rule Toronto 1924 1927 - May Sun>=1 2:00 1:00 D
-# The 1927-to-1939 rules can be expressed more simply as
-# Rule Toronto 1927 1937 - Sep Sun>=25 2:00 0 S
-# Rule Toronto 1928 1937 - Apr Sun>=25 2:00 1:00 D
-# Rule Toronto 1938 1940 - Apr lastSun 2:00 1:00 D
-# Rule Toronto 1938 1939 - Sep lastSun 2:00 0 S
-# The rules below avoid use of Sun>=25
-# (which pre-2004 versions of zic cannot handle).
-Rule Toronto 1927 1932 - Sep lastSun 2:00 0 S
-Rule Toronto 1928 1931 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1932 only - May 1 2:00 1:00 D
-Rule Toronto 1933 1940 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1933 only - Oct 1 2:00 0 S
-Rule Toronto 1934 1939 - Sep lastSun 2:00 0 S
-Rule Toronto 1945 1946 - Sep lastSun 2:00 0 S
-Rule Toronto 1946 only - Apr lastSun 2:00 1:00 D
-Rule Toronto 1947 1949 - Apr lastSun 0:00 1:00 D
-Rule Toronto 1947 1948 - Sep lastSun 0:00 0 S
-Rule Toronto 1949 only - Nov lastSun 0:00 0 S
-Rule Toronto 1950 1973 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1950 only - Nov lastSun 2:00 0 S
-Rule Toronto 1951 1956 - Sep lastSun 2:00 0 S
-# Shanks & Pottenger say Toronto ended DST a week early in 1971,
-# namely on 1971-10-24, but Mark Brader wrote (2003-05-31) that this
-# is wrong, and that he had confirmed it by checking the 1971-10-30
-# Toronto Star, which said that DST was ending 1971-10-31 as usual.
-Rule Toronto 1957 1973 - Oct lastSun 2:00 0 S
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) writes (p. 17) "In the Cities of Fort William, and
-# Port Arthur, Ontario, the principle of the Bill has been in
-# operation for the past three years, and in the City of Moose Jaw,
-# Saskatchewan, for one year."
-
-# From David Bryan via Tory Tronrud, Director/Curator,
-# Thunder Bay Museum (2003-11-12):
-# There is some suggestion, however, that, by-law or not, daylight
-# savings time was being practiced in Fort William and Port Arthur
-# before 1909.... [I]n 1910, the line between the Eastern and Central
-# Time Zones was permanently moved about two hundred miles west to
-# include the Thunder Bay area.... When Canada adopted daylight
-# savings time in 1916, Fort William and Port Arthur, having done so
-# already, did not change their clocks.... During the Second World
-# War,... [t]he cities agreed to implement DST during the summer
-# months for the remainder of the war years.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Toronto -5:17:32 - LMT 1895
- -5:00 Canada E%sT 1919
- -5:00 Toronto E%sT 1942 Feb 9 2:00s
- -5:00 Canada E%sT 1946
- -5:00 Toronto E%sT 1974
- -5:00 Canada E%sT
-Zone America/Thunder_Bay -5:57:00 - LMT 1895
- -6:00 - CST 1910
- -5:00 - EST 1942
- -5:00 Canada E%sT 1970
- -5:00 Mont E%sT 1973
- -5:00 - EST 1974
- -5:00 Canada E%sT
-Zone America/Nipigon -5:53:04 - LMT 1895
- -5:00 Canada E%sT 1940 Sep 29
- -5:00 1:00 EDT 1942 Feb 9 2:00s
- -5:00 Canada E%sT
-Zone America/Rainy_River -6:18:16 - LMT 1895
- -6:00 Canada C%sT 1940 Sep 29
- -6:00 1:00 CDT 1942 Feb 9 2:00s
- -6:00 Canada C%sT
-Zone America/Atikokan -6:06:28 - LMT 1895
- -6:00 Canada C%sT 1940 Sep 29
- -6:00 1:00 CDT 1942 Feb 9 2:00s
- -6:00 Canada C%sT 1945 Sep 30 2:00
- -5:00 - EST
-
-
-# Manitoba
-
-# From Rob Douglas (2006-04-06):
-# the old Manitoba Time Act - as amended by Bill 2, assented to
-# March 27, 1987 ... said ...
-# "between two o'clock Central Standard Time in the morning of
-# the first Sunday of April of each year and two o'clock Central
-# Standard Time in the morning of the last Sunday of October next
-# following, one hour in advance of Central Standard Time."...
-# I believe that the English legislation [of the old time act] had =
-# been assented to (March 22, 1967)....
-# Also, as far as I can tell, there was no order-in-council varying
-# the time of Daylight Saving Time for 2005 and so the provisions of
-# the 1987 version would apply - the changeover was at 2:00 Central
-# Standard Time (i.e. not until 3:00 Central Daylight Time).
-
-# From Paul Eggert (2006-04-10):
-# Shanks & Pottenger say Manitoba switched at 02:00 (not 02:00s)
-# starting 1966. Since 02:00s is clearly correct for 1967 on, assume
-# it was also 02:00s in 1966.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Winn 1916 only - Apr 23 0:00 1:00 D
-Rule Winn 1916 only - Sep 17 0:00 0 S
-Rule Winn 1918 only - Apr 14 2:00 1:00 D
-Rule Winn 1918 only - Oct 27 2:00 0 S
-Rule Winn 1937 only - May 16 2:00 1:00 D
-Rule Winn 1937 only - Sep 26 2:00 0 S
-Rule Winn 1942 only - Feb 9 2:00 1:00 W # War
-Rule Winn 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Winn 1945 only - Sep lastSun 2:00 0 S
-Rule Winn 1946 only - May 12 2:00 1:00 D
-Rule Winn 1946 only - Oct 13 2:00 0 S
-Rule Winn 1947 1949 - Apr lastSun 2:00 1:00 D
-Rule Winn 1947 1949 - Sep lastSun 2:00 0 S
-Rule Winn 1950 only - May 1 2:00 1:00 D
-Rule Winn 1950 only - Sep 30 2:00 0 S
-Rule Winn 1951 1960 - Apr lastSun 2:00 1:00 D
-Rule Winn 1951 1958 - Sep lastSun 2:00 0 S
-Rule Winn 1959 only - Oct lastSun 2:00 0 S
-Rule Winn 1960 only - Sep lastSun 2:00 0 S
-Rule Winn 1963 only - Apr lastSun 2:00 1:00 D
-Rule Winn 1963 only - Sep 22 2:00 0 S
-Rule Winn 1966 1986 - Apr lastSun 2:00s 1:00 D
-Rule Winn 1966 2005 - Oct lastSun 2:00s 0 S
-Rule Winn 1987 2005 - Apr Sun>=1 2:00s 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Winnipeg -6:28:36 - LMT 1887 Jul 16
- -6:00 Winn C%sT 2006
- -6:00 Canada C%sT
-
-
-# Saskatchewan
-
-# From Mark Brader (2003-07-26):
-# The first actual adoption of DST in Canada was at the municipal
-# level. As the [Toronto] Star put it (1912-06-07), "While people
-# elsewhere have long been talking of legislation to save daylight,
-# the city of Moose Jaw [Saskatchewan] has acted on its own hook."
-# DST in Moose Jaw began on Saturday, 1912-06-01 (no time mentioned:
-# presumably late evening, as below), and would run until "the end of
-# the summer". The discrepancy between municipal time and railroad
-# time was noted.
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) notes that DST "has been in operation ... in the
-# City of Moose Jaw, Saskatchewan, for one year."
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
-# Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
-# Other western towns (e.g. Lloydminster) are like Edmonton.
-# Matthews and Vincent (1998) write that Denare Beach and Creighton
-# are like Winnipeg, in violation of Saskatchewan law.
-
-# From W. Jones (1992-11-06):
-# The. . .below is based on information I got from our law library, the
-# provincial archives, and the provincial Community Services department.
-# A precise history would require digging through newspaper archives, and
-# since you didn't say what you wanted, I didn't bother.
-#
-# Saskatchewan is split by a time zone meridian (105W) and over the years
-# the boundary became pretty ragged as communities near it reevaluated
-# their affiliations in one direction or the other. In 1965 a provincial
-# referendum favoured legislating common time practices.
-#
-# On 15 April 1966 the Time Act (c. T-14, Revised Statutes of
-# Saskatchewan 1978) was proclaimed, and established that the eastern
-# part of Saskatchewan would use CST year round, that districts in
-# northwest Saskatchewan would by default follow CST but could opt to
-# follow Mountain Time rules (thus 1 hour difference in the winter and
-# zero in the summer), and that districts in southwest Saskatchewan would
-# by default follow MT but could opt to follow CST.
-#
-# It took a few years for the dust to settle (I know one story of a town
-# on one time zone having its school in another, such that a mom had to
-# serve her family lunch in two shifts), but presently it seems that only
-# a few towns on the border with Alberta (e.g. Lloydminster) follow MT
-# rules any more; all other districts appear to have used CST year round
-# since sometime in the 1960s.
-
-# From Chris Walton (2006-06-26):
-# The Saskatchewan time act which was last updated in 1996 is about 30 pages
-# long and rather painful to read.
-# http://www.qp.gov.sk.ca/documents/English/Statutes/Statutes/T14.pdf
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Regina 1918 only - Apr 14 2:00 1:00 D
-Rule Regina 1918 only - Oct 27 2:00 0 S
-Rule Regina 1930 1934 - May Sun>=1 0:00 1:00 D
-Rule Regina 1930 1934 - Oct Sun>=1 0:00 0 S
-Rule Regina 1937 1941 - Apr Sun>=8 0:00 1:00 D
-Rule Regina 1937 only - Oct Sun>=8 0:00 0 S
-Rule Regina 1938 only - Oct Sun>=1 0:00 0 S
-Rule Regina 1939 1941 - Oct Sun>=8 0:00 0 S
-Rule Regina 1942 only - Feb 9 2:00 1:00 W # War
-Rule Regina 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Regina 1945 only - Sep lastSun 2:00 0 S
-Rule Regina 1946 only - Apr Sun>=8 2:00 1:00 D
-Rule Regina 1946 only - Oct Sun>=8 2:00 0 S
-Rule Regina 1947 1957 - Apr lastSun 2:00 1:00 D
-Rule Regina 1947 1957 - Sep lastSun 2:00 0 S
-Rule Regina 1959 only - Apr lastSun 2:00 1:00 D
-Rule Regina 1959 only - Oct lastSun 2:00 0 S
-#
-Rule Swift 1957 only - Apr lastSun 2:00 1:00 D
-Rule Swift 1957 only - Oct lastSun 2:00 0 S
-Rule Swift 1959 1961 - Apr lastSun 2:00 1:00 D
-Rule Swift 1959 only - Oct lastSun 2:00 0 S
-Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Regina -6:58:36 - LMT 1905 Sep
- -7:00 Regina M%sT 1960 Apr lastSun 2:00
- -6:00 - CST
-Zone America/Swift_Current -7:11:20 - LMT 1905 Sep
- -7:00 Canada M%sT 1946 Apr lastSun 2:00
- -7:00 Regina M%sT 1950
- -7:00 Swift M%sT 1972 Apr lastSun 2:00
- -6:00 - CST
-
-
-# Alberta
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Edm 1918 1919 - Apr Sun>=8 2:00 1:00 D
-Rule Edm 1918 only - Oct 27 2:00 0 S
-Rule Edm 1919 only - May 27 2:00 0 S
-Rule Edm 1920 1923 - Apr lastSun 2:00 1:00 D
-Rule Edm 1920 only - Oct lastSun 2:00 0 S
-Rule Edm 1921 1923 - Sep lastSun 2:00 0 S
-Rule Edm 1942 only - Feb 9 2:00 1:00 W # War
-Rule Edm 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Edm 1945 only - Sep lastSun 2:00 0 S
-Rule Edm 1947 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1947 only - Sep lastSun 2:00 0 S
-Rule Edm 1967 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1967 only - Oct lastSun 2:00 0 S
-Rule Edm 1969 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1969 only - Oct lastSun 2:00 0 S
-Rule Edm 1972 1986 - Apr lastSun 2:00 1:00 D
-Rule Edm 1972 2006 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Edmonton -7:33:52 - LMT 1906 Sep
- -7:00 Edm M%sT 1987
- -7:00 Canada M%sT
-
-
-# British Columbia
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has
-# been like Vancouver.
-# Dawson Creek uses MST. Much of east BC is like Edmonton.
-# Matthews and Vincent (1998) write that Creston is like Dawson Creek.
-
-# It seems though that (re: Creston) is not entirely correct:
-
-# From Chris Walton (2011-12-01):
-# There are two areas within the Canadian province of British Columbia
-# that do not currently observe daylight saving:
-# a) The Creston Valley (includes the town of Creston and surrounding area)
-# b) The eastern half of the Peace River Regional District
-# (includes the cities of Dawson Creek and Fort St. John)
-
-# Earlier this year I stumbled across a detailed article about the time
-# keeping history of Creston; it was written by Tammy Hardwick who is the
-# manager of the Creston & District Museum. The article was written in May 2009.
-#
-# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
-#
-# According to the article, Creston has not changed its clocks since June 1918.
-# i.e. Creston has been stuck on UTC-7 for 93 years.
-# Dawson Creek, on the other hand, changed its clocks as recently as April 1972.
-
-# Unfortunately the exact date for the time change in June 1918 remains
-# unknown and will be difficult to ascertain. I e-mailed Tammy a few months
-# ago to ask if Sunday June 2 was a reasonable guess. She said it was just
-# as plausible as any other date (in June). She also said that after writing the
-# article she had discovered another time change in 1916; this is the subject
-# of another article which she wrote in October 2010.
-#
-# http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56
-#
-
-# Here is a summary of the three clock change events in Creston's history:
-# 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7)
-# Exact date unknown
-# 2. Oct 1916: switch to Pacific Standard Time (GMT-8)
-# Exact date in October unknown; Sunday October 1 is a reasonable guess.
-# 3. June 1918: switch to Pacific Daylight Time (GMT-7)
-# Exact date in June unknown; Sunday June 2 is a reasonable guess.
-# note#1:
-# On Oct 27/1918 when daylight saving ended in the rest of Canada,
-# Creston did not change its clocks.
-# note#2:
-# During WWII when the Federal Government legislated a mandatory clock change,
-# Creston did not oblige.
-# note#3:
-# There is no guarantee that Creston will remain on Mountain Standard Time
-# (UTC-7) forever.
-# The subject was debated at least once this year by the town Council.
-#
-# http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html
-#
-
-# During a period WWII, summer time (Daylight saying) was mandatory in Canada.
-# In Creston, that was handled by shifting the area to PST (-8:00) then applying
-# summer time to cause the offset to be -7:00, the same as it had been before
-# the change. It can be argued that the timezone abbreviation during this
-# period should be PDT rather than MST, but that doesn't seem important enough
-# (to anyone) to further complicate the rules.
-
-# The transition dates (and times) are guesses.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Vanc 1918 only - Apr 14 2:00 1:00 D
-Rule Vanc 1918 only - Oct 27 2:00 0 S
-Rule Vanc 1942 only - Feb 9 2:00 1:00 W # War
-Rule Vanc 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Vanc 1945 only - Sep 30 2:00 0 S
-Rule Vanc 1946 1986 - Apr lastSun 2:00 1:00 D
-Rule Vanc 1946 only - Oct 13 2:00 0 S
-Rule Vanc 1947 1961 - Sep lastSun 2:00 0 S
-Rule Vanc 1962 2006 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Vancouver -8:12:28 - LMT 1884
- -8:00 Vanc P%sT 1987
- -8:00 Canada P%sT
-Zone America/Dawson_Creek -8:00:56 - LMT 1884
- -8:00 Canada P%sT 1947
- -8:00 Vanc P%sT 1972 Aug 30 2:00
- -7:00 - MST
-Zone America/Creston -7:46:04 - LMT 1884
- -7:00 - MST 1916 Oct 1
- -8:00 - PST 1918 Jun 2
- -7:00 - MST
-
-# Northwest Territories, Nunavut, Yukon
-
-# From Paul Eggert (2006-03-22):
-# Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
-# Mathew Englander (1996-10-07) gives the following refs:
-# * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
-# c. 7 defines Yukon standard time as UTC-9. This is still valid;
-# see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
-# * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
-# * O.I.C. 1980/02 established DST.
-# * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
-# with Englander.
-# From Chris Walton (2006-06-26):
-# Here is a link to the old daylight saving portion of the interpretation
-# act which was last updated in 1987:
-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
-
-# From Rives McDow (1999-09-04):
-# Nunavut ... moved ... to incorporate the whole territory into one time zone.
-#
-# Nunavut moves to single time zone Oct. 31
-#
-#
-# From Antoine Leca (1999-09-06):
-# We then need to create a new timezone for the Kitikmeot region of Nunavut
-# to differentiate it from the Yellowknife region.
-
-# From Paul Eggert (1999-09-20):
-#
-# Basic Facts: The New Territory
-# (1999) reports that Pangnirtung operates on eastern time,
-# and that Coral Harbour does not observe DST. We don't know when
-# Pangnirtung switched to eastern time; we'll guess 1995.
-
-# From Rives McDow (1999-11-08):
-# On October 31, when the rest of Nunavut went to Central time,
-# Pangnirtung wobbled. Here is the result of their wobble:
-#
-# The following businesses and organizations in Pangnirtung use Central Time:
-#
-# First Air, Power Corp, Nunavut Construction, Health Center, RCMP,
-# Eastern Arctic National Parks, A & D Specialist
-#
-# The following businesses and organizations in Pangnirtung use Eastern Time:
-#
-# Hamlet office, All other businesses, Both schools, Airport operator
-#
-# This has made for an interesting situation there, which warranted the news.
-# No one there that I spoke with seems concerned, or has plans to
-# change the local methods of keeping time, as it evidently does not
-# really interfere with any activities or make things difficult locally.
-# They plan to celebrate New Year's turn-over twice, one hour apart,
-# so it appears that the situation will last at least that long.
-# The Nunavut Intergovernmental Affairs hopes that they will "come to
-# their senses", but the locals evidently don't see any problem with
-# the current state of affairs.
-
-# From Michaela Rodrigue, writing in the
-#
-# Nunatsiaq News (1999-11-19) :
-# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
-# central - or Nunavut time - for government offices, and eastern time
-# for municipal offices and schools.... Igloolik [was similar but then]
-# made the switch to central time on Saturday, Nov. 6.
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) say the following, but we lack histories
-# for these potential new Zones.
-#
-# The Canadian Forces station at Alert uses Eastern Time while the
-# handful of residents at the Eureka weather station [in the Central
-# zone] skip daylight savings. Baffin Island, which is crossed by the
-# Central, Eastern and Atlantic Time zones only uses Eastern Time.
-# Gjoa Haven, Taloyoak and Pelly Bay all use Mountain instead of
-# Central Time and Southampton Island [in the Central zone] is not
-# required to use daylight savings.
-
-# From
-#
-# Nunavut now has two time zones
-# (2000-11-10):
-# The Nunavut government would allow its employees in Kugluktuk and
-# Cambridge Bay to operate on central time year-round, putting them
-# one hour behind the rest of Nunavut for six months during the winter.
-# At the end of October the two communities had rebelled against
-# Nunavut's unified time zone, refusing to shift to eastern time with
-# the rest of the territory for the winter. Cambridge Bay remained on
-# central time, while Kugluktuk, even farther west, reverted to
-# mountain time, which they had used before the advent of Nunavut's
-# unified time zone in 1999.
-#
-# From Rives McDow (2001-01-20), quoting the Nunavut government:
-# The preceding decision came into effect at midnight, Saturday Nov 4, 2000.
-
-# From Paul Eggert (2000-12-04):
-# Let's just keep track of the official times for now.
-
-# From Rives McDow (2001-03-07):
-# The premier of Nunavut has issued a ministerial statement advising
-# that effective 2001-04-01, the territory of Nunavut will revert
-# back to three time zones (mountain, central, and eastern). Of the
-# cities in Nunavut, Coral Harbor is the only one that I know of that
-# has said it will not observe dst, staying on EST year round. I'm
-# checking for more info, and will get back to you if I come up with
-# more.
-# [Also see (2001-03-09).]
-
-# From Gwillim Law (2005-05-21):
-# According to maps at
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
-# (both dated 2003), and
-# http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
-# (from a 1998 Canadian Geographic article), the de facto and de jure time
-# for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
-# round. Using Google, it's easy to find other websites that confirm this.
-# I wasn't able to find how far back this time regimen goes, but since it
-# predates the creation of Nunavut, it probably goes back many years....
-# The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
-#
-# From Paul Eggert (2005-07-26):
-# For lack of better information, assume that Southampton Island observed
-# daylight saving only during wartime.
-
-# From Chris Walton (2007-03-01):
-# ... the community of Resolute (located on Cornwallis Island in
-# Nunavut) moved from Central Time to Eastern Time last November.
-# Basically the community did not change its clocks at the end of
-# daylight saving....
-# http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
-
-# From Chris Walton (2011-03-21):
-# Back in 2007 I initiated the creation of a new "zone file" for Resolute
-# Bay. Resolute Bay is a small community located about 900km north of
-# the Arctic Circle. The zone file was required because Resolute Bay had
-# decided to use UTC-5 instead of UTC-6 for the winter of 2006-2007.
-#
-# According to new information which I received last week, Resolute Bay
-# went back to using UTC-6 in the winter of 2007-2008...
-#
-# On March 11/2007 most of Canada went onto daylight saving. On March
-# 14/2007 I phoned the Resolute Bay hamlet office to do a "time check." I
-# talked to somebody that was both knowledgeable and helpful. I was able
-# to confirm that Resolute Bay was still operating on UTC-5. It was
-# explained to me that Resolute Bay had been on the Eastern Time zone
-# (EST) in the winter, and was now back on the Central Time zone (CDT).
-# i.e. the time zone had changed twice in the last year but the clocks
-# had not moved. The residents had to know which time zone they were in
-# so they could follow the correct TV schedule...
-#
-# On Nov 02/2008 most of Canada went onto standard time. On Nov 03/2008 I
-# phoned the Resolute Bay hamlet office...[D]ue to the challenging nature
-# of the phone call, I decided to seek out an alternate source of
-# information. I found an e-mail address for somebody by the name of
-# Stephanie Adams whose job was listed as "Inns North Support Officer for
-# Arctic Co-operatives." I was under the impression that Stephanie lived
-# and worked in Resolute Bay...
-#
-# On March 14/2011 I phoned the hamlet office again. I was told that
-# Resolute Bay had been using Central Standard Time over the winter of
-# 2010-2011 and that the clocks had therefore been moved one hour ahead
-# on March 13/2011. The person I talked to was aware that Resolute Bay
-# had previously experimented with Eastern Standard Time but he could not
-# tell me when the practice had stopped.
-#
-# On March 17/2011 I searched the Web to find an e-mail address of
-# somebody that might be able to tell me exactly when Resolute Bay went
-# off Eastern Standard Time. I stumbled on the name "Aziz Kheraj." Aziz
-# used to be the mayor of Resolute Bay and he apparently owns half the
-# businesses including "South Camp Inn." This website has some info on
-# Aziz:
-#
-# http://www.uphere.ca/node/493
-#
-#
-# I sent Aziz an e-mail asking when Resolute Bay had stopped using
-# Eastern Standard Time.
-#
-# Aziz responded quickly with this: "hi, The time was not changed for the
-# 1 year only, the following year, the community went back to the old way
-# of "spring ahead-fall behind" currently we are zulu plus 5 hrs and in
-# the winter Zulu plus 6 hrs"
-#
-# This of course conflicted with everything I had ascertained in November 2008.
-#
-# I sent Aziz a copy of my 2008 e-mail exchange with Stephanie. Aziz
-# responded with this: "Hi, Stephanie lives in Winnipeg. I live here, You
-# may want to check with the weather office in Resolute Bay or do a
-# search on the weather through Env. Canada. web site"
-#
-# If I had realized the Stephanie did not live in Resolute Bay I would
-# never have contacted her. I now believe that all the information I
-# obtained in November 2008 should be ignored...
-# I apologize for reporting incorrect information in 2008.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NT_YK 1918 only - Apr 14 2:00 1:00 D
-Rule NT_YK 1918 only - Oct 27 2:00 0 S
-Rule NT_YK 1919 only - May 25 2:00 1:00 D
-Rule NT_YK 1919 only - Nov 1 0:00 0 S
-Rule NT_YK 1942 only - Feb 9 2:00 1:00 W # War
-Rule NT_YK 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule NT_YK 1945 only - Sep 30 2:00 0 S
-Rule NT_YK 1965 only - Apr lastSun 0:00 2:00 DD
-Rule NT_YK 1965 only - Oct lastSun 2:00 0 S
-Rule NT_YK 1980 1986 - Apr lastSun 2:00 1:00 D
-Rule NT_YK 1980 2006 - Oct lastSun 2:00 0 S
-Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# aka Panniqtuuq
-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
- -5:00 Canada E%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 Canada E%sT
-# formerly Frobisher Bay
-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
- -5:00 NT_YK E%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 Canada E%sT
-# aka Qausuittuq
-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
- -6:00 NT_YK C%sT 2000 Oct 29 2:00
- -5:00 - EST 2001 Apr 1 3:00
- -6:00 Canada C%sT 2006 Oct 29 2:00
- -5:00 - EST 2007 Mar 11 3:00
- -6:00 Canada C%sT
-# aka Kangiqiniq
-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
- -6:00 NT_YK C%sT 2000 Oct 29 2:00
- -5:00 - EST 2001 Apr 1 3:00
- -6:00 Canada C%sT
-# aka Iqaluktuuttiaq
-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
- -7:00 NT_YK M%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 - EST 2000 Nov 5 0:00
- -6:00 - CST 2001 Apr 1 3:00
- -7:00 Canada M%sT
-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
- -7:00 NT_YK M%sT 1980
- -7:00 Canada M%sT
-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
- -7:00 NT_YK M%sT 1980
- -7:00 Canada M%sT
-Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
- -9:00 NT_YK Y%sT 1966 Jul 1 2:00
- -8:00 NT_YK P%sT 1980
- -8:00 Canada P%sT
-Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
- -9:00 NT_YK Y%sT 1973 Oct 28 0:00
- -8:00 NT_YK P%sT 1980
- -8:00 Canada P%sT
-
-
-###############################################################################
-
-# Mexico
-
-# From Paul Eggert (2001-03-05):
-# The Investigation and Analysis Service of the
-# Mexican Library of Congress (MLoC) has published a
-#
-# history of Mexican local time (in Spanish)
-# .
-#
-# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
-# (In all cases we go with the MLoC.)
-# S&P report that Baja was at -8:00 in 1922/1923.
-# S&P say the 1930 transition in Baja was 1930-11-16.
-# S&P report no DST during summer 1931.
-# S&P report a transition at 1932-03-30 23:00, not 1932-04-01.
-
-# From Gwillim Law (2001-02-20):
-# There are some other discrepancies between the Decrees page and the
-# tz database. I think they can best be explained by supposing that
-# the researchers who prepared the Decrees page failed to find some of
-# the relevant documents.
-
-# From Alan Perry (1996-02-15):
-# A guy from our Mexico subsidiary finally found the Presidential Decree
-# outlining the timezone changes in Mexico.
-#
-# ------------- Begin Forwarded Message -------------
-#
-# I finally got my hands on the Official Presidential Decree that sets up the
-# rules for the DST changes. The rules are:
-#
-# 1. The country is divided in 3 timezones:
-# - Baja California Norte (the Mexico/BajaNorte TZ)
-# - Baja California Sur, Nayarit, Sinaloa and Sonora (the Mexico/BajaSur TZ)
-# - The rest of the country (the Mexico/General TZ)
-#
-# 2. From the first Sunday in April at 2:00 AM to the last Sunday in October
-# at 2:00 AM, the times in each zone are as follows:
-# BajaNorte: GMT+7
-# BajaSur: GMT+6
-# General: GMT+5
-#
-# 3. The rest of the year, the times are as follows:
-# BajaNorte: GMT+8
-# BajaSur: GMT+7
-# General: GMT+6
-#
-# The Decree was published in Mexico's Official Newspaper on January 4th.
-#
-# -------------- End Forwarded Message --------------
-# From Paul Eggert (1996-06-12):
-# For an English translation of the decree, see
-#
-# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
-#
-
-# From Rives McDow (1998-10-08):
-# The State of Quintana Roo has reverted back to central STD and DST times
-# (i.e. UTC -0600 and -0500 as of 1998-08-02).
-
-# From Rives McDow (2000-01-10):
-# Effective April 4, 1999 at 2:00 AM local time, Sonora changed to the time
-# zone 5 hours from the International Date Line, and will not observe daylight
-# savings time so as to stay on the same time zone as the southern part of
-# Arizona year round.
-
-# From Jesper Norgaard, translating
-# (2001-01-17):
-# In Oaxaca, the 55.000 teachers from the Section 22 of the National
-# Syndicate of Education Workers, refuse to apply daylight saving each
-# year, so that the more than 10,000 schools work at normal hour the
-# whole year.
-
-# From Gwillim Law (2001-01-19):
-# ... says
-# (translated):...
-# January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
-# that Summer Time will be reduced from seven to five months, starting
-# this year....
-#
-# [translated], says "summer time will ... take effect on the first Sunday
-# in May, and end on the last Sunday of September.
-
-# From Arthur David Olson (2001-01-25):
-# The 2001-01-24 traditional Washington Post contained the page one
-# story "Timely Issue Divides Mexicans."...
-# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
-# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
-# Mexico City and its 20 million residents on a different time than
-# the rest of the country..." In particular, Lopez Obrador would abolish
-# observation of Daylight Saving Time.
-
-#
-# Official statute published by the Energy Department
-# (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
-# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03).
-
-# From Paul Eggert (2001-03-03):
-#
-#
-# James F. Smith writes in today's LA Times
-#
-# * Sonora will continue to observe standard time.
-# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
-# the Federal District will not adopt DST.
-# * 4 of 16 district leaders announced they'll ignore the decree.
-# * The decree does not affect federal-controlled facilities including
-# the airport, banks, hospitals, and schools.
-#
-# For now we'll assume that the Federal District will bow to federal rules.
-
-# From Jesper Norgaard (2001-04-01):
-# I found some references to the Mexican application of daylight
-# saving, which modifies what I had already sent you, stating earlier
-# that a number of northern Mexican states would go on daylight
-# saving. The modification reverts this to only cover Baja California
-# (Norte), while all other states (except Sonora, who has no daylight
-# saving all year) will follow the original decree of president
-# Vicente Fox, starting daylight saving May 6, 2001 and ending
-# September 30, 2001.
-# References: "Diario de Monterrey"
-# Palabra (2001-03-31)
-
-# From Reuters (2001-09-04):
-# Mexico's Supreme Court on Tuesday declared that daylight savings was
-# unconstitutional in Mexico City, creating the possibility the
-# capital will be in a different time zone from the rest of the nation
-# next year.... The Supreme Court's ruling takes effect at 2:00
-# a.m. (0800 GMT) on Sept. 30, when Mexico is scheduled to revert to
-# standard time. "This is so residents of the Federal District are not
-# subject to unexpected time changes," a statement from the court said.
-
-# From Jesper Norgaard Welen (2002-03-12):
-# ... consulting my local grocery store(!) and my coworkers, they all insisted
-# that a new decision had been made to reinstate US style DST in Mexico....
-# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
-# confirms this. Sonora as usual is the only state where DST is not applied.
-
-# From Steffen Thorsen (2009-12-28):
-#
-# Steffen Thorsen wrote:
-# > Mexico's House of Representatives has approved a proposal for northern
-# > Mexico's border cities to share the same daylight saving schedule as
-# > the United States.
-# Now this has passed both the Congress and the Senate, so starting from
-# 2010, some border regions will be the same:
-#
-# http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/
-#
-#
-# http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939
-#
-# (Spanish)
-#
-# Could not find the new law text, but the proposed law text changes are here:
-#
-# http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf
-#
-# (Gaceta Parlamentaria)
-#
-# There is also a list of the votes here:
-#
-# http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
-#
-#
-# Our page:
-#
-# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
-#
-
-# From Arthur David Olson (2010-01-20):
-# The page
-#
-# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
-#
-# includes this text:
-# En los municipios fronterizos de Tijuana y Mexicali en Baja California;
-# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila;
-# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en
-# Tamaulipas, la aplicación de este horario estacional surtirá efecto
-# desde las dos horas del segundo domingo de marzo y concluirá a las dos
-# horas del primer domingo de noviembre.
-# En los municipios fronterizos que se encuentren ubicados en la franja
-# fronteriza norte en el territorio comprendido entre la línea
-# internacional y la línea paralela ubicada a una distancia de veinte
-# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el
-# interior del país, la aplicación de este horario estacional surtirá
-# efecto desde las dos horas del segundo domingo de marzo y concluirá a
-# las dos horas del primer domingo de noviembre.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mexico 1939 only - Feb 5 0:00 1:00 D
-Rule Mexico 1939 only - Jun 25 0:00 0 S
-Rule Mexico 1940 only - Dec 9 0:00 1:00 D
-Rule Mexico 1941 only - Apr 1 0:00 0 S
-Rule Mexico 1943 only - Dec 16 0:00 1:00 W # War
-Rule Mexico 1944 only - May 1 0:00 0 S
-Rule Mexico 1950 only - Feb 12 0:00 1:00 D
-Rule Mexico 1950 only - Jul 30 0:00 0 S
-Rule Mexico 1996 2000 - Apr Sun>=1 2:00 1:00 D
-Rule Mexico 1996 2000 - Oct lastSun 2:00 0 S
-Rule Mexico 2001 only - May Sun>=1 2:00 1:00 D
-Rule Mexico 2001 only - Sep lastSun 2:00 0 S
-Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
-Rule Mexico 2002 max - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Quintana Roo
-Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
- -6:00 - CST 1981 Dec 23
- -5:00 Mexico E%sT 1998 Aug 2 2:00
- -6:00 Mexico C%sT
-# Campeche, Yucatan
-Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
- -6:00 - CST 1981 Dec 23
- -5:00 - EST 1982 Dec 2
- -6:00 Mexico C%sT
-# Coahuila, Durango, Nuevo Leon, Tamaulipas (near US border)
-Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
- -6:00 - CST 1988
- -6:00 US C%sT 1989
- -6:00 Mexico C%sT 2010
- -6:00 US C%sT
-# Coahuila, Durango, Nuevo Leon, Tamaulipas (away from US border)
-Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
- -6:00 - CST 1988
- -6:00 US C%sT 1989
- -6:00 Mexico C%sT
-# Central Mexico
-Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 Mexico C%sT 2001 Sep 30 02:00
- -6:00 - CST 2002 Feb 20
- -6:00 Mexico C%sT
-# Chihuahua (near US border)
-Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1996
- -6:00 Mexico C%sT 1998
- -6:00 - CST 1998 Apr Sun>=1 3:00
- -7:00 Mexico M%sT 2010
- -7:00 US M%sT
-# Chihuahua (away from US border)
-Zone America/Chihuahua -7:04:20 - LMT 1921 Dec 31 23:55:40
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1996
- -6:00 Mexico C%sT 1998
- -6:00 - CST 1998 Apr Sun>=1 3:00
- -7:00 Mexico M%sT
-# Sonora
-Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1942 Apr 24
- -7:00 - MST 1949 Jan 14
- -8:00 - PST 1970
- -7:00 Mexico M%sT 1999
- -7:00 - MST
-
-# From Alexander Krivenyshev (2010-04-21):
-# According to news, Bahía de Banderas (Mexican state of Nayarit)
-# changed time zone UTC-7 to new time zone UTC-6 on April 4, 2010 (to
-# share the same time zone as nearby city Puerto Vallarta, Jalisco).
-#
-# (Spanish)
-# Bahía de Banderas homologa su horario al del centro del
-# país, a partir de este domingo
-#
-# http://www.nayarit.gob.mx/notes.asp?id=20748
-#
-#
-# Bahía de Banderas homologa su horario con el del Centro del
-# País
-#
-# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50"
-#
-#
-# (English)
-# Puerto Vallarta and Bahía de Banderas: One Time Zone
-#
-# http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml
-#
-#
-# or
-#
-# http://www.worldtimezone.com/dst_news/dst_news_mexico08.html
-#
-#
-# "Mexico's Senate approved the amendments to the Mexican Schedule System that
-# will allow Bahía de Banderas and Puerto Vallarta to share the same time
-# zone ..."
-# Baja California Sur, Nayarit, Sinaloa
-
-# From Arthur David Olson (2010-05-01):
-# Use "Bahia_Banderas" to keep the name to fourteen characters.
-
-Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1942 Apr 24
- -7:00 - MST 1949 Jan 14
- -8:00 - PST 1970
- -7:00 Mexico M%sT
-
-Zone America/Bahia_Banderas -7:01:00 - LMT 1921 Dec 31 23:59:00
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1942 Apr 24
- -7:00 - MST 1949 Jan 14
- -8:00 - PST 1970
- -7:00 Mexico M%sT 2010 Apr 4 2:00
- -6:00 Mexico C%sT
-
-# Baja California (near US border)
-Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
- -7:00 - MST 1924
- -8:00 - PST 1927 Jun 10 23:00
- -7:00 - MST 1930 Nov 15
- -8:00 - PST 1931 Apr 1
- -8:00 1:00 PDT 1931 Sep 30
- -8:00 - PST 1942 Apr 24
- -8:00 1:00 PWT 1945 Aug 14 23:00u
- -8:00 1:00 PPT 1945 Nov 12 # Peace
- -8:00 - PST 1948 Apr 5
- -8:00 1:00 PDT 1949 Jan 14
- -8:00 - PST 1954
- -8:00 CA P%sT 1961
- -8:00 - PST 1976
- -8:00 US P%sT 1996
- -8:00 Mexico P%sT 2001
- -8:00 US P%sT 2002 Feb 20
- -8:00 Mexico P%sT 2010
- -8:00 US P%sT
-# Baja California (away from US border)
-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
- -7:00 - MST 1924
- -8:00 - PST 1927 Jun 10 23:00
- -7:00 - MST 1930 Nov 15
- -8:00 - PST 1931 Apr 1
- -8:00 1:00 PDT 1931 Sep 30
- -8:00 - PST 1942 Apr 24
- -8:00 1:00 PWT 1945 Aug 14 23:00u
- -8:00 1:00 PPT 1945 Nov 12 # Peace
- -8:00 - PST 1948 Apr 5
- -8:00 1:00 PDT 1949 Jan 14
- -8:00 - PST 1954
- -8:00 CA P%sT 1961
- -8:00 - PST 1976
- -8:00 US P%sT 1996
- -8:00 Mexico P%sT 2001
- -8:00 US P%sT 2002 Feb 20
- -8:00 Mexico P%sT
-# From Paul Eggert (2006-03-22):
-# Formerly there was an America/Ensenada zone, which differed from
-# America/Tijuana only in that it did not observe DST from 1976
-# through 1995. This was as per Shanks (1999). But Shanks & Pottenger say
-# Ensenada did not observe DST from 1948 through 1975. Guy Harris reports
-# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
-# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
-# DST-observance was a town-by-town matter back then. This concerns
-# data after 1970 so most likely there should be at least one Zone
-# other than America/Tijuana for Baja, but it's not clear yet what its
-# name or contents should be.
-#
-# Revillagigedo Is
-# no information
-
-###############################################################################
-
-# Anguilla
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
- -4:00 - AST
-
-# Antigua and Barbuda
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
- -5:00 - EST 1951
- -4:00 - AST
-
-# Bahamas
-#
-# From Sue Williams (2006-12-07):
-# The Bahamas announced about a month ago that they plan to change their DST
-# rules to sync with the U.S. starting in 2007....
-# http://www.jonesbahamas.com/?c=45&a=10412
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Bahamas 1964 1975 - Oct lastSun 2:00 0 S
-Rule Bahamas 1964 1975 - Apr lastSun 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Nassau -5:09:24 - LMT 1912 Mar 2
- -5:00 Bahamas E%sT 1976
- -5:00 US E%sT
-
-# Barbados
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Barb 1977 only - Jun 12 2:00 1:00 D
-Rule Barb 1977 1978 - Oct Sun>=1 2:00 0 S
-Rule Barb 1978 1980 - Apr Sun>=15 2:00 1:00 D
-Rule Barb 1979 only - Sep 30 2:00 0 S
-Rule Barb 1980 only - Sep 25 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Barbados -3:58:28 - LMT 1924 # Bridgetown
- -3:58:28 - BMT 1932 # Bridgetown Mean Time
- -4:00 Barb A%sT
-
-# Belize
-# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
-Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
-Rule Belize 1973 only - Dec 5 0:00 1:00 D
-Rule Belize 1974 only - Feb 9 0:00 0 S
-Rule Belize 1982 only - Dec 18 0:00 1:00 D
-Rule Belize 1983 only - Feb 12 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Belize -5:52:48 - LMT 1912 Apr
- -6:00 Belize C%sT
-
-# Bermuda
-
-# From Dan Jones, reporting in The Royal Gazette (2006-06-26):
-
-# Next year, however, clocks in the US will go forward on the second Sunday
-# in March, until the first Sunday in November. And, after the Time Zone
-# (Seasonal Variation) Bill 2006 was passed in the House of Assembly on
-# Friday, the same thing will happen in Bermuda.
-# http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Bermuda -4:19:04 - LMT 1930 Jan 1 2:00 # Hamilton
- -4:00 - AST 1974 Apr 28 2:00
- -4:00 Bahamas A%sT 1976
- -4:00 US A%sT
-
-# Cayman Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 - EST
-
-# Costa Rica
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D
-Rule CR 1979 1980 - Jun Sun>=1 0:00 0 S
-Rule CR 1991 1992 - Jan Sat>=15 0:00 1:00 D
-# IATA SSIM (1991-09) says the following was at 1:00;
-# go with Shanks & Pottenger.
-Rule CR 1991 only - Jul 1 0:00 0 S
-Rule CR 1992 only - Mar 15 0:00 0 S
-# There are too many San Joses elsewhere, so we'll use `Costa Rica'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Costa_Rica -5:36:20 - LMT 1890 # San Jose
- -5:36:20 - SJMT 1921 Jan 15 # San Jose Mean Time
- -6:00 CR C%sT
-# Coco
-# no information; probably like America/Costa_Rica
-
-# Cuba
-
-# From Arthur David Olson (1999-03-29):
-# The 1999-03-28 exhibition baseball game held in Havana, Cuba, between
-# the Cuban National Team and the Baltimore Orioles was carried live on
-# the Orioles Radio Network, including affiliate WTOP in Washington, DC.
-# During the game, play-by-play announcer Jim Hunter noted that
-# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
-# Time today." (The "two hour" remark referred to losing one hour of
-# sleep on 1999-03-28--when the announcers were in Cuba as it switched
-# to DST--and one more hour on 1999-04-04--when the announcers will have
-# returned to Baltimore, which switches on that date.)
-
-# From Evert van der Veer via Steffen Thorsen (2004-10-28):
-# Cuba is not going back to standard time this year.
-# From Paul Eggert (2006-03-22):
-# http://www.granma.cu/ingles/2004/septiembre/juev30/41medid-i.html
-# says that it's due to a problem at the Antonio Guiteras
-# thermoelectric plant, and says "This October there will be no return
-# to normal hours (after daylight saving time)".
-# For now, let's assume that it's a temporary measure.
-
-# From Carlos A. Carnero Delgado (2005-11-12):
-# This year (just like in 2004-2005) there's no change in time zone
-# adjustment in Cuba. We will stay in daylight saving time:
-# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
-
-# From Jesper Norgaard Welen (2006-10-21):
-# An article in GRANMA INTERNACIONAL claims that Cuba will end
-# the 3 years of permanent DST next weekend, see
-# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
-# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
-# watches should be set back one hour -- going back to 00:00 hours -- returning
-# to the normal schedule....
-
-# From Paul Eggert (2007-03-02):
-# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
-# says Cuban clocks will advance at midnight on March 10.
-# For lack of better information, assume Cuba will use US rules,
-# except that it switches at midnight standard time as usual.
-#
-# From Steffen Thorsen (2007-10-25):
-# Carlos Alberto Fonseca Arauz informed me that Cuba will end DST one week
-# earlier - on the last Sunday of October, just like in 2006.
-#
-# He supplied these references:
-#
-# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
-# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
-#
-# From Alex Kryvenishev (2007-10-25):
-# Here is also article from Granma (Cuba):
-#
-# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
-# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
-#
-# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
-
-# From Arthur David Olson (2008-03-09):
-# I'm in Maryland which is now observing United States Eastern Daylight
-# Time. At 9:44 local time I used RealPlayer to listen to
-#
-# http://media.enet.cu/radioreloj
-# , a Cuban information station, and heard
-# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
-# indicating that Cuba is still on standard time.
-
-# From Steffen Thorsen (2008-03-12):
-# It seems that Cuba will start DST on Sunday, 2007-03-16...
-# It was announced yesterday, according to this source (in Spanish):
-#
-# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
-#
-#
-# Some more background information is posted here:
-#
-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
-#
-#
-# The article also says that Cuba has been observing DST since 1963,
-# while Shanks (and tzdata) has 1965 as the first date (except in the
-# 1940's). Many other web pages in Cuba also claim that it has been
-# observed since 1963, but with the exception of 1970 - an exception
-# which is not present in tzdata/Shanks. So there is a chance we need to
-# change some historic records as well.
-#
-# One example:
-#
-# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
-#
-
-# From Jesper Norgaard Welen (2008-03-13):
-# The Cuban time change has just been confirmed on the most authoritative
-# web site, the Granma. Please check out
-#
-# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
-#
-#
-# Basically as expected after Steffen Thorsens information, the change
-# will take place midnight between Saturday and Sunday.
-
-# From Arthur David Olson (2008-03-12):
-# Assume Sun>=15 (third Sunday) going forward.
-
-# From Alexander Krivenyshev (2009-03-04)
-# According to the Radio Reloj - Cuba will start Daylight Saving Time on
-# midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009-
-# not on midnight March 14 / March 15 as previously thought.
-#
-#
-# http://www.worldtimezone.com/dst_news/dst_news_cuba05.html
-# (in Spanish)
-#
-
-# From Arthur David Olson (2009-03-09)
-# I listened over the Internet to
-#
-# http://media.enet.cu/readioreloj
-#
-# this morning; when it was 10:05 a. m. here in Bethesda, Maryland the
-# the time was announced as "diez cinco"--the same time as here, indicating
-# that has indeed switched to DST. Assume second Sunday from 2009 forward.
-
-# From Steffen Thorsen (2011-03-08):
-# Granma announced that Cuba is going to start DST on 2011-03-20 00:00:00
-# this year. Nothing about the end date known so far (if that has
-# changed at all).
-#
-# Source:
-#
-# http://granma.co.cu/2011/03/08/nacional/artic01.html
-#
-#
-# Our info:
-#
-# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
-#
-#
-# From Steffen Thorsen (2011-10-30)
-# Cuba will end DST two weeks later this year. Instead of going back
-# tonight, it has been delayed to 2011-11-13 at 01:00.
-#
-# One source (Spanish)
-#
-# http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
-#
-#
-# Our page:
-#
-# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
-#
-#
-# From Steffen Thorsen (2012-03-01)
-# According to Radio Reloj, Cuba will start DST on Midnight between March
-# 31 and April 1.
-#
-# Radio Reloj has the following info (Spanish):
-#
-# http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
-#
-#
-# Our info on it:
-#
-# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
-#
-
-# From Steffen Thorsen (2012-11-03):
-# Radio Reloj and many other sources report that Cuba is changing back
-# to standard time on 2012-11-04:
-# http://www.radioreloj.cu/index.php/noticias-radio-reloj/36-nacionales/9961-regira-horario-normal-en-cuba-desde-el-domingo-cuatro-de-noviembre
-# From Paul Eggert (2012-11-03):
-# For now, assume the future rule is first Sunday in November.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Cuba 1928 only - Jun 10 0:00 1:00 D
-Rule Cuba 1928 only - Oct 10 0:00 0 S
-Rule Cuba 1940 1942 - Jun Sun>=1 0:00 1:00 D
-Rule Cuba 1940 1942 - Sep Sun>=1 0:00 0 S
-Rule Cuba 1945 1946 - Jun Sun>=1 0:00 1:00 D
-Rule Cuba 1945 1946 - Sep Sun>=1 0:00 0 S
-Rule Cuba 1965 only - Jun 1 0:00 1:00 D
-Rule Cuba 1965 only - Sep 30 0:00 0 S
-Rule Cuba 1966 only - May 29 0:00 1:00 D
-Rule Cuba 1966 only - Oct 2 0:00 0 S
-Rule Cuba 1967 only - Apr 8 0:00 1:00 D
-Rule Cuba 1967 1968 - Sep Sun>=8 0:00 0 S
-Rule Cuba 1968 only - Apr 14 0:00 1:00 D
-Rule Cuba 1969 1977 - Apr lastSun 0:00 1:00 D
-Rule Cuba 1969 1971 - Oct lastSun 0:00 0 S
-Rule Cuba 1972 1974 - Oct 8 0:00 0 S
-Rule Cuba 1975 1977 - Oct lastSun 0:00 0 S
-Rule Cuba 1978 only - May 7 0:00 1:00 D
-Rule Cuba 1978 1990 - Oct Sun>=8 0:00 0 S
-Rule Cuba 1979 1980 - Mar Sun>=15 0:00 1:00 D
-Rule Cuba 1981 1985 - May Sun>=5 0:00 1:00 D
-Rule Cuba 1986 1989 - Mar Sun>=14 0:00 1:00 D
-Rule Cuba 1990 1997 - Apr Sun>=1 0:00 1:00 D
-Rule Cuba 1991 1995 - Oct Sun>=8 0:00s 0 S
-Rule Cuba 1996 only - Oct 6 0:00s 0 S
-Rule Cuba 1997 only - Oct 12 0:00s 0 S
-Rule Cuba 1998 1999 - Mar lastSun 0:00s 1:00 D
-Rule Cuba 1998 2003 - Oct lastSun 0:00s 0 S
-Rule Cuba 2000 2004 - Apr Sun>=1 0:00s 1:00 D
-Rule Cuba 2006 2010 - Oct lastSun 0:00s 0 S
-Rule Cuba 2007 only - Mar Sun>=8 0:00s 1:00 D
-Rule Cuba 2008 only - Mar Sun>=15 0:00s 1:00 D
-Rule Cuba 2009 2010 - Mar Sun>=8 0:00s 1:00 D
-Rule Cuba 2011 only - Mar Sun>=15 0:00s 1:00 D
-Rule Cuba 2011 only - Nov 13 0:00s 0 S
-Rule Cuba 2012 only - Apr 1 0:00s 1:00 D
-Rule Cuba 2012 max - Nov Sun>=1 0:00s 0 S
-Rule Cuba 2013 max - Mar Sun>=8 0:00s 1:00 D
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Havana -5:29:28 - LMT 1890
- -5:29:36 - HMT 1925 Jul 19 12:00 # Havana MT
- -5:00 Cuba C%sT
-
-# Dominica
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
- -4:00 - AST
-
-# Dominican Republic
-
-# From Steffen Thorsen (2000-10-30):
-# Enrique Morales reported to me that the Dominican Republic has changed the
-# time zone to Eastern Standard Time as of Sunday 29 at 2 am....
-# http://www.listin.com.do/antes/261000/republica/princi.html
-
-# From Paul Eggert (2000-12-04):
-# That URL (2000-10-26, in Spanish) says they planned to use US-style DST.
-
-# From Rives McDow (2000-12-01):
-# Dominican Republic changed its mind and presidential decree on Tuesday,
-# November 28, 2000, with a new decree. On Sunday, December 3 at 1:00 AM the
-# Dominican Republic will be reverting to 8 hours from the International Date
-# Line, and will not be using DST in the foreseeable future. The reason they
-# decided to use DST was to be in synch with Puerto Rico, who was also going
-# to implement DST. When Puerto Rico didn't implement DST, the president
-# decided to revert.
-
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule DR 1966 only - Oct 30 0:00 1:00 D
-Rule DR 1967 only - Feb 28 0:00 0 S
-Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
-Rule DR 1970 only - Feb 21 0:00 0 S
-Rule DR 1971 only - Jan 20 0:00 0 S
-Rule DR 1972 1974 - Jan 21 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Santo_Domingo -4:39:36 - LMT 1890
- -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
- -5:00 DR E%sT 1974 Oct 27
- -4:00 - AST 2000 Oct 29 02:00
- -5:00 US E%sT 2000 Dec 3 01:00
- -4:00 - AST
-
-# El Salvador
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Salv 1987 1988 - May Sun>=1 0:00 1:00 D
-Rule Salv 1987 1988 - Sep lastSun 0:00 0 S
-# There are too many San Salvadors elsewhere, so use America/El_Salvador
-# instead of America/San_Salvador.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
- -6:00 Salv C%sT
-
-# Grenada
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
- -4:00 - AST
-
-# Guadeloupe
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe a Pitre
- -4:00 - AST
-# St Barthelemy
-Link America/Guadeloupe America/St_Barthelemy
-# St Martin (French part)
-Link America/Guadeloupe America/Marigot
-
-# Guatemala
-#
-# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
-# Diario Co Latino, at
-# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
-# says in an article dated 2006-04-19 that the Guatemalan government had
-# decided on that date to advance official time by 60 minutes, to lessen the
-# impact of the elevated cost of oil.... Daylight saving time will last from
-# 2006-04-29 24:00 (Guatemalan standard time) to 2006-09-30 (time unspecified).
-# From Paul Eggert (2006-06-22):
-# The Ministry of Energy and Mines, press release CP-15/2006
-# (2006-04-19), says DST ends at 24:00. See
-# .
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Guat 1973 only - Nov 25 0:00 1:00 D
-Rule Guat 1974 only - Feb 24 0:00 0 S
-Rule Guat 1983 only - May 21 0:00 1:00 D
-Rule Guat 1983 only - Sep 22 0:00 0 S
-Rule Guat 1991 only - Mar 23 0:00 1:00 D
-Rule Guat 1991 only - Sep 7 0:00 0 S
-Rule Guat 2006 only - Apr 30 0:00 1:00 D
-Rule Guat 2006 only - Oct 1 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
- -6:00 Guat C%sT
-
-# Haiti
-# From Gwillim Law (2005-04-15):
-# Risto O. Nykanen wrote me that Haiti is now on DST.
-# I searched for confirmation, and I found a
-# press release
-# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
-# . Translated from French, it says:
-#
-# "The Prime Minister's Communication Office notifies the public in general
-# and the press in particular that, following a decision of the Interior
-# Ministry and the Territorial Collectivities [I suppose that means the
-# provinces], Haiti will move to Eastern Daylight Time in the night from next
-# Saturday the 2nd to Sunday the 3rd.
-#
-# "Consequently, the Prime Minister's Communication Office wishes to inform
-# the population that the country's clocks will be set forward one hour
-# starting at midnight. This provision will hold until the last Saturday in
-# October 2005.
-#
-# "Port-au-Prince, March 31, 2005"
-#
-# From Steffen Thorsen (2006-04-04):
-# I have been informed by users that Haiti observes DST this year like
-# last year, so the current "only" rule for 2005 might be changed to a
-# "max" rule or to last until 2006. (Who knows if they will observe DST
-# next year or if they will extend their DST like US/Canada next year).
-#
-# I have found this article about it (in French):
-# http://www.haitipressnetwork.com/news.cfm?articleID=7612
-#
-# The reason seems to be an energy crisis.
-
-# From Stephen Colebourne (2007-02-22):
-# Some IATA info: Haiti won't be having DST in 2007.
-
-# From Steffen Thorsen (2012-03-11):
-# According to several news sources, Haiti will observe DST this year,
-# apparently using the same start and end date as USA/Canada.
-# So this means they have already changed their time.
-#
-# (Sources in French):
-#
-# http://www.alterpresse.org/spip.php?article12510
-#
-#
-# http://radiovision2000haiti.net/home/?p=13253
-#
-#
-# Our coverage:
-#
-# http://www.timeanddate.com/news/time/haiti-dst-2012.html
-#
-
-# From Arthur David Olson (2012-03-11):
-# The alterpresse.org source seems to show a US-style leap from 2:00 a.m. to
-# 3:00 a.m. rather than the traditional Haitian jump at midnight.
-# Assume a US-style fall back as well XXX.
-# Do not yet assume that the change carries forward past 2012 XXX.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Haiti 1983 only - May 8 0:00 1:00 D
-Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
-Rule Haiti 1983 1987 - Oct lastSun 0:00 0 S
-# Shanks & Pottenger say AT is 2:00, but IATA SSIM (1991/1997) says 1:00s.
-# Go with IATA.
-Rule Haiti 1988 1997 - Apr Sun>=1 1:00s 1:00 D
-Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
-Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
-Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
-Rule Haiti 2012 only - Mar Sun>=8 2:00 1:00 D
-Rule Haiti 2012 only - Nov Sun>=1 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Port-au-Prince -4:49:20 - LMT 1890
- -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
- -5:00 Haiti E%sT
-
-# Honduras
-# Shanks & Pottenger say 1921 Jan 1; go with Whitman's more precise Apr 1.
-
-# From Paul Eggert (2006-05-05):
-# worldtimezone.com reports a 2006-05-02 Spanish-language AP article
-# saying Honduras will start using DST midnight Saturday, effective 4
-# months until September. La Tribuna reported today
-# that Manuel Zelaya, the president
-# of Honduras, refused to back down on this.
-
-# From Jesper Norgaard Welen (2006-08-08):
-# It seems that Honduras has returned from DST to standard time this Monday at
-# 00:00 hours (prolonging Sunday to 25 hours duration).
-# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
-
-# From Paul Eggert (2006-08-08):
-# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
-# .
-# It mentions executive decree 18-2006.
-
-# From Steffen Thorsen (2006-08-17):
-# Honduras will observe DST from 2007 to 2009, exact dates are not
-# published, I have located this authoritative source:
-# http://www.presidencia.gob.hn/noticia.aspx?nId=47
-
-# From Steffen Thorsen (2007-03-30):
-# http://www.laprensahn.com/pais_nota.php?id04962=7386
-# So it seems that Honduras will not enter DST this year....
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Hond 1987 1988 - May Sun>=1 0:00 1:00 D
-Rule Hond 1987 1988 - Sep lastSun 0:00 0 S
-Rule Hond 2006 only - May Sun>=1 0:00 1:00 D
-Rule Hond 2006 only - Aug Mon>=1 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Tegucigalpa -5:48:52 - LMT 1921 Apr
- -6:00 Hond C%sT
-#
-# Great Swan I ceded by US to Honduras in 1972
-
-# Jamaica
-
-# From Bob Devine (1988-01-28):
-# Follows US rules.
-
-# From U. S. Naval Observatory (1989-01-19):
-# JAMAICA 5 H BEHIND UTC
-
-# From Shanks & Pottenger:
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Jamaica -5:07:12 - LMT 1890 # Kingston
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 - EST 1974 Apr 28 2:00
- -5:00 US E%sT 1984
- -5:00 - EST
-
-# Martinique
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
- -4:04:20 - FFMT 1911 May # Fort-de-France MT
- -4:00 - AST 1980 Apr 6
- -4:00 1:00 ADT 1980 Sep 28
- -4:00 - AST
-
-# Montserrat
-# From Paul Eggert (2006-03-22):
-# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
-# world.gazetteer.com says Cork Hill is the most populous location now.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
- -4:00 - AST
-
-# Nicaragua
-#
-# This uses Shanks & Pottenger for times before 2005.
-#
-# From Steffen Thorsen (2005-04-12):
-# I've got reports from 8 different people that Nicaragua just started
-# DST on Sunday 2005-04-10, in order to save energy because of
-# expensive petroleum. The exact end date for DST is not yet
-# announced, only "September" but some sites also say "mid-September".
-# Some background information is available on the President's official site:
-# http://www.presidencia.gob.ni/Presidencia/Files_index/Secretaria/Notas%20de%20Prensa/Presidente/2005/ABRIL/Gobierno-de-nicaragua-adelanta-hora-oficial-06abril.htm
-# The Decree, no 23-2005 is available here:
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2005/Decreto%2023-2005%20Se%20adelanta%20en%20una%20hora%20en%20todo%20el%20territorio%20nacional%20apartir%20de%20las%2024horas%20del%2009%20de%20Abril.pdf
-#
-# From Paul Eggert (2005-05-01):
-# The decree doesn't say anything about daylight saving, but for now let's
-# assume that it is daylight saving....
-#
-# From Gwillim Law (2005-04-21):
-# The Associated Press story on the time change, which can be found at
-# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
-# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
-# time that a change of clocks was applied to save energy was in the year 2000
-# during the Arnoldo Aleman administration."...
-# The northamerica file says that Nicaragua has been on UTC-6 continuously
-# since December 1998. I wasn't able to find any details of Nicaraguan time
-# changes in 2000. Perhaps a note could be added to the northamerica file, to
-# the effect that we have indirect evidence that DST was observed in 2000.
-#
-# From Jesper Norgaard Welen (2005-11-02):
-# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
-# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
-# (2005-09-26)
-#
-# From Jesper Norgaard Welen (2006-05-05):
-# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
-# (my informal translation)
-# By order of the president of the republic, Enrique Bolanos, Nicaragua
-# advanced by sixty minutes their official time, yesterday at 2 in the
-# morning, and will stay that way until 30.th. of september.
-#
-# From Jesper Norgaard Welen (2006-09-30):
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
-# My informal translation runs:
-# The natural sun time is restored in all the national territory, in that the
-# time is returned one hour at 01:00 am of October 1 of 2006.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Nic 1979 1980 - Mar Sun>=16 0:00 1:00 D
-Rule Nic 1979 1980 - Jun Mon>=23 0:00 0 S
-Rule Nic 2005 only - Apr 10 0:00 1:00 D
-Rule Nic 2005 only - Oct Sun>=1 0:00 0 S
-Rule Nic 2006 only - Apr 30 2:00 1:00 D
-Rule Nic 2006 only - Oct Sun>=1 1:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Managua -5:45:08 - LMT 1890
- -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
- -6:00 - CST 1973 May
- -5:00 - EST 1975 Feb 16
- -6:00 Nic C%sT 1992 Jan 1 4:00
- -5:00 - EST 1992 Sep 24
- -6:00 - CST 1993
- -5:00 - EST 1997
- -6:00 Nic C%sT
-
-# Panama
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Panama -5:18:08 - LMT 1890
- -5:19:36 - CMT 1908 Apr 22 # Colon Mean Time
- -5:00 - EST
-
-# Puerto Rico
-# There are too many San Juans elsewhere, so we'll use `Puerto_Rico'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
- -4:00 - AST 1942 May 3
- -4:00 US A%sT 1946
- -4:00 - AST
-
-# St Kitts-Nevis
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
- -4:00 - AST
-
-# St Lucia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
- -4:04:00 - CMT 1912 # Castries Mean Time
- -4:00 - AST
-
-# St Pierre and Miquelon
-# There are too many St Pierres elsewhere, so we'll use `Miquelon'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
- -4:00 - AST 1980 May
- -3:00 - PMST 1987 # Pierre & Miquelon Time
- -3:00 Canada PM%sT
-
-# St Vincent and the Grenadines
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
- -4:04:56 - KMT 1912 # Kingstown Mean Time
- -4:00 - AST
-
-# Turks and Caicos
-#
-# From Chris Dunn in
-#
-# (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
-# daylight saving dates for time changes have been adjusted to match
-# the recent U.S. change of dates.
-#
-# From Brian Inglis (2007-04-28):
-# http://www.turksandcaicos.tc/calendar/index.htm [2007-04-26]
-# there is an entry for Nov 4 "Daylight Savings Time Ends 2007" and three
-# rows before that there is an out of date entry for Oct:
-# "Eastern Standard Times Begins 2007
-# Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
-# indicating that the normal ET rules are followed.
-#
-# From Paul Eggert (2006-05-01):
-# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
-# says they switch at midnight. Go with Shanks & Pottenger.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D
-Rule TC 1979 2006 - Oct lastSun 2:00 0 S
-Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule TC 2007 max - Nov Sun>=1 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Grand_Turk -4:44:32 - LMT 1890
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 TC E%sT
-
-# British Virgin Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
- -4:00 - AST
-
-# Virgin Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
- -4:00 - AST
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/pacificnew b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/pacificnew
deleted file mode 100755
index bccd85210..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/pacificnew
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# From Arthur David Olson (1989-04-05):
-# On 1989-04-05, the U. S. House of Representatives passed (238-154) a bill
-# establishing "Pacific Presidential Election Time"; it was not acted on
-# by the Senate or signed into law by the President.
-# You might want to change the "PE" (Presidential Election) below to
-# "Q" (Quadrennial) to maintain three-character zone abbreviations.
-# If you're really conservative, you might want to change it to "D".
-# Avoid "L" (Leap Year), which won't be true in 2100.
-
-# If Presidential Election Time is ever established, replace "XXXX" below
-# with the year the law takes effect and uncomment the "##" lines.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-## Rule Twilite XXXX max - Apr Sun>=1 2:00 1:00 D
-## Rule Twilite XXXX max uspres Oct lastSun 2:00 1:00 PE
-## Rule Twilite XXXX max uspres Nov Sun>=7 2:00 0 S
-## Rule Twilite XXXX max nonpres Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-## Zone America/Los_Angeles-PET -8:00 US P%sT XXXX
-## -8:00 Twilite P%sT
-
-# For now...
-Link America/Los_Angeles US/Pacific-New ##
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar87 b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar87
deleted file mode 100755
index 229955816..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar87
+++ /dev/null
@@ -1,390 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# So much for footnotes about Saudi Arabia.
-# Apparent noon times below are for Riyadh; your mileage will vary.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol87 1987 only - Jan 1 12:03:20s -0:03:20 -
-Rule sol87 1987 only - Jan 2 12:03:50s -0:03:50 -
-Rule sol87 1987 only - Jan 3 12:04:15s -0:04:15 -
-Rule sol87 1987 only - Jan 4 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Jan 5 12:05:10s -0:05:10 -
-Rule sol87 1987 only - Jan 6 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Jan 7 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Jan 8 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jan 9 12:06:55s -0:06:55 -
-Rule sol87 1987 only - Jan 10 12:07:20s -0:07:20 -
-Rule sol87 1987 only - Jan 11 12:07:45s -0:07:45 -
-Rule sol87 1987 only - Jan 12 12:08:10s -0:08:10 -
-Rule sol87 1987 only - Jan 13 12:08:30s -0:08:30 -
-Rule sol87 1987 only - Jan 14 12:08:55s -0:08:55 -
-Rule sol87 1987 only - Jan 15 12:09:15s -0:09:15 -
-Rule sol87 1987 only - Jan 16 12:09:35s -0:09:35 -
-Rule sol87 1987 only - Jan 17 12:09:55s -0:09:55 -
-Rule sol87 1987 only - Jan 18 12:10:15s -0:10:15 -
-Rule sol87 1987 only - Jan 19 12:10:35s -0:10:35 -
-Rule sol87 1987 only - Jan 20 12:10:55s -0:10:55 -
-Rule sol87 1987 only - Jan 21 12:11:10s -0:11:10 -
-Rule sol87 1987 only - Jan 22 12:11:30s -0:11:30 -
-Rule sol87 1987 only - Jan 23 12:11:45s -0:11:45 -
-Rule sol87 1987 only - Jan 24 12:12:00s -0:12:00 -
-Rule sol87 1987 only - Jan 25 12:12:15s -0:12:15 -
-Rule sol87 1987 only - Jan 26 12:12:30s -0:12:30 -
-Rule sol87 1987 only - Jan 27 12:12:40s -0:12:40 -
-Rule sol87 1987 only - Jan 28 12:12:55s -0:12:55 -
-Rule sol87 1987 only - Jan 29 12:13:05s -0:13:05 -
-Rule sol87 1987 only - Jan 30 12:13:15s -0:13:15 -
-Rule sol87 1987 only - Jan 31 12:13:25s -0:13:25 -
-Rule sol87 1987 only - Feb 1 12:13:35s -0:13:35 -
-Rule sol87 1987 only - Feb 2 12:13:40s -0:13:40 -
-Rule sol87 1987 only - Feb 3 12:13:50s -0:13:50 -
-Rule sol87 1987 only - Feb 4 12:13:55s -0:13:55 -
-Rule sol87 1987 only - Feb 5 12:14:00s -0:14:00 -
-Rule sol87 1987 only - Feb 6 12:14:05s -0:14:05 -
-Rule sol87 1987 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 8 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 10 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 11 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 12 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol87 1987 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol87 1987 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol87 1987 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol87 1987 only - Feb 21 12:13:45s -0:13:45 -
-Rule sol87 1987 only - Feb 22 12:13:35s -0:13:35 -
-Rule sol87 1987 only - Feb 23 12:13:30s -0:13:30 -
-Rule sol87 1987 only - Feb 24 12:13:20s -0:13:20 -
-Rule sol87 1987 only - Feb 25 12:13:10s -0:13:10 -
-Rule sol87 1987 only - Feb 26 12:13:00s -0:13:00 -
-Rule sol87 1987 only - Feb 27 12:12:50s -0:12:50 -
-Rule sol87 1987 only - Feb 28 12:12:40s -0:12:40 -
-Rule sol87 1987 only - Mar 1 12:12:30s -0:12:30 -
-Rule sol87 1987 only - Mar 2 12:12:20s -0:12:20 -
-Rule sol87 1987 only - Mar 3 12:12:05s -0:12:05 -
-Rule sol87 1987 only - Mar 4 12:11:55s -0:11:55 -
-Rule sol87 1987 only - Mar 5 12:11:40s -0:11:40 -
-Rule sol87 1987 only - Mar 6 12:11:25s -0:11:25 -
-Rule sol87 1987 only - Mar 7 12:11:15s -0:11:15 -
-Rule sol87 1987 only - Mar 8 12:11:00s -0:11:00 -
-Rule sol87 1987 only - Mar 9 12:10:45s -0:10:45 -
-Rule sol87 1987 only - Mar 10 12:10:30s -0:10:30 -
-Rule sol87 1987 only - Mar 11 12:10:15s -0:10:15 -
-Rule sol87 1987 only - Mar 12 12:09:55s -0:09:55 -
-Rule sol87 1987 only - Mar 13 12:09:40s -0:09:40 -
-Rule sol87 1987 only - Mar 14 12:09:25s -0:09:25 -
-Rule sol87 1987 only - Mar 15 12:09:10s -0:09:10 -
-Rule sol87 1987 only - Mar 16 12:08:50s -0:08:50 -
-Rule sol87 1987 only - Mar 17 12:08:35s -0:08:35 -
-Rule sol87 1987 only - Mar 18 12:08:15s -0:08:15 -
-Rule sol87 1987 only - Mar 19 12:08:00s -0:08:00 -
-Rule sol87 1987 only - Mar 20 12:07:40s -0:07:40 -
-Rule sol87 1987 only - Mar 21 12:07:25s -0:07:25 -
-Rule sol87 1987 only - Mar 22 12:07:05s -0:07:05 -
-Rule sol87 1987 only - Mar 23 12:06:50s -0:06:50 -
-Rule sol87 1987 only - Mar 24 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Mar 25 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Mar 26 12:05:55s -0:05:55 -
-Rule sol87 1987 only - Mar 27 12:05:35s -0:05:35 -
-Rule sol87 1987 only - Mar 28 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Mar 29 12:05:00s -0:05:00 -
-Rule sol87 1987 only - Mar 30 12:04:40s -0:04:40 -
-Rule sol87 1987 only - Mar 31 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Apr 1 12:04:05s -0:04:05 -
-Rule sol87 1987 only - Apr 2 12:03:45s -0:03:45 -
-Rule sol87 1987 only - Apr 3 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Apr 4 12:03:10s -0:03:10 -
-Rule sol87 1987 only - Apr 5 12:02:55s -0:02:55 -
-Rule sol87 1987 only - Apr 6 12:02:35s -0:02:35 -
-Rule sol87 1987 only - Apr 7 12:02:20s -0:02:20 -
-Rule sol87 1987 only - Apr 8 12:02:05s -0:02:05 -
-Rule sol87 1987 only - Apr 9 12:01:45s -0:01:45 -
-Rule sol87 1987 only - Apr 10 12:01:30s -0:01:30 -
-Rule sol87 1987 only - Apr 11 12:01:15s -0:01:15 -
-Rule sol87 1987 only - Apr 12 12:00:55s -0:00:55 -
-Rule sol87 1987 only - Apr 13 12:00:40s -0:00:40 -
-Rule sol87 1987 only - Apr 14 12:00:25s -0:00:25 -
-Rule sol87 1987 only - Apr 15 12:00:10s -0:00:10 -
-Rule sol87 1987 only - Apr 16 11:59:55s 0:00:05 -
-Rule sol87 1987 only - Apr 17 11:59:45s 0:00:15 -
-Rule sol87 1987 only - Apr 18 11:59:30s 0:00:30 -
-Rule sol87 1987 only - Apr 19 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Apr 20 11:59:05s 0:00:55 -
-Rule sol87 1987 only - Apr 21 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Apr 22 11:58:40s 0:01:20 -
-Rule sol87 1987 only - Apr 23 11:58:25s 0:01:35 -
-Rule sol87 1987 only - Apr 24 11:58:15s 0:01:45 -
-Rule sol87 1987 only - Apr 25 11:58:05s 0:01:55 -
-Rule sol87 1987 only - Apr 26 11:57:55s 0:02:05 -
-Rule sol87 1987 only - Apr 27 11:57:45s 0:02:15 -
-Rule sol87 1987 only - Apr 28 11:57:35s 0:02:25 -
-Rule sol87 1987 only - Apr 29 11:57:25s 0:02:35 -
-Rule sol87 1987 only - Apr 30 11:57:15s 0:02:45 -
-Rule sol87 1987 only - May 1 11:57:10s 0:02:50 -
-Rule sol87 1987 only - May 2 11:57:00s 0:03:00 -
-Rule sol87 1987 only - May 3 11:56:55s 0:03:05 -
-Rule sol87 1987 only - May 4 11:56:50s 0:03:10 -
-Rule sol87 1987 only - May 5 11:56:45s 0:03:15 -
-Rule sol87 1987 only - May 6 11:56:40s 0:03:20 -
-Rule sol87 1987 only - May 7 11:56:35s 0:03:25 -
-Rule sol87 1987 only - May 8 11:56:30s 0:03:30 -
-Rule sol87 1987 only - May 9 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 10 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 11 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 12 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 13 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 14 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 15 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 16 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 17 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 18 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 19 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 20 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 21 11:56:30s 0:03:30 -
-Rule sol87 1987 only - May 22 11:56:35s 0:03:25 -
-Rule sol87 1987 only - May 23 11:56:40s 0:03:20 -
-Rule sol87 1987 only - May 24 11:56:45s 0:03:15 -
-Rule sol87 1987 only - May 25 11:56:50s 0:03:10 -
-Rule sol87 1987 only - May 26 11:56:55s 0:03:05 -
-Rule sol87 1987 only - May 27 11:57:00s 0:03:00 -
-Rule sol87 1987 only - May 28 11:57:10s 0:02:50 -
-Rule sol87 1987 only - May 29 11:57:15s 0:02:45 -
-Rule sol87 1987 only - May 30 11:57:25s 0:02:35 -
-Rule sol87 1987 only - May 31 11:57:30s 0:02:30 -
-Rule sol87 1987 only - Jun 1 11:57:40s 0:02:20 -
-Rule sol87 1987 only - Jun 2 11:57:50s 0:02:10 -
-Rule sol87 1987 only - Jun 3 11:58:00s 0:02:00 -
-Rule sol87 1987 only - Jun 4 11:58:10s 0:01:50 -
-Rule sol87 1987 only - Jun 5 11:58:20s 0:01:40 -
-Rule sol87 1987 only - Jun 6 11:58:30s 0:01:30 -
-Rule sol87 1987 only - Jun 7 11:58:40s 0:01:20 -
-Rule sol87 1987 only - Jun 8 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Jun 9 11:59:05s 0:00:55 -
-Rule sol87 1987 only - Jun 10 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Jun 11 11:59:30s 0:00:30 -
-Rule sol87 1987 only - Jun 12 11:59:40s 0:00:20 -
-Rule sol87 1987 only - Jun 13 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Jun 14 12:00:05s -0:00:05 -
-Rule sol87 1987 only - Jun 15 12:00:15s -0:00:15 -
-Rule sol87 1987 only - Jun 16 12:00:30s -0:00:30 -
-Rule sol87 1987 only - Jun 17 12:00:45s -0:00:45 -
-Rule sol87 1987 only - Jun 18 12:00:55s -0:00:55 -
-Rule sol87 1987 only - Jun 19 12:01:10s -0:01:10 -
-Rule sol87 1987 only - Jun 20 12:01:20s -0:01:20 -
-Rule sol87 1987 only - Jun 21 12:01:35s -0:01:35 -
-Rule sol87 1987 only - Jun 22 12:01:50s -0:01:50 -
-Rule sol87 1987 only - Jun 23 12:02:00s -0:02:00 -
-Rule sol87 1987 only - Jun 24 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Jun 25 12:02:25s -0:02:25 -
-Rule sol87 1987 only - Jun 26 12:02:40s -0:02:40 -
-Rule sol87 1987 only - Jun 27 12:02:50s -0:02:50 -
-Rule sol87 1987 only - Jun 28 12:03:05s -0:03:05 -
-Rule sol87 1987 only - Jun 29 12:03:15s -0:03:15 -
-Rule sol87 1987 only - Jun 30 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Jul 1 12:03:40s -0:03:40 -
-Rule sol87 1987 only - Jul 2 12:03:50s -0:03:50 -
-Rule sol87 1987 only - Jul 3 12:04:05s -0:04:05 -
-Rule sol87 1987 only - Jul 4 12:04:15s -0:04:15 -
-Rule sol87 1987 only - Jul 5 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Jul 6 12:04:35s -0:04:35 -
-Rule sol87 1987 only - Jul 7 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Jul 8 12:04:55s -0:04:55 -
-Rule sol87 1987 only - Jul 9 12:05:05s -0:05:05 -
-Rule sol87 1987 only - Jul 10 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Jul 11 12:05:20s -0:05:20 -
-Rule sol87 1987 only - Jul 12 12:05:30s -0:05:30 -
-Rule sol87 1987 only - Jul 13 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Jul 14 12:05:45s -0:05:45 -
-Rule sol87 1987 only - Jul 15 12:05:50s -0:05:50 -
-Rule sol87 1987 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol87 1987 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Jul 20 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Jul 21 12:06:20s -0:06:20 -
-Rule sol87 1987 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 24 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 31 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Aug 1 12:06:20s -0:06:20 -
-Rule sol87 1987 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Aug 5 12:06:00s -0:06:00 -
-Rule sol87 1987 only - Aug 6 12:05:55s -0:05:55 -
-Rule sol87 1987 only - Aug 7 12:05:50s -0:05:50 -
-Rule sol87 1987 only - Aug 8 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Aug 9 12:05:35s -0:05:35 -
-Rule sol87 1987 only - Aug 10 12:05:25s -0:05:25 -
-Rule sol87 1987 only - Aug 11 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Aug 12 12:05:05s -0:05:05 -
-Rule sol87 1987 only - Aug 13 12:04:55s -0:04:55 -
-Rule sol87 1987 only - Aug 14 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Aug 15 12:04:35s -0:04:35 -
-Rule sol87 1987 only - Aug 16 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Aug 17 12:04:10s -0:04:10 -
-Rule sol87 1987 only - Aug 18 12:04:00s -0:04:00 -
-Rule sol87 1987 only - Aug 19 12:03:45s -0:03:45 -
-Rule sol87 1987 only - Aug 20 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Aug 21 12:03:15s -0:03:15 -
-Rule sol87 1987 only - Aug 22 12:03:00s -0:03:00 -
-Rule sol87 1987 only - Aug 23 12:02:45s -0:02:45 -
-Rule sol87 1987 only - Aug 24 12:02:30s -0:02:30 -
-Rule sol87 1987 only - Aug 25 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Aug 26 12:02:00s -0:02:00 -
-Rule sol87 1987 only - Aug 27 12:01:40s -0:01:40 -
-Rule sol87 1987 only - Aug 28 12:01:25s -0:01:25 -
-Rule sol87 1987 only - Aug 29 12:01:05s -0:01:05 -
-Rule sol87 1987 only - Aug 30 12:00:50s -0:00:50 -
-Rule sol87 1987 only - Aug 31 12:00:30s -0:00:30 -
-Rule sol87 1987 only - Sep 1 12:00:10s -0:00:10 -
-Rule sol87 1987 only - Sep 2 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Sep 3 11:59:35s 0:00:25 -
-Rule sol87 1987 only - Sep 4 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Sep 5 11:58:55s 0:01:05 -
-Rule sol87 1987 only - Sep 6 11:58:35s 0:01:25 -
-Rule sol87 1987 only - Sep 7 11:58:15s 0:01:45 -
-Rule sol87 1987 only - Sep 8 11:57:55s 0:02:05 -
-Rule sol87 1987 only - Sep 9 11:57:30s 0:02:30 -
-Rule sol87 1987 only - Sep 10 11:57:10s 0:02:50 -
-Rule sol87 1987 only - Sep 11 11:56:50s 0:03:10 -
-Rule sol87 1987 only - Sep 12 11:56:30s 0:03:30 -
-Rule sol87 1987 only - Sep 13 11:56:10s 0:03:50 -
-Rule sol87 1987 only - Sep 14 11:55:45s 0:04:15 -
-Rule sol87 1987 only - Sep 15 11:55:25s 0:04:35 -
-Rule sol87 1987 only - Sep 16 11:55:05s 0:04:55 -
-Rule sol87 1987 only - Sep 17 11:54:45s 0:05:15 -
-Rule sol87 1987 only - Sep 18 11:54:20s 0:05:40 -
-Rule sol87 1987 only - Sep 19 11:54:00s 0:06:00 -
-Rule sol87 1987 only - Sep 20 11:53:40s 0:06:20 -
-Rule sol87 1987 only - Sep 21 11:53:15s 0:06:45 -
-Rule sol87 1987 only - Sep 22 11:52:55s 0:07:05 -
-Rule sol87 1987 only - Sep 23 11:52:35s 0:07:25 -
-Rule sol87 1987 only - Sep 24 11:52:15s 0:07:45 -
-Rule sol87 1987 only - Sep 25 11:51:55s 0:08:05 -
-Rule sol87 1987 only - Sep 26 11:51:35s 0:08:25 -
-Rule sol87 1987 only - Sep 27 11:51:10s 0:08:50 -
-Rule sol87 1987 only - Sep 28 11:50:50s 0:09:10 -
-Rule sol87 1987 only - Sep 29 11:50:30s 0:09:30 -
-Rule sol87 1987 only - Sep 30 11:50:10s 0:09:50 -
-Rule sol87 1987 only - Oct 1 11:49:50s 0:10:10 -
-Rule sol87 1987 only - Oct 2 11:49:35s 0:10:25 -
-Rule sol87 1987 only - Oct 3 11:49:15s 0:10:45 -
-Rule sol87 1987 only - Oct 4 11:48:55s 0:11:05 -
-Rule sol87 1987 only - Oct 5 11:48:35s 0:11:25 -
-Rule sol87 1987 only - Oct 6 11:48:20s 0:11:40 -
-Rule sol87 1987 only - Oct 7 11:48:00s 0:12:00 -
-Rule sol87 1987 only - Oct 8 11:47:45s 0:12:15 -
-Rule sol87 1987 only - Oct 9 11:47:25s 0:12:35 -
-Rule sol87 1987 only - Oct 10 11:47:10s 0:12:50 -
-Rule sol87 1987 only - Oct 11 11:46:55s 0:13:05 -
-Rule sol87 1987 only - Oct 12 11:46:40s 0:13:20 -
-Rule sol87 1987 only - Oct 13 11:46:25s 0:13:35 -
-Rule sol87 1987 only - Oct 14 11:46:10s 0:13:50 -
-Rule sol87 1987 only - Oct 15 11:45:55s 0:14:05 -
-Rule sol87 1987 only - Oct 16 11:45:45s 0:14:15 -
-Rule sol87 1987 only - Oct 17 11:45:30s 0:14:30 -
-Rule sol87 1987 only - Oct 18 11:45:20s 0:14:40 -
-Rule sol87 1987 only - Oct 19 11:45:05s 0:14:55 -
-Rule sol87 1987 only - Oct 20 11:44:55s 0:15:05 -
-Rule sol87 1987 only - Oct 21 11:44:45s 0:15:15 -
-Rule sol87 1987 only - Oct 22 11:44:35s 0:15:25 -
-Rule sol87 1987 only - Oct 23 11:44:25s 0:15:35 -
-Rule sol87 1987 only - Oct 24 11:44:20s 0:15:40 -
-Rule sol87 1987 only - Oct 25 11:44:10s 0:15:50 -
-Rule sol87 1987 only - Oct 26 11:44:05s 0:15:55 -
-Rule sol87 1987 only - Oct 27 11:43:55s 0:16:05 -
-Rule sol87 1987 only - Oct 28 11:43:50s 0:16:10 -
-Rule sol87 1987 only - Oct 29 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Oct 30 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Oct 31 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 1 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 3 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 5 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 6 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 7 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol87 1987 only - Nov 10 11:43:55s 0:16:05 -
-Rule sol87 1987 only - Nov 11 11:44:00s 0:16:00 -
-Rule sol87 1987 only - Nov 12 11:44:05s 0:15:55 -
-Rule sol87 1987 only - Nov 13 11:44:15s 0:15:45 -
-Rule sol87 1987 only - Nov 14 11:44:20s 0:15:40 -
-Rule sol87 1987 only - Nov 15 11:44:30s 0:15:30 -
-Rule sol87 1987 only - Nov 16 11:44:40s 0:15:20 -
-Rule sol87 1987 only - Nov 17 11:44:50s 0:15:10 -
-Rule sol87 1987 only - Nov 18 11:45:05s 0:14:55 -
-Rule sol87 1987 only - Nov 19 11:45:15s 0:14:45 -
-Rule sol87 1987 only - Nov 20 11:45:30s 0:14:30 -
-Rule sol87 1987 only - Nov 21 11:45:45s 0:14:15 -
-Rule sol87 1987 only - Nov 22 11:46:00s 0:14:00 -
-Rule sol87 1987 only - Nov 23 11:46:15s 0:13:45 -
-Rule sol87 1987 only - Nov 24 11:46:30s 0:13:30 -
-Rule sol87 1987 only - Nov 25 11:46:50s 0:13:10 -
-Rule sol87 1987 only - Nov 26 11:47:10s 0:12:50 -
-Rule sol87 1987 only - Nov 27 11:47:25s 0:12:35 -
-Rule sol87 1987 only - Nov 28 11:47:45s 0:12:15 -
-Rule sol87 1987 only - Nov 29 11:48:05s 0:11:55 -
-Rule sol87 1987 only - Nov 30 11:48:30s 0:11:30 -
-Rule sol87 1987 only - Dec 1 11:48:50s 0:11:10 -
-Rule sol87 1987 only - Dec 2 11:49:10s 0:10:50 -
-Rule sol87 1987 only - Dec 3 11:49:35s 0:10:25 -
-Rule sol87 1987 only - Dec 4 11:50:00s 0:10:00 -
-Rule sol87 1987 only - Dec 5 11:50:25s 0:09:35 -
-Rule sol87 1987 only - Dec 6 11:50:50s 0:09:10 -
-Rule sol87 1987 only - Dec 7 11:51:15s 0:08:45 -
-Rule sol87 1987 only - Dec 8 11:51:40s 0:08:20 -
-Rule sol87 1987 only - Dec 9 11:52:05s 0:07:55 -
-Rule sol87 1987 only - Dec 10 11:52:30s 0:07:30 -
-Rule sol87 1987 only - Dec 11 11:53:00s 0:07:00 -
-Rule sol87 1987 only - Dec 12 11:53:25s 0:06:35 -
-Rule sol87 1987 only - Dec 13 11:53:55s 0:06:05 -
-Rule sol87 1987 only - Dec 14 11:54:25s 0:05:35 -
-Rule sol87 1987 only - Dec 15 11:54:50s 0:05:10 -
-Rule sol87 1987 only - Dec 16 11:55:20s 0:04:40 -
-Rule sol87 1987 only - Dec 17 11:55:50s 0:04:10 -
-Rule sol87 1987 only - Dec 18 11:56:20s 0:03:40 -
-Rule sol87 1987 only - Dec 19 11:56:50s 0:03:10 -
-Rule sol87 1987 only - Dec 20 11:57:20s 0:02:40 -
-Rule sol87 1987 only - Dec 21 11:57:50s 0:02:10 -
-Rule sol87 1987 only - Dec 22 11:58:20s 0:01:40 -
-Rule sol87 1987 only - Dec 23 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Dec 24 11:59:20s 0:00:40 -
-Rule sol87 1987 only - Dec 25 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Dec 26 12:00:20s -0:00:20 -
-Rule sol87 1987 only - Dec 27 12:00:45s -0:00:45 -
-Rule sol87 1987 only - Dec 28 12:01:15s -0:01:15 -
-Rule sol87 1987 only - Dec 29 12:01:45s -0:01:45 -
-Rule sol87 1987 only - Dec 30 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Dec 31 12:02:45s -0:02:45 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1987, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh87 3:07:04 - zzz 1987
- 3:07:04 sol87 zzz 1988
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh87 Mideast/Riyadh87
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar88 b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar88
deleted file mode 100755
index bb1d6ca97..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar88
+++ /dev/null
@@ -1,390 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol88 1988 only - Jan 1 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Jan 2 12:03:40s -0:03:40 -
-Rule sol88 1988 only - Jan 3 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Jan 4 12:04:40s -0:04:40 -
-Rule sol88 1988 only - Jan 5 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Jan 6 12:05:30s -0:05:30 -
-Rule sol88 1988 only - Jan 7 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Jan 8 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jan 9 12:06:50s -0:06:50 -
-Rule sol88 1988 only - Jan 10 12:07:15s -0:07:15 -
-Rule sol88 1988 only - Jan 11 12:07:40s -0:07:40 -
-Rule sol88 1988 only - Jan 12 12:08:05s -0:08:05 -
-Rule sol88 1988 only - Jan 13 12:08:25s -0:08:25 -
-Rule sol88 1988 only - Jan 14 12:08:50s -0:08:50 -
-Rule sol88 1988 only - Jan 15 12:09:10s -0:09:10 -
-Rule sol88 1988 only - Jan 16 12:09:30s -0:09:30 -
-Rule sol88 1988 only - Jan 17 12:09:50s -0:09:50 -
-Rule sol88 1988 only - Jan 18 12:10:10s -0:10:10 -
-Rule sol88 1988 only - Jan 19 12:10:30s -0:10:30 -
-Rule sol88 1988 only - Jan 20 12:10:50s -0:10:50 -
-Rule sol88 1988 only - Jan 21 12:11:05s -0:11:05 -
-Rule sol88 1988 only - Jan 22 12:11:25s -0:11:25 -
-Rule sol88 1988 only - Jan 23 12:11:40s -0:11:40 -
-Rule sol88 1988 only - Jan 24 12:11:55s -0:11:55 -
-Rule sol88 1988 only - Jan 25 12:12:10s -0:12:10 -
-Rule sol88 1988 only - Jan 26 12:12:25s -0:12:25 -
-Rule sol88 1988 only - Jan 27 12:12:40s -0:12:40 -
-Rule sol88 1988 only - Jan 28 12:12:50s -0:12:50 -
-Rule sol88 1988 only - Jan 29 12:13:00s -0:13:00 -
-Rule sol88 1988 only - Jan 30 12:13:10s -0:13:10 -
-Rule sol88 1988 only - Jan 31 12:13:20s -0:13:20 -
-Rule sol88 1988 only - Feb 1 12:13:30s -0:13:30 -
-Rule sol88 1988 only - Feb 2 12:13:40s -0:13:40 -
-Rule sol88 1988 only - Feb 3 12:13:45s -0:13:45 -
-Rule sol88 1988 only - Feb 4 12:13:55s -0:13:55 -
-Rule sol88 1988 only - Feb 5 12:14:00s -0:14:00 -
-Rule sol88 1988 only - Feb 6 12:14:05s -0:14:05 -
-Rule sol88 1988 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 8 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 10 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 11 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 12 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol88 1988 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol88 1988 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol88 1988 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol88 1988 only - Feb 21 12:13:45s -0:13:45 -
-Rule sol88 1988 only - Feb 22 12:13:40s -0:13:40 -
-Rule sol88 1988 only - Feb 23 12:13:30s -0:13:30 -
-Rule sol88 1988 only - Feb 24 12:13:20s -0:13:20 -
-Rule sol88 1988 only - Feb 25 12:13:15s -0:13:15 -
-Rule sol88 1988 only - Feb 26 12:13:05s -0:13:05 -
-Rule sol88 1988 only - Feb 27 12:12:55s -0:12:55 -
-Rule sol88 1988 only - Feb 28 12:12:45s -0:12:45 -
-Rule sol88 1988 only - Feb 29 12:12:30s -0:12:30 -
-Rule sol88 1988 only - Mar 1 12:12:20s -0:12:20 -
-Rule sol88 1988 only - Mar 2 12:12:10s -0:12:10 -
-Rule sol88 1988 only - Mar 3 12:11:55s -0:11:55 -
-Rule sol88 1988 only - Mar 4 12:11:45s -0:11:45 -
-Rule sol88 1988 only - Mar 5 12:11:30s -0:11:30 -
-Rule sol88 1988 only - Mar 6 12:11:15s -0:11:15 -
-Rule sol88 1988 only - Mar 7 12:11:00s -0:11:00 -
-Rule sol88 1988 only - Mar 8 12:10:45s -0:10:45 -
-Rule sol88 1988 only - Mar 9 12:10:30s -0:10:30 -
-Rule sol88 1988 only - Mar 10 12:10:15s -0:10:15 -
-Rule sol88 1988 only - Mar 11 12:10:00s -0:10:00 -
-Rule sol88 1988 only - Mar 12 12:09:45s -0:09:45 -
-Rule sol88 1988 only - Mar 13 12:09:30s -0:09:30 -
-Rule sol88 1988 only - Mar 14 12:09:10s -0:09:10 -
-Rule sol88 1988 only - Mar 15 12:08:55s -0:08:55 -
-Rule sol88 1988 only - Mar 16 12:08:40s -0:08:40 -
-Rule sol88 1988 only - Mar 17 12:08:20s -0:08:20 -
-Rule sol88 1988 only - Mar 18 12:08:05s -0:08:05 -
-Rule sol88 1988 only - Mar 19 12:07:45s -0:07:45 -
-Rule sol88 1988 only - Mar 20 12:07:30s -0:07:30 -
-Rule sol88 1988 only - Mar 21 12:07:10s -0:07:10 -
-Rule sol88 1988 only - Mar 22 12:06:50s -0:06:50 -
-Rule sol88 1988 only - Mar 23 12:06:35s -0:06:35 -
-Rule sol88 1988 only - Mar 24 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Mar 25 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Mar 26 12:05:40s -0:05:40 -
-Rule sol88 1988 only - Mar 27 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Mar 28 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Mar 29 12:04:45s -0:04:45 -
-Rule sol88 1988 only - Mar 30 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Mar 31 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Apr 1 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Apr 2 12:03:35s -0:03:35 -
-Rule sol88 1988 only - Apr 3 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Apr 4 12:03:00s -0:03:00 -
-Rule sol88 1988 only - Apr 5 12:02:40s -0:02:40 -
-Rule sol88 1988 only - Apr 6 12:02:25s -0:02:25 -
-Rule sol88 1988 only - Apr 7 12:02:05s -0:02:05 -
-Rule sol88 1988 only - Apr 8 12:01:50s -0:01:50 -
-Rule sol88 1988 only - Apr 9 12:01:35s -0:01:35 -
-Rule sol88 1988 only - Apr 10 12:01:15s -0:01:15 -
-Rule sol88 1988 only - Apr 11 12:01:00s -0:01:00 -
-Rule sol88 1988 only - Apr 12 12:00:45s -0:00:45 -
-Rule sol88 1988 only - Apr 13 12:00:30s -0:00:30 -
-Rule sol88 1988 only - Apr 14 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Apr 15 12:00:00s 0:00:00 -
-Rule sol88 1988 only - Apr 16 11:59:45s 0:00:15 -
-Rule sol88 1988 only - Apr 17 11:59:30s 0:00:30 -
-Rule sol88 1988 only - Apr 18 11:59:20s 0:00:40 -
-Rule sol88 1988 only - Apr 19 11:59:05s 0:00:55 -
-Rule sol88 1988 only - Apr 20 11:58:55s 0:01:05 -
-Rule sol88 1988 only - Apr 21 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Apr 22 11:58:30s 0:01:30 -
-Rule sol88 1988 only - Apr 23 11:58:15s 0:01:45 -
-Rule sol88 1988 only - Apr 24 11:58:05s 0:01:55 -
-Rule sol88 1988 only - Apr 25 11:57:55s 0:02:05 -
-Rule sol88 1988 only - Apr 26 11:57:45s 0:02:15 -
-Rule sol88 1988 only - Apr 27 11:57:35s 0:02:25 -
-Rule sol88 1988 only - Apr 28 11:57:30s 0:02:30 -
-Rule sol88 1988 only - Apr 29 11:57:20s 0:02:40 -
-Rule sol88 1988 only - Apr 30 11:57:10s 0:02:50 -
-Rule sol88 1988 only - May 1 11:57:05s 0:02:55 -
-Rule sol88 1988 only - May 2 11:56:55s 0:03:05 -
-Rule sol88 1988 only - May 3 11:56:50s 0:03:10 -
-Rule sol88 1988 only - May 4 11:56:45s 0:03:15 -
-Rule sol88 1988 only - May 5 11:56:40s 0:03:20 -
-Rule sol88 1988 only - May 6 11:56:35s 0:03:25 -
-Rule sol88 1988 only - May 7 11:56:30s 0:03:30 -
-Rule sol88 1988 only - May 8 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 9 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 10 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 11 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 12 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 13 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 14 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 15 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 16 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 17 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 18 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 19 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 20 11:56:30s 0:03:30 -
-Rule sol88 1988 only - May 21 11:56:35s 0:03:25 -
-Rule sol88 1988 only - May 22 11:56:40s 0:03:20 -
-Rule sol88 1988 only - May 23 11:56:45s 0:03:15 -
-Rule sol88 1988 only - May 24 11:56:50s 0:03:10 -
-Rule sol88 1988 only - May 25 11:56:55s 0:03:05 -
-Rule sol88 1988 only - May 26 11:57:00s 0:03:00 -
-Rule sol88 1988 only - May 27 11:57:05s 0:02:55 -
-Rule sol88 1988 only - May 28 11:57:15s 0:02:45 -
-Rule sol88 1988 only - May 29 11:57:20s 0:02:40 -
-Rule sol88 1988 only - May 30 11:57:30s 0:02:30 -
-Rule sol88 1988 only - May 31 11:57:40s 0:02:20 -
-Rule sol88 1988 only - Jun 1 11:57:50s 0:02:10 -
-Rule sol88 1988 only - Jun 2 11:57:55s 0:02:05 -
-Rule sol88 1988 only - Jun 3 11:58:05s 0:01:55 -
-Rule sol88 1988 only - Jun 4 11:58:15s 0:01:45 -
-Rule sol88 1988 only - Jun 5 11:58:30s 0:01:30 -
-Rule sol88 1988 only - Jun 6 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Jun 7 11:58:50s 0:01:10 -
-Rule sol88 1988 only - Jun 8 11:59:00s 0:01:00 -
-Rule sol88 1988 only - Jun 9 11:59:15s 0:00:45 -
-Rule sol88 1988 only - Jun 10 11:59:25s 0:00:35 -
-Rule sol88 1988 only - Jun 11 11:59:35s 0:00:25 -
-Rule sol88 1988 only - Jun 12 11:59:50s 0:00:10 -
-Rule sol88 1988 only - Jun 13 12:00:00s 0:00:00 -
-Rule sol88 1988 only - Jun 14 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Jun 15 12:00:25s -0:00:25 -
-Rule sol88 1988 only - Jun 16 12:00:40s -0:00:40 -
-Rule sol88 1988 only - Jun 17 12:00:55s -0:00:55 -
-Rule sol88 1988 only - Jun 18 12:01:05s -0:01:05 -
-Rule sol88 1988 only - Jun 19 12:01:20s -0:01:20 -
-Rule sol88 1988 only - Jun 20 12:01:30s -0:01:30 -
-Rule sol88 1988 only - Jun 21 12:01:45s -0:01:45 -
-Rule sol88 1988 only - Jun 22 12:02:00s -0:02:00 -
-Rule sol88 1988 only - Jun 23 12:02:10s -0:02:10 -
-Rule sol88 1988 only - Jun 24 12:02:25s -0:02:25 -
-Rule sol88 1988 only - Jun 25 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Jun 26 12:02:50s -0:02:50 -
-Rule sol88 1988 only - Jun 27 12:03:00s -0:03:00 -
-Rule sol88 1988 only - Jun 28 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Jun 29 12:03:25s -0:03:25 -
-Rule sol88 1988 only - Jun 30 12:03:40s -0:03:40 -
-Rule sol88 1988 only - Jul 1 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Jul 2 12:04:00s -0:04:00 -
-Rule sol88 1988 only - Jul 3 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Jul 4 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Jul 5 12:04:35s -0:04:35 -
-Rule sol88 1988 only - Jul 6 12:04:45s -0:04:45 -
-Rule sol88 1988 only - Jul 7 12:04:55s -0:04:55 -
-Rule sol88 1988 only - Jul 8 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Jul 9 12:05:10s -0:05:10 -
-Rule sol88 1988 only - Jul 10 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Jul 11 12:05:30s -0:05:30 -
-Rule sol88 1988 only - Jul 12 12:05:35s -0:05:35 -
-Rule sol88 1988 only - Jul 13 12:05:45s -0:05:45 -
-Rule sol88 1988 only - Jul 14 12:05:50s -0:05:50 -
-Rule sol88 1988 only - Jul 15 12:05:55s -0:05:55 -
-Rule sol88 1988 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol88 1988 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol88 1988 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Jul 20 12:06:20s -0:06:20 -
-Rule sol88 1988 only - Jul 21 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 24 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 31 12:06:20s -0:06:20 -
-Rule sol88 1988 only - Aug 1 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol88 1988 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol88 1988 only - Aug 5 12:05:55s -0:05:55 -
-Rule sol88 1988 only - Aug 6 12:05:50s -0:05:50 -
-Rule sol88 1988 only - Aug 7 12:05:45s -0:05:45 -
-Rule sol88 1988 only - Aug 8 12:05:35s -0:05:35 -
-Rule sol88 1988 only - Aug 9 12:05:25s -0:05:25 -
-Rule sol88 1988 only - Aug 10 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Aug 11 12:05:10s -0:05:10 -
-Rule sol88 1988 only - Aug 12 12:05:00s -0:05:00 -
-Rule sol88 1988 only - Aug 13 12:04:50s -0:04:50 -
-Rule sol88 1988 only - Aug 14 12:04:35s -0:04:35 -
-Rule sol88 1988 only - Aug 15 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Aug 16 12:04:15s -0:04:15 -
-Rule sol88 1988 only - Aug 17 12:04:00s -0:04:00 -
-Rule sol88 1988 only - Aug 18 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Aug 19 12:03:35s -0:03:35 -
-Rule sol88 1988 only - Aug 20 12:03:20s -0:03:20 -
-Rule sol88 1988 only - Aug 21 12:03:05s -0:03:05 -
-Rule sol88 1988 only - Aug 22 12:02:50s -0:02:50 -
-Rule sol88 1988 only - Aug 23 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Aug 24 12:02:20s -0:02:20 -
-Rule sol88 1988 only - Aug 25 12:02:00s -0:02:00 -
-Rule sol88 1988 only - Aug 26 12:01:45s -0:01:45 -
-Rule sol88 1988 only - Aug 27 12:01:30s -0:01:30 -
-Rule sol88 1988 only - Aug 28 12:01:10s -0:01:10 -
-Rule sol88 1988 only - Aug 29 12:00:50s -0:00:50 -
-Rule sol88 1988 only - Aug 30 12:00:35s -0:00:35 -
-Rule sol88 1988 only - Aug 31 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Sep 1 11:59:55s 0:00:05 -
-Rule sol88 1988 only - Sep 2 11:59:35s 0:00:25 -
-Rule sol88 1988 only - Sep 3 11:59:20s 0:00:40 -
-Rule sol88 1988 only - Sep 4 11:59:00s 0:01:00 -
-Rule sol88 1988 only - Sep 5 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Sep 6 11:58:20s 0:01:40 -
-Rule sol88 1988 only - Sep 7 11:58:00s 0:02:00 -
-Rule sol88 1988 only - Sep 8 11:57:35s 0:02:25 -
-Rule sol88 1988 only - Sep 9 11:57:15s 0:02:45 -
-Rule sol88 1988 only - Sep 10 11:56:55s 0:03:05 -
-Rule sol88 1988 only - Sep 11 11:56:35s 0:03:25 -
-Rule sol88 1988 only - Sep 12 11:56:15s 0:03:45 -
-Rule sol88 1988 only - Sep 13 11:55:50s 0:04:10 -
-Rule sol88 1988 only - Sep 14 11:55:30s 0:04:30 -
-Rule sol88 1988 only - Sep 15 11:55:10s 0:04:50 -
-Rule sol88 1988 only - Sep 16 11:54:50s 0:05:10 -
-Rule sol88 1988 only - Sep 17 11:54:25s 0:05:35 -
-Rule sol88 1988 only - Sep 18 11:54:05s 0:05:55 -
-Rule sol88 1988 only - Sep 19 11:53:45s 0:06:15 -
-Rule sol88 1988 only - Sep 20 11:53:25s 0:06:35 -
-Rule sol88 1988 only - Sep 21 11:53:00s 0:07:00 -
-Rule sol88 1988 only - Sep 22 11:52:40s 0:07:20 -
-Rule sol88 1988 only - Sep 23 11:52:20s 0:07:40 -
-Rule sol88 1988 only - Sep 24 11:52:00s 0:08:00 -
-Rule sol88 1988 only - Sep 25 11:51:40s 0:08:20 -
-Rule sol88 1988 only - Sep 26 11:51:15s 0:08:45 -
-Rule sol88 1988 only - Sep 27 11:50:55s 0:09:05 -
-Rule sol88 1988 only - Sep 28 11:50:35s 0:09:25 -
-Rule sol88 1988 only - Sep 29 11:50:15s 0:09:45 -
-Rule sol88 1988 only - Sep 30 11:49:55s 0:10:05 -
-Rule sol88 1988 only - Oct 1 11:49:35s 0:10:25 -
-Rule sol88 1988 only - Oct 2 11:49:20s 0:10:40 -
-Rule sol88 1988 only - Oct 3 11:49:00s 0:11:00 -
-Rule sol88 1988 only - Oct 4 11:48:40s 0:11:20 -
-Rule sol88 1988 only - Oct 5 11:48:25s 0:11:35 -
-Rule sol88 1988 only - Oct 6 11:48:05s 0:11:55 -
-Rule sol88 1988 only - Oct 7 11:47:50s 0:12:10 -
-Rule sol88 1988 only - Oct 8 11:47:30s 0:12:30 -
-Rule sol88 1988 only - Oct 9 11:47:15s 0:12:45 -
-Rule sol88 1988 only - Oct 10 11:47:00s 0:13:00 -
-Rule sol88 1988 only - Oct 11 11:46:45s 0:13:15 -
-Rule sol88 1988 only - Oct 12 11:46:30s 0:13:30 -
-Rule sol88 1988 only - Oct 13 11:46:15s 0:13:45 -
-Rule sol88 1988 only - Oct 14 11:46:00s 0:14:00 -
-Rule sol88 1988 only - Oct 15 11:45:45s 0:14:15 -
-Rule sol88 1988 only - Oct 16 11:45:35s 0:14:25 -
-Rule sol88 1988 only - Oct 17 11:45:20s 0:14:40 -
-Rule sol88 1988 only - Oct 18 11:45:10s 0:14:50 -
-Rule sol88 1988 only - Oct 19 11:45:00s 0:15:00 -
-Rule sol88 1988 only - Oct 20 11:44:45s 0:15:15 -
-Rule sol88 1988 only - Oct 21 11:44:40s 0:15:20 -
-Rule sol88 1988 only - Oct 22 11:44:30s 0:15:30 -
-Rule sol88 1988 only - Oct 23 11:44:20s 0:15:40 -
-Rule sol88 1988 only - Oct 24 11:44:10s 0:15:50 -
-Rule sol88 1988 only - Oct 25 11:44:05s 0:15:55 -
-Rule sol88 1988 only - Oct 26 11:44:00s 0:16:00 -
-Rule sol88 1988 only - Oct 27 11:43:55s 0:16:05 -
-Rule sol88 1988 only - Oct 28 11:43:50s 0:16:10 -
-Rule sol88 1988 only - Oct 29 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Oct 30 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Oct 31 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 1 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 3 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 5 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 6 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 7 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol88 1988 only - Nov 10 11:44:00s 0:16:00 -
-Rule sol88 1988 only - Nov 11 11:44:05s 0:15:55 -
-Rule sol88 1988 only - Nov 12 11:44:10s 0:15:50 -
-Rule sol88 1988 only - Nov 13 11:44:20s 0:15:40 -
-Rule sol88 1988 only - Nov 14 11:44:30s 0:15:30 -
-Rule sol88 1988 only - Nov 15 11:44:40s 0:15:20 -
-Rule sol88 1988 only - Nov 16 11:44:50s 0:15:10 -
-Rule sol88 1988 only - Nov 17 11:45:00s 0:15:00 -
-Rule sol88 1988 only - Nov 18 11:45:15s 0:14:45 -
-Rule sol88 1988 only - Nov 19 11:45:25s 0:14:35 -
-Rule sol88 1988 only - Nov 20 11:45:40s 0:14:20 -
-Rule sol88 1988 only - Nov 21 11:45:55s 0:14:05 -
-Rule sol88 1988 only - Nov 22 11:46:10s 0:13:50 -
-Rule sol88 1988 only - Nov 23 11:46:30s 0:13:30 -
-Rule sol88 1988 only - Nov 24 11:46:45s 0:13:15 -
-Rule sol88 1988 only - Nov 25 11:47:05s 0:12:55 -
-Rule sol88 1988 only - Nov 26 11:47:20s 0:12:40 -
-Rule sol88 1988 only - Nov 27 11:47:40s 0:12:20 -
-Rule sol88 1988 only - Nov 28 11:48:00s 0:12:00 -
-Rule sol88 1988 only - Nov 29 11:48:25s 0:11:35 -
-Rule sol88 1988 only - Nov 30 11:48:45s 0:11:15 -
-Rule sol88 1988 only - Dec 1 11:49:05s 0:10:55 -
-Rule sol88 1988 only - Dec 2 11:49:30s 0:10:30 -
-Rule sol88 1988 only - Dec 3 11:49:55s 0:10:05 -
-Rule sol88 1988 only - Dec 4 11:50:15s 0:09:45 -
-Rule sol88 1988 only - Dec 5 11:50:40s 0:09:20 -
-Rule sol88 1988 only - Dec 6 11:51:05s 0:08:55 -
-Rule sol88 1988 only - Dec 7 11:51:35s 0:08:25 -
-Rule sol88 1988 only - Dec 8 11:52:00s 0:08:00 -
-Rule sol88 1988 only - Dec 9 11:52:25s 0:07:35 -
-Rule sol88 1988 only - Dec 10 11:52:55s 0:07:05 -
-Rule sol88 1988 only - Dec 11 11:53:20s 0:06:40 -
-Rule sol88 1988 only - Dec 12 11:53:50s 0:06:10 -
-Rule sol88 1988 only - Dec 13 11:54:15s 0:05:45 -
-Rule sol88 1988 only - Dec 14 11:54:45s 0:05:15 -
-Rule sol88 1988 only - Dec 15 11:55:15s 0:04:45 -
-Rule sol88 1988 only - Dec 16 11:55:45s 0:04:15 -
-Rule sol88 1988 only - Dec 17 11:56:15s 0:03:45 -
-Rule sol88 1988 only - Dec 18 11:56:40s 0:03:20 -
-Rule sol88 1988 only - Dec 19 11:57:10s 0:02:50 -
-Rule sol88 1988 only - Dec 20 11:57:40s 0:02:20 -
-Rule sol88 1988 only - Dec 21 11:58:10s 0:01:50 -
-Rule sol88 1988 only - Dec 22 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Dec 23 11:59:10s 0:00:50 -
-Rule sol88 1988 only - Dec 24 11:59:40s 0:00:20 -
-Rule sol88 1988 only - Dec 25 12:00:10s -0:00:10 -
-Rule sol88 1988 only - Dec 26 12:00:40s -0:00:40 -
-Rule sol88 1988 only - Dec 27 12:01:10s -0:01:10 -
-Rule sol88 1988 only - Dec 28 12:01:40s -0:01:40 -
-Rule sol88 1988 only - Dec 29 12:02:10s -0:02:10 -
-Rule sol88 1988 only - Dec 30 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Dec 31 12:03:05s -0:03:05 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1988, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh88 3:07:04 - zzz 1988
- 3:07:04 sol88 zzz 1989
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh88 Mideast/Riyadh88
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar89 b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar89
deleted file mode 100755
index af9323569..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/solar89
+++ /dev/null
@@ -1,395 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using a formula provided by the U. S. Naval Observatory:
-# eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l)
-# -12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l)
-# + 19.3 * cos(3 * l);
-# where l is the "mean longitude of the Sun" given by
-# l = 279.642 degrees + 0.985647 * d
-# and d is the interval in days from January 0, 0 hours Universal Time
-# (equaling the day of the year plus the fraction of a day from zero hours).
-# The accuracy of the formula is plus or minus three seconds.
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol89 1989 only - Jan 1 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Jan 2 12:04:05s -0:04:05 -
-Rule sol89 1989 only - Jan 3 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Jan 4 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Jan 5 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Jan 6 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Jan 7 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Jan 8 12:06:45s -0:06:45 -
-Rule sol89 1989 only - Jan 9 12:07:10s -0:07:10 -
-Rule sol89 1989 only - Jan 10 12:07:35s -0:07:35 -
-Rule sol89 1989 only - Jan 11 12:07:55s -0:07:55 -
-Rule sol89 1989 only - Jan 12 12:08:20s -0:08:20 -
-Rule sol89 1989 only - Jan 13 12:08:45s -0:08:45 -
-Rule sol89 1989 only - Jan 14 12:09:05s -0:09:05 -
-Rule sol89 1989 only - Jan 15 12:09:25s -0:09:25 -
-Rule sol89 1989 only - Jan 16 12:09:45s -0:09:45 -
-Rule sol89 1989 only - Jan 17 12:10:05s -0:10:05 -
-Rule sol89 1989 only - Jan 18 12:10:25s -0:10:25 -
-Rule sol89 1989 only - Jan 19 12:10:45s -0:10:45 -
-Rule sol89 1989 only - Jan 20 12:11:05s -0:11:05 -
-Rule sol89 1989 only - Jan 21 12:11:20s -0:11:20 -
-Rule sol89 1989 only - Jan 22 12:11:35s -0:11:35 -
-Rule sol89 1989 only - Jan 23 12:11:55s -0:11:55 -
-Rule sol89 1989 only - Jan 24 12:12:10s -0:12:10 -
-Rule sol89 1989 only - Jan 25 12:12:20s -0:12:20 -
-Rule sol89 1989 only - Jan 26 12:12:35s -0:12:35 -
-Rule sol89 1989 only - Jan 27 12:12:50s -0:12:50 -
-Rule sol89 1989 only - Jan 28 12:13:00s -0:13:00 -
-Rule sol89 1989 only - Jan 29 12:13:10s -0:13:10 -
-Rule sol89 1989 only - Jan 30 12:13:20s -0:13:20 -
-Rule sol89 1989 only - Jan 31 12:13:30s -0:13:30 -
-Rule sol89 1989 only - Feb 1 12:13:40s -0:13:40 -
-Rule sol89 1989 only - Feb 2 12:13:45s -0:13:45 -
-Rule sol89 1989 only - Feb 3 12:13:55s -0:13:55 -
-Rule sol89 1989 only - Feb 4 12:14:00s -0:14:00 -
-Rule sol89 1989 only - Feb 5 12:14:05s -0:14:05 -
-Rule sol89 1989 only - Feb 6 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 8 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 10 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 11 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 12 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol89 1989 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol89 1989 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol89 1989 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol89 1989 only - Feb 21 12:13:40s -0:13:40 -
-Rule sol89 1989 only - Feb 22 12:13:35s -0:13:35 -
-Rule sol89 1989 only - Feb 23 12:13:25s -0:13:25 -
-Rule sol89 1989 only - Feb 24 12:13:15s -0:13:15 -
-Rule sol89 1989 only - Feb 25 12:13:05s -0:13:05 -
-Rule sol89 1989 only - Feb 26 12:12:55s -0:12:55 -
-Rule sol89 1989 only - Feb 27 12:12:45s -0:12:45 -
-Rule sol89 1989 only - Feb 28 12:12:35s -0:12:35 -
-Rule sol89 1989 only - Mar 1 12:12:25s -0:12:25 -
-Rule sol89 1989 only - Mar 2 12:12:10s -0:12:10 -
-Rule sol89 1989 only - Mar 3 12:12:00s -0:12:00 -
-Rule sol89 1989 only - Mar 4 12:11:45s -0:11:45 -
-Rule sol89 1989 only - Mar 5 12:11:35s -0:11:35 -
-Rule sol89 1989 only - Mar 6 12:11:20s -0:11:20 -
-Rule sol89 1989 only - Mar 7 12:11:05s -0:11:05 -
-Rule sol89 1989 only - Mar 8 12:10:50s -0:10:50 -
-Rule sol89 1989 only - Mar 9 12:10:35s -0:10:35 -
-Rule sol89 1989 only - Mar 10 12:10:20s -0:10:20 -
-Rule sol89 1989 only - Mar 11 12:10:05s -0:10:05 -
-Rule sol89 1989 only - Mar 12 12:09:50s -0:09:50 -
-Rule sol89 1989 only - Mar 13 12:09:30s -0:09:30 -
-Rule sol89 1989 only - Mar 14 12:09:15s -0:09:15 -
-Rule sol89 1989 only - Mar 15 12:09:00s -0:09:00 -
-Rule sol89 1989 only - Mar 16 12:08:40s -0:08:40 -
-Rule sol89 1989 only - Mar 17 12:08:25s -0:08:25 -
-Rule sol89 1989 only - Mar 18 12:08:05s -0:08:05 -
-Rule sol89 1989 only - Mar 19 12:07:50s -0:07:50 -
-Rule sol89 1989 only - Mar 20 12:07:30s -0:07:30 -
-Rule sol89 1989 only - Mar 21 12:07:15s -0:07:15 -
-Rule sol89 1989 only - Mar 22 12:06:55s -0:06:55 -
-Rule sol89 1989 only - Mar 23 12:06:35s -0:06:35 -
-Rule sol89 1989 only - Mar 24 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Mar 25 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Mar 26 12:05:40s -0:05:40 -
-Rule sol89 1989 only - Mar 27 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Mar 28 12:05:05s -0:05:05 -
-Rule sol89 1989 only - Mar 29 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Mar 30 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Mar 31 12:04:10s -0:04:10 -
-Rule sol89 1989 only - Apr 1 12:03:55s -0:03:55 -
-Rule sol89 1989 only - Apr 2 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Apr 3 12:03:20s -0:03:20 -
-Rule sol89 1989 only - Apr 4 12:03:00s -0:03:00 -
-Rule sol89 1989 only - Apr 5 12:02:45s -0:02:45 -
-Rule sol89 1989 only - Apr 6 12:02:25s -0:02:25 -
-Rule sol89 1989 only - Apr 7 12:02:10s -0:02:10 -
-Rule sol89 1989 only - Apr 8 12:01:50s -0:01:50 -
-Rule sol89 1989 only - Apr 9 12:01:35s -0:01:35 -
-Rule sol89 1989 only - Apr 10 12:01:20s -0:01:20 -
-Rule sol89 1989 only - Apr 11 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Apr 12 12:00:50s -0:00:50 -
-Rule sol89 1989 only - Apr 13 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Apr 14 12:00:20s -0:00:20 -
-Rule sol89 1989 only - Apr 15 12:00:05s -0:00:05 -
-Rule sol89 1989 only - Apr 16 11:59:50s 0:00:10 -
-Rule sol89 1989 only - Apr 17 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Apr 18 11:59:20s 0:00:40 -
-Rule sol89 1989 only - Apr 19 11:59:10s 0:00:50 -
-Rule sol89 1989 only - Apr 20 11:58:55s 0:01:05 -
-Rule sol89 1989 only - Apr 21 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Apr 22 11:58:30s 0:01:30 -
-Rule sol89 1989 only - Apr 23 11:58:20s 0:01:40 -
-Rule sol89 1989 only - Apr 24 11:58:10s 0:01:50 -
-Rule sol89 1989 only - Apr 25 11:58:00s 0:02:00 -
-Rule sol89 1989 only - Apr 26 11:57:50s 0:02:10 -
-Rule sol89 1989 only - Apr 27 11:57:40s 0:02:20 -
-Rule sol89 1989 only - Apr 28 11:57:30s 0:02:30 -
-Rule sol89 1989 only - Apr 29 11:57:20s 0:02:40 -
-Rule sol89 1989 only - Apr 30 11:57:15s 0:02:45 -
-Rule sol89 1989 only - May 1 11:57:05s 0:02:55 -
-Rule sol89 1989 only - May 2 11:57:00s 0:03:00 -
-Rule sol89 1989 only - May 3 11:56:50s 0:03:10 -
-Rule sol89 1989 only - May 4 11:56:45s 0:03:15 -
-Rule sol89 1989 only - May 5 11:56:40s 0:03:20 -
-Rule sol89 1989 only - May 6 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 7 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 8 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 9 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 10 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 11 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 12 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 13 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 14 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 15 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 16 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 17 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 18 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 19 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 20 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 21 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 22 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 23 11:56:40s 0:03:20 -
-Rule sol89 1989 only - May 24 11:56:45s 0:03:15 -
-Rule sol89 1989 only - May 25 11:56:55s 0:03:05 -
-Rule sol89 1989 only - May 26 11:57:00s 0:03:00 -
-Rule sol89 1989 only - May 27 11:57:05s 0:02:55 -
-Rule sol89 1989 only - May 28 11:57:15s 0:02:45 -
-Rule sol89 1989 only - May 29 11:57:20s 0:02:40 -
-Rule sol89 1989 only - May 30 11:57:30s 0:02:30 -
-Rule sol89 1989 only - May 31 11:57:35s 0:02:25 -
-Rule sol89 1989 only - Jun 1 11:57:45s 0:02:15 -
-Rule sol89 1989 only - Jun 2 11:57:55s 0:02:05 -
-Rule sol89 1989 only - Jun 3 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Jun 4 11:58:15s 0:01:45 -
-Rule sol89 1989 only - Jun 5 11:58:25s 0:01:35 -
-Rule sol89 1989 only - Jun 6 11:58:35s 0:01:25 -
-Rule sol89 1989 only - Jun 7 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Jun 8 11:59:00s 0:01:00 -
-Rule sol89 1989 only - Jun 9 11:59:10s 0:00:50 -
-Rule sol89 1989 only - Jun 10 11:59:20s 0:00:40 -
-Rule sol89 1989 only - Jun 11 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Jun 12 11:59:45s 0:00:15 -
-Rule sol89 1989 only - Jun 13 12:00:00s 0:00:00 -
-Rule sol89 1989 only - Jun 14 12:00:10s -0:00:10 -
-Rule sol89 1989 only - Jun 15 12:00:25s -0:00:25 -
-Rule sol89 1989 only - Jun 16 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Jun 17 12:00:50s -0:00:50 -
-Rule sol89 1989 only - Jun 18 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Jun 19 12:01:15s -0:01:15 -
-Rule sol89 1989 only - Jun 20 12:01:30s -0:01:30 -
-Rule sol89 1989 only - Jun 21 12:01:40s -0:01:40 -
-Rule sol89 1989 only - Jun 22 12:01:55s -0:01:55 -
-Rule sol89 1989 only - Jun 23 12:02:10s -0:02:10 -
-Rule sol89 1989 only - Jun 24 12:02:20s -0:02:20 -
-Rule sol89 1989 only - Jun 25 12:02:35s -0:02:35 -
-Rule sol89 1989 only - Jun 26 12:02:45s -0:02:45 -
-Rule sol89 1989 only - Jun 27 12:03:00s -0:03:00 -
-Rule sol89 1989 only - Jun 28 12:03:10s -0:03:10 -
-Rule sol89 1989 only - Jun 29 12:03:25s -0:03:25 -
-Rule sol89 1989 only - Jun 30 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Jul 1 12:03:45s -0:03:45 -
-Rule sol89 1989 only - Jul 2 12:04:00s -0:04:00 -
-Rule sol89 1989 only - Jul 3 12:04:10s -0:04:10 -
-Rule sol89 1989 only - Jul 4 12:04:20s -0:04:20 -
-Rule sol89 1989 only - Jul 5 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Jul 6 12:04:40s -0:04:40 -
-Rule sol89 1989 only - Jul 7 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Jul 8 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Jul 9 12:05:10s -0:05:10 -
-Rule sol89 1989 only - Jul 10 12:05:20s -0:05:20 -
-Rule sol89 1989 only - Jul 11 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Jul 12 12:05:35s -0:05:35 -
-Rule sol89 1989 only - Jul 13 12:05:40s -0:05:40 -
-Rule sol89 1989 only - Jul 14 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Jul 15 12:05:55s -0:05:55 -
-Rule sol89 1989 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol89 1989 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol89 1989 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Jul 20 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Jul 21 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 24 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 31 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Aug 1 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol89 1989 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol89 1989 only - Aug 5 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Aug 6 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Aug 7 12:05:45s -0:05:45 -
-Rule sol89 1989 only - Aug 8 12:05:35s -0:05:35 -
-Rule sol89 1989 only - Aug 9 12:05:30s -0:05:30 -
-Rule sol89 1989 only - Aug 10 12:05:20s -0:05:20 -
-Rule sol89 1989 only - Aug 11 12:05:10s -0:05:10 -
-Rule sol89 1989 only - Aug 12 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Aug 13 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Aug 14 12:04:40s -0:04:40 -
-Rule sol89 1989 only - Aug 15 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Aug 16 12:04:15s -0:04:15 -
-Rule sol89 1989 only - Aug 17 12:04:05s -0:04:05 -
-Rule sol89 1989 only - Aug 18 12:03:50s -0:03:50 -
-Rule sol89 1989 only - Aug 19 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Aug 20 12:03:25s -0:03:25 -
-Rule sol89 1989 only - Aug 21 12:03:10s -0:03:10 -
-Rule sol89 1989 only - Aug 22 12:02:55s -0:02:55 -
-Rule sol89 1989 only - Aug 23 12:02:40s -0:02:40 -
-Rule sol89 1989 only - Aug 24 12:02:20s -0:02:20 -
-Rule sol89 1989 only - Aug 25 12:02:05s -0:02:05 -
-Rule sol89 1989 only - Aug 26 12:01:50s -0:01:50 -
-Rule sol89 1989 only - Aug 27 12:01:30s -0:01:30 -
-Rule sol89 1989 only - Aug 28 12:01:15s -0:01:15 -
-Rule sol89 1989 only - Aug 29 12:00:55s -0:00:55 -
-Rule sol89 1989 only - Aug 30 12:00:40s -0:00:40 -
-Rule sol89 1989 only - Aug 31 12:00:20s -0:00:20 -
-Rule sol89 1989 only - Sep 1 12:00:00s 0:00:00 -
-Rule sol89 1989 only - Sep 2 11:59:45s 0:00:15 -
-Rule sol89 1989 only - Sep 3 11:59:25s 0:00:35 -
-Rule sol89 1989 only - Sep 4 11:59:05s 0:00:55 -
-Rule sol89 1989 only - Sep 5 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Sep 6 11:58:25s 0:01:35 -
-Rule sol89 1989 only - Sep 7 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Sep 8 11:57:45s 0:02:15 -
-Rule sol89 1989 only - Sep 9 11:57:20s 0:02:40 -
-Rule sol89 1989 only - Sep 10 11:57:00s 0:03:00 -
-Rule sol89 1989 only - Sep 11 11:56:40s 0:03:20 -
-Rule sol89 1989 only - Sep 12 11:56:20s 0:03:40 -
-Rule sol89 1989 only - Sep 13 11:56:00s 0:04:00 -
-Rule sol89 1989 only - Sep 14 11:55:35s 0:04:25 -
-Rule sol89 1989 only - Sep 15 11:55:15s 0:04:45 -
-Rule sol89 1989 only - Sep 16 11:54:55s 0:05:05 -
-Rule sol89 1989 only - Sep 17 11:54:35s 0:05:25 -
-Rule sol89 1989 only - Sep 18 11:54:10s 0:05:50 -
-Rule sol89 1989 only - Sep 19 11:53:50s 0:06:10 -
-Rule sol89 1989 only - Sep 20 11:53:30s 0:06:30 -
-Rule sol89 1989 only - Sep 21 11:53:10s 0:06:50 -
-Rule sol89 1989 only - Sep 22 11:52:45s 0:07:15 -
-Rule sol89 1989 only - Sep 23 11:52:25s 0:07:35 -
-Rule sol89 1989 only - Sep 24 11:52:05s 0:07:55 -
-Rule sol89 1989 only - Sep 25 11:51:45s 0:08:15 -
-Rule sol89 1989 only - Sep 26 11:51:25s 0:08:35 -
-Rule sol89 1989 only - Sep 27 11:51:05s 0:08:55 -
-Rule sol89 1989 only - Sep 28 11:50:40s 0:09:20 -
-Rule sol89 1989 only - Sep 29 11:50:20s 0:09:40 -
-Rule sol89 1989 only - Sep 30 11:50:00s 0:10:00 -
-Rule sol89 1989 only - Oct 1 11:49:45s 0:10:15 -
-Rule sol89 1989 only - Oct 2 11:49:25s 0:10:35 -
-Rule sol89 1989 only - Oct 3 11:49:05s 0:10:55 -
-Rule sol89 1989 only - Oct 4 11:48:45s 0:11:15 -
-Rule sol89 1989 only - Oct 5 11:48:30s 0:11:30 -
-Rule sol89 1989 only - Oct 6 11:48:10s 0:11:50 -
-Rule sol89 1989 only - Oct 7 11:47:50s 0:12:10 -
-Rule sol89 1989 only - Oct 8 11:47:35s 0:12:25 -
-Rule sol89 1989 only - Oct 9 11:47:20s 0:12:40 -
-Rule sol89 1989 only - Oct 10 11:47:00s 0:13:00 -
-Rule sol89 1989 only - Oct 11 11:46:45s 0:13:15 -
-Rule sol89 1989 only - Oct 12 11:46:30s 0:13:30 -
-Rule sol89 1989 only - Oct 13 11:46:15s 0:13:45 -
-Rule sol89 1989 only - Oct 14 11:46:00s 0:14:00 -
-Rule sol89 1989 only - Oct 15 11:45:50s 0:14:10 -
-Rule sol89 1989 only - Oct 16 11:45:35s 0:14:25 -
-Rule sol89 1989 only - Oct 17 11:45:20s 0:14:40 -
-Rule sol89 1989 only - Oct 18 11:45:10s 0:14:50 -
-Rule sol89 1989 only - Oct 19 11:45:00s 0:15:00 -
-Rule sol89 1989 only - Oct 20 11:44:50s 0:15:10 -
-Rule sol89 1989 only - Oct 21 11:44:40s 0:15:20 -
-Rule sol89 1989 only - Oct 22 11:44:30s 0:15:30 -
-Rule sol89 1989 only - Oct 23 11:44:20s 0:15:40 -
-Rule sol89 1989 only - Oct 24 11:44:10s 0:15:50 -
-Rule sol89 1989 only - Oct 25 11:44:05s 0:15:55 -
-Rule sol89 1989 only - Oct 26 11:44:00s 0:16:00 -
-Rule sol89 1989 only - Oct 27 11:43:50s 0:16:10 -
-Rule sol89 1989 only - Oct 28 11:43:45s 0:16:15 -
-Rule sol89 1989 only - Oct 29 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Oct 30 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Oct 31 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 1 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 3 11:43:30s 0:16:30 -
-Rule sol89 1989 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 5 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 6 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 7 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol89 1989 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol89 1989 only - Nov 10 11:43:55s 0:16:05 -
-Rule sol89 1989 only - Nov 11 11:44:00s 0:16:00 -
-Rule sol89 1989 only - Nov 12 11:44:05s 0:15:55 -
-Rule sol89 1989 only - Nov 13 11:44:15s 0:15:45 -
-Rule sol89 1989 only - Nov 14 11:44:25s 0:15:35 -
-Rule sol89 1989 only - Nov 15 11:44:35s 0:15:25 -
-Rule sol89 1989 only - Nov 16 11:44:45s 0:15:15 -
-Rule sol89 1989 only - Nov 17 11:44:55s 0:15:05 -
-Rule sol89 1989 only - Nov 18 11:45:10s 0:14:50 -
-Rule sol89 1989 only - Nov 19 11:45:20s 0:14:40 -
-Rule sol89 1989 only - Nov 20 11:45:35s 0:14:25 -
-Rule sol89 1989 only - Nov 21 11:45:50s 0:14:10 -
-Rule sol89 1989 only - Nov 22 11:46:05s 0:13:55 -
-Rule sol89 1989 only - Nov 23 11:46:25s 0:13:35 -
-Rule sol89 1989 only - Nov 24 11:46:40s 0:13:20 -
-Rule sol89 1989 only - Nov 25 11:47:00s 0:13:00 -
-Rule sol89 1989 only - Nov 26 11:47:20s 0:12:40 -
-Rule sol89 1989 only - Nov 27 11:47:35s 0:12:25 -
-Rule sol89 1989 only - Nov 28 11:47:55s 0:12:05 -
-Rule sol89 1989 only - Nov 29 11:48:20s 0:11:40 -
-Rule sol89 1989 only - Nov 30 11:48:40s 0:11:20 -
-Rule sol89 1989 only - Dec 1 11:49:00s 0:11:00 -
-Rule sol89 1989 only - Dec 2 11:49:25s 0:10:35 -
-Rule sol89 1989 only - Dec 3 11:49:50s 0:10:10 -
-Rule sol89 1989 only - Dec 4 11:50:15s 0:09:45 -
-Rule sol89 1989 only - Dec 5 11:50:35s 0:09:25 -
-Rule sol89 1989 only - Dec 6 11:51:00s 0:09:00 -
-Rule sol89 1989 only - Dec 7 11:51:30s 0:08:30 -
-Rule sol89 1989 only - Dec 8 11:51:55s 0:08:05 -
-Rule sol89 1989 only - Dec 9 11:52:20s 0:07:40 -
-Rule sol89 1989 only - Dec 10 11:52:50s 0:07:10 -
-Rule sol89 1989 only - Dec 11 11:53:15s 0:06:45 -
-Rule sol89 1989 only - Dec 12 11:53:45s 0:06:15 -
-Rule sol89 1989 only - Dec 13 11:54:10s 0:05:50 -
-Rule sol89 1989 only - Dec 14 11:54:40s 0:05:20 -
-Rule sol89 1989 only - Dec 15 11:55:10s 0:04:50 -
-Rule sol89 1989 only - Dec 16 11:55:40s 0:04:20 -
-Rule sol89 1989 only - Dec 17 11:56:05s 0:03:55 -
-Rule sol89 1989 only - Dec 18 11:56:35s 0:03:25 -
-Rule sol89 1989 only - Dec 19 11:57:05s 0:02:55 -
-Rule sol89 1989 only - Dec 20 11:57:35s 0:02:25 -
-Rule sol89 1989 only - Dec 21 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Dec 22 11:58:35s 0:01:25 -
-Rule sol89 1989 only - Dec 23 11:59:05s 0:00:55 -
-Rule sol89 1989 only - Dec 24 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Dec 25 12:00:05s -0:00:05 -
-Rule sol89 1989 only - Dec 26 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Dec 27 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Dec 28 12:01:35s -0:01:35 -
-Rule sol89 1989 only - Dec 29 12:02:00s -0:02:00 -
-Rule sol89 1989 only - Dec 30 12:02:30s -0:02:30 -
-Rule sol89 1989 only - Dec 31 12:03:00s -0:03:00 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1989, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh89 3:07:04 - zzz 1989
- 3:07:04 sol89 zzz 1990
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh89 Mideast/Riyadh89
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/southamerica b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/southamerica
deleted file mode 100755
index 3301a43ac..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/southamerica
+++ /dev/null
@@ -1,1711 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@iana.org for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Earlier editions of these tables used the North American style (e.g. ARST and
-# ARDT for Argentine Standard and Daylight Time), but the following quote
-# suggests that it's better to use European style (e.g. ART and ARST).
-# I suggest the use of _Summer time_ instead of the more cumbersome
-# _daylight-saving time_. _Summer time_ seems to be in general use
-# in Europe and South America.
-# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
-# H L Mencken, _The American Language: Supplement I_ (1960), p 466
-#
-# Earlier editions of these tables also used the North American style
-# for time zones in Brazil, but this was incorrect, as Brazilians say
-# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in
-# the railroad sector, writes (1999-07-06):
-# The subject of time zones is currently a matter of discussion/debate in
-# Brazil. Let's say that "the Brasilia time" is considered the
-# "official time" because Brasilia is the capital city.
-# The other three time zones are called "Brasilia time "minus one" or
-# "plus one" or "plus two". As far as I know there is no such
-# name/designation as "Eastern Time" or "Central Time".
-# So I invented the following (English-language) abbreviations for now.
-# Corrections are welcome!
-# std dst
-# -2:00 FNT FNST Fernando de Noronha
-# -3:00 BRT BRST Brasilia
-# -4:00 AMT AMST Amazon
-# -5:00 ACT ACST Acre
-
-###############################################################################
-
-###############################################################################
-
-# Argentina
-
-# From Bob Devine (1988-01-28):
-# Argentina: first Sunday in October to first Sunday in April since 1976.
-# Double Summer time from 1969 to 1974. Switches at midnight.
-
-# From U. S. Naval Observatory (1988-01-199):
-# ARGENTINA 3 H BEHIND UTC
-
-# From Hernan G. Otero (1995-06-26):
-# I am sending modifications to the Argentine time zone table...
-# AR was chosen because they are the ISO letters that represent Argentina.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Arg 1930 only - Dec 1 0:00 1:00 S
-Rule Arg 1931 only - Apr 1 0:00 0 -
-Rule Arg 1931 only - Oct 15 0:00 1:00 S
-Rule Arg 1932 1940 - Mar 1 0:00 0 -
-Rule Arg 1932 1939 - Nov 1 0:00 1:00 S
-Rule Arg 1940 only - Jul 1 0:00 1:00 S
-Rule Arg 1941 only - Jun 15 0:00 0 -
-Rule Arg 1941 only - Oct 15 0:00 1:00 S
-Rule Arg 1943 only - Aug 1 0:00 0 -
-Rule Arg 1943 only - Oct 15 0:00 1:00 S
-Rule Arg 1946 only - Mar 1 0:00 0 -
-Rule Arg 1946 only - Oct 1 0:00 1:00 S
-Rule Arg 1963 only - Oct 1 0:00 0 -
-Rule Arg 1963 only - Dec 15 0:00 1:00 S
-Rule Arg 1964 1966 - Mar 1 0:00 0 -
-Rule Arg 1964 1966 - Oct 15 0:00 1:00 S
-Rule Arg 1967 only - Apr 2 0:00 0 -
-Rule Arg 1967 1968 - Oct Sun>=1 0:00 1:00 S
-Rule Arg 1968 1969 - Apr Sun>=1 0:00 0 -
-Rule Arg 1974 only - Jan 23 0:00 1:00 S
-Rule Arg 1974 only - May 1 0:00 0 -
-Rule Arg 1988 only - Dec 1 0:00 1:00 S
-#
-# From Hernan G. Otero (1995-06-26):
-# These corrections were contributed by InterSoft Argentina S.A.,
-# obtaining the data from the:
-# Talleres de Hidrografia Naval Argentina
-# (Argentine Naval Hydrography Institute)
-Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 -
-Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S
-#
-# From Hernan G. Otero (1995-06-26):
-# From this moment on, the law that mandated the daylight saving
-# time corrections was derogated and no more modifications
-# to the time zones (for daylight saving) are now made.
-#
-# From Rives McDow (2000-01-10):
-# On October 3, 1999, 0:00 local, Argentina implemented daylight savings time,
-# which did not result in the switch of a time zone, as they stayed 9 hours
-# from the International Date Line.
-Rule Arg 1999 only - Oct Sun>=1 0:00 1:00 S
-# From Paul Eggert (2007-12-28):
-# DST was set to expire on March 5, not March 3, but since it was converted
-# to standard time on March 3 it's more convenient for us to pretend that
-# it ended on March 3.
-Rule Arg 2000 only - Mar 3 0:00 0 -
-#
-# From Peter Gradelski via Steffen Thorsen (2000-03-01):
-# We just checked with our Sao Paulo office and they say the government of
-# Argentina decided not to become one of the countries that go on or off DST.
-# So Buenos Aires should be -3 hours from GMT at all times.
-#
-# From Fabian L. Arce Jofre (2000-04-04):
-# The law that claimed DST for Argentina was derogated by President Fernando
-# de la Rua on March 2, 2000, because it would make people spend more energy
-# in the winter time, rather than less. The change took effect on March 3.
-#
-# From Mariano Absatz (2001-06-06):
-# one of the major newspapers here in Argentina said that the 1999
-# Timezone Law (which never was effectively applied) will (would?) be
-# in effect.... The article is at
-# http://ar.clarin.com/diario/2001-06-06/e-01701.htm
-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
-# 1999-09-17, and published 1999-09-21. The official publication is at:
-# http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
-# Regretfully, you have to subscribe (and pay) for the on-line version....
-#
-# (2001-06-12):
-# the timezone for Argentina will not change next Sunday.
-# Apparently it will do so on Sunday 24th....
-# http://ar.clarin.com/diario/2001-06-12/s-03501.htm
-#
-# (2001-06-25):
-# Last Friday (yes, the last working day before the date of the change), the
-# Senate annulled the 1999 law that introduced the changes later postponed.
-# http://www.clarin.com.ar/diario/2001-06-22/s-03601.htm
-# It remains the vote of the Deputies..., but it will be the same....
-# This kind of things had always been done this way in Argentina.
-# We are still -03:00 all year round in all of the country.
-#
-# From Steffen Thorsen (2007-12-21):
-# A user (Leonardo Chaim) reported that Argentina will adopt DST....
-# all of the country (all Zone-entries) are affected. News reports like
-# http://www.lanacion.com.ar/opinion/nota.asp?nota_id=973037 indicate
-# that Argentina will use DST next year as well, from October to
-# March, although exact rules are not given.
-#
-# From Jesper Norgaard Welen (2007-12-26)
-# The last hurdle of Argentina DST is over, the proposal was approved in
-# the lower chamber too (Deputados) with a vote 192 for and 2 against.
-# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
-# the original scanned proposal, where the dates and the zero hours are
-# clear and unambiguous...This is the article about final approval:
-#
-# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
-#
-#
-# From Paul Eggert (2007-12-22):
-# For dates after mid-2008, the following rules are my guesses and
-# are quite possibly wrong, but are more likely than no DST at all.
-
-# From Alexander Krivenyshev (2008-09-05):
-# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
-# Argentina will start DST on Sunday October 19, 2008.
-#
-#
-# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
-#
-# OR
-#
-# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
-#
-
-# From Rodrigo Severo (2008-10-06):
-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
-# ...
-# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
-# Hi, there is a problem with timezone-data-2008e and maybe with
-# timezone-data-2008f
-# Argentinian law [Number] 25.155 is no longer valid.
-#
-# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
-#
-# The new one is law [Number] 26.350
-#
-# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
-#
-# So there is no summer time in Argentina for now.
-
-# From Mariano Absatz (2008-10-20):
-# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
-# From 2008-10-19 until 2009-03-15
-#
-# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
-#
-#
-# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009:
-# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz
-# and Tierra del Fuego
-#
-# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
-#
-#
-# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
-# it will not apply DST either (even when it was not included in Decree 1705/2008)
-#
-# http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
-#
-
-# From fullinet (2009-10-18):
-# As announced in
-#
-# http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
-#
-# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
-#
-# "Por el momento, el Gobierno Nacional resolvio no modificar la hora
-# oficial, decision que estaba en estudio para su implementacion el
-# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio
-# que la Argentina hoy, en estas condiciones meteorologicas, no necesita
-# la modificacion del huso horario, ya que 2009 nos encuentra con
-# crecimiento en la produccion y distribucion energetica."
-
-Rule Arg 2007 only - Dec 30 0:00 1:00 S
-Rule Arg 2008 2009 - Mar Sun>=15 0:00 0 -
-Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
-
-# From Mariano Absatz (2004-05-21):
-# Today it was officially published that the Province of Mendoza is changing
-# its timezone this winter... starting tomorrow night....
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040521-27158-normas.pdf
-# From Paul Eggert (2004-05-24):
-# It's Law No. 7,210. This change is due to a public power emergency, so for
-# now we'll assume it's for this year only.
-#
-# From Paul Eggert (2006-03-22):
-#
-# Hora de verano para la Republica Argentina (2003-06-08)
-# says that standard time in Argentina from 1894-10-31
-# to 1920-05-01 was -4:16:48.25. Go with this more-precise value
-# over Shanks & Pottenger.
-#
-# From Mariano Absatz (2004-06-05):
-# These media articles from a major newspaper mostly cover the current state:
-# http://www.lanacion.com.ar/04/05/27/de_604825.asp
-# http://www.lanacion.com.ar/04/05/28/de_605203.asp
-#
-# The following eight (8) provinces pulled clocks back to UTC-04:00 at
-# midnight Monday May 31st. (that is, the night between 05/31 and 06/01).
-# Apparently, all nine provinces would go back to UTC-03:00 at the same
-# time in October 17th.
-#
-# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
-# Tierra del Fuego, Tucuman.
-#
-# From Mariano Absatz (2004-06-14):
-# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
-# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
-# annoyance with the change is much higher than the power savings obtained....
-#
-# From Gwillim Law (2004-06-14):
-# http://www.lanacion.com.ar/04/06/10/de_609078.asp ...
-# "The time change in Tierra del Fuego was a conflicted decision from
-# the start. The government had decreed that the measure would take
-# effect on June 1, but a normative error forced the new time to begin
-# three days earlier, from a Saturday to a Sunday....
-# Our understanding was that the change was originally scheduled to take place
-# on June 1 at 00:00 in Chubut, Santa Cruz, Tierra del Fuego (and some other
-# provinces). Sunday was May 30, only two days earlier. So the article
-# contains a contradiction. I would give more credence to the Saturday/Sunday
-# date than the "three days earlier" phrase, and conclude that Tierra del
-# Fuego set its clocks back at 2004-05-30 00:00.
-#
-# From Steffen Thorsen (2004-10-05):
-# The previous law 7210 which changed the province of Mendoza's time zone
-# back in May have been modified slightly in a new law 7277, which set the
-# new end date to 2004-09-26 (original date was 2004-10-17).
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040924-27244-normas.pdf
-#
-# From Mariano Absatz (2004-10-05):
-# San Juan changed from UTC-03:00 to UTC-04:00 at midnight between
-# Sunday, May 30th and Monday, May 31st. It changed back to UTC-03:00
-# at midnight between Saturday, July 24th and Sunday, July 25th....
-# http://www.sanjuan.gov.ar/prensa/archivo/000329.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000426.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000441.html
-
-# From Alex Krivenyshev (2008-01-17):
-# Here are articles that Argentina Province San Luis is planning to end DST
-# as earlier as upcoming Monday January 21, 2008 or February 2008:
-#
-# Provincia argentina retrasa reloj y marca diferencia con resto del pais
-# (Argentine Province delayed clock and mark difference with the rest of the
-# country)
-#
-# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
-#
-#
-# Es inminente que en San Luis atrasen una hora los relojes
-# (It is imminent in San Luis clocks one hour delay)
-#
-# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
-#
-#
-#
-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
-#
-
-# From Jesper Norgaard Welen (2008-01-18):
-# The page of the San Luis provincial government
-#
-# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
-#
-# confirms what Alex Krivenyshev has earlier sent to the tz
-# emailing list about that San Luis plans to return to standard
-# time much earlier than the rest of the country. It also
-# confirms that upon request the provinces San Juan and Mendoza
-# refused to follow San Luis in this change.
-#
-# The change is supposed to take place Monday the 21.st at 0:00
-# hours. As far as I understand it if this goes ahead, we need
-# a new timezone for San Luis (although there are also documented
-# independent changes in the southamerica file of San Luis in
-# 1990 and 1991 which has not been confirmed).
-
-# From Jesper Norgaard Welen (2008-01-25):
-# Unfortunately the below page has become defunct, about the San Luis
-# time change. Perhaps because it now is part of a group of pages "Most
-# important pages of 2008."
-#
-# You can use
-#
-# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
-#
-# instead it seems. Or use "Buscador" from the main page of the San Luis
-# government, and fill in "huso" and click OK, and you will get 3 pages
-# from which the first one is identical to the above.
-
-# From Mariano Absatz (2008-01-28):
-# I can confirm that the Province of San Luis (and so far only that
-# province) decided to go back to UTC-3 effective midnight Jan 20th 2008
-# (that is, Monday 21st at 0:00 is the time the clocks were delayed back
-# 1 hour), and they intend to keep UTC-3 as their timezone all year round
-# (that is, unless they change their mind any minute now).
-#
-# So we'll have to add yet another city to 'southamerica' (I think San
-# Luis city is the mos populated city in the Province, so it'd be
-# America/Argentina/San_Luis... of course I can't remember if San Luis's
-# history of particular changes goes along with Mendoza or San Juan :-(
-# (I only remember not being able to collect hard facts about San Luis
-# back in 2004, when these provinces changed to UTC-4 for a few days, I
-# mailed them personally and never got an answer).
-
-# From Paul Eggert (2008-06-30):
-# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
-# from the IATA otherwise. As noted below, Shanks & Pottenger say that
-# America/Cordoba split into 6 subregions during 1991/1992, one of which
-# was America/San_Luis, but we haven't verified this yet so for now we'll
-# keep America/Cordoba a single region rather than splitting it into the
-# other 5 subregions.
-
-# From Mariano Absatz (2009-03-13):
-# Yesterday (with our usual 2-day notice) the Province of San Luis
-# decided that next Sunday instead of "staying" @utc-03:00 they will go
-# to utc-04:00 until the second Saturday in October...
-#
-# The press release is at
-#
-# http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102
-#
-# (I couldn't find the decree, but
-#
-# www.sanluis.gov.ar
-#
-# is the official page for the Province Government).
-#
-# There's also a note in only one of the major national papers (La Nación) at
-#
-# http://www.lanacion.com.ar/nota.asp?nota_id=1107912
-#
-#
-# The press release says:
-# (...) anunció que el próximo domingo a las 00:00 los puntanos deberán
-# atrasar una hora sus relojes.
-#
-# A partir de entonces, San Luis establecerá el huso horario propio de
-# la Provincia. De esta manera, durante el periodo del calendario anual
-# 2009, el cambio horario quedará comprendido entre las 00:00 del tercer
-# domingo de marzo y las 24:00 del segundo sábado de octubre.
-# Quick&dirty translation
-# (...) announced that next Sunday, at 00:00, Puntanos (the San Luis
-# inhabitants) will have to turn back one hour their clocks
-#
-# Since then, San Luis will establish its own Province timezone. Thus,
-# during 2009, this timezone change will run from 00:00 the third Sunday
-# in March until 24:00 of the second Saturday in October.
-
-# From Mariano Absatz (2009-10-16):
-# ...the Province of San Luis is a case in itself.
-#
-# The Law at
-#
-# is ambiguous because establishes a calendar from the 2nd Sunday in
-# October at 0:00 thru the 2nd Saturday in March at 24:00 and the
-# complement of that starting on the 2nd Sunday of March at 0:00 and
-# ending on the 2nd Saturday of March at 24:00.
-#
-# This clearly breaks every time the 1st of March or October is a Sunday.
-#
-# IMHO, the "spirit of the Law" is to make the changes at 0:00 on the 2nd
-# Sunday of October and March.
-#
-# The problem is that the changes in the rest of the Provinces that did
-# change in 2007/2008, were made according to the Federal Law and Decrees
-# that did so on the 3rd Sunday of October and March.
-#
-# In fact, San Luis actually switched from UTC-4 to UTC-3 last Sunday
-# (October 11th) at 0:00.
-#
-# So I guess a new set of rules, besides "Arg", must be made and the last
-# America/Argentina/San_Luis entries should change to use these...
-#
-# I'm enclosing a patch that does what I say... regretfully, the San Luis
-# timezone must be called "WART/WARST" even when most of the time (like,
-# right now) WARST == ART... that is, since last Sunday, all the country
-# is using UTC-3, but in my patch, San Luis calls it "WARST" and the rest
-# of the country calls it "ART".
-# ...
-
-# From Alexander Krivenyshev (2010-04-09):
-# According to news reports from El Diario de la Republica Province San
-# Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time
-# after April 11, 2010--will continue to have same time as rest of
-# Argentina (UTC-3) (no DST).
-#
-# Confirmaron la prórroga del huso horario de verano (Spanish)
-#
-# http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9
-#
-# or (some English translation):
-#
-# http://www.worldtimezone.com/dst_news/dst_news_argentina08.html
-#
-
-# From Mariano Absatz (2010-04-12):
-# yes...I can confirm this...and given that San Luis keeps calling
-# UTC-03:00 "summer time", we should't just let San Luis go back to "Arg"
-# rules...San Luis is still using "Western ARgentina Time" and it got
-# stuck on Summer daylight savings time even though the summer is over.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Buenos Aires (BA), Capital Federal (CF),
-Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT
-#
-# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN),
-# Chaco (CC), Formosa (FM), Santiago del Estero (SE)
-#
-# Shanks & Pottenger also make the following claims, which we haven't verified:
-# - Formosa switched to -3:00 on 1991-01-07.
-# - Misiones switched to -3:00 on 1990-12-29.
-# - Chaco switched to -3:00 on 1991-01-04.
-# - Santiago del Estero switched to -4:00 on 1991-04-01,
-# then to -3:00 on 1991-04-26.
-#
-Zone America/Argentina/Cordoba -4:16:48 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT
-#
-# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
-Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# Tucuman (TM)
-Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 13
- -3:00 Arg AR%sT
-#
-# La Rioja (LR)
-Zone America/Argentina/La_Rioja -4:27:24 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 1
- -4:00 - WART 1991 May 7
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# San Juan (SJ)
-Zone America/Argentina/San_Juan -4:34:04 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 1
- -4:00 - WART 1991 May 7
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 31
- -4:00 - WART 2004 Jul 25
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# Jujuy (JY)
-Zone America/Argentina/Jujuy -4:21:12 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990 Mar 4
- -4:00 - WART 1990 Oct 28
- -4:00 1:00 WARST 1991 Mar 17
- -4:00 - WART 1991 Oct 6
- -3:00 1:00 ARST 1992
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# Catamarca (CT), Chubut (CH)
-Zone America/Argentina/Catamarca -4:23:08 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# Mendoza (MZ)
-Zone America/Argentina/Mendoza -4:35:16 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990 Mar 4
- -4:00 - WART 1990 Oct 15
- -4:00 1:00 WARST 1991 Mar 1
- -4:00 - WART 1991 Oct 15
- -4:00 1:00 WARST 1992 Mar 1
- -4:00 - WART 1992 Oct 18
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 23
- -4:00 - WART 2004 Sep 26
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# San Luis (SL)
-
-Rule SanLuis 2008 2009 - Mar Sun>=8 0:00 0 -
-Rule SanLuis 2007 2009 - Oct Sun>=8 0:00 1:00 S
-
-Zone America/Argentina/San_Luis -4:25:24 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990
- -3:00 1:00 ARST 1990 Mar 14
- -4:00 - WART 1990 Oct 15
- -4:00 1:00 WARST 1991 Mar 1
- -4:00 - WART 1991 Jun 1
- -3:00 - ART 1999 Oct 3
- -4:00 1:00 WARST 2000 Mar 3
- -3:00 - ART 2004 May 31
- -4:00 - WART 2004 Jul 25
- -3:00 Arg AR%sT 2008 Jan 21
- -4:00 SanLuis WAR%sT
-#
-# Santa Cruz (SC)
-Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-#
-# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
-Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 30
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT 2008 Oct 18
- -3:00 - ART
-
-# Aruba
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
- -4:30 - ANT 1965 # Netherlands Antilles Time
- -4:00 - AST
-
-# Bolivia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/La_Paz -4:32:36 - LMT 1890
- -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
- -4:32:36 1:00 BOST 1932 Mar 21 # Bolivia ST
- -4:00 - BOT # Bolivia Time
-
-# Brazil
-
-# From Paul Eggert (1993-11-18):
-# The mayor of Rio recently attempted to change the time zone rules
-# just in his city, in order to leave more summer time for the tourist trade.
-# The rule change lasted only part of the day;
-# the federal government refused to follow the city's rules, and business
-# was in a chaos, so the mayor backed down that afternoon.
-
-# From IATA SSIM (1996-02):
-# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
-# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
-# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
-# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
-# [The last three states are new to this issue of the IATA SSIM.]
-
-# From Gwillim Law (1996-10-07):
-# Geography, history (Tocantins was part of Goias until 1989), and other
-# sources of time zone information lead me to believe that AL, SE, and TO were
-# always in BR1, and so the only change was whether or not they observed DST....
-# The earliest issue of the SSIM I have is 2/91. Each issue from then until
-# 9/95 says that DST is observed only in the ten states I quoted from 9/95,
-# along with Mato Grosso (MT) and Mato Grosso do Sul (MS), which are in BR2
-# (UTC-4).... The other two time zones given for Brazil are BR3, which is
-# UTC-5, no DST, and applies only in the state of Acre (AC); and BR4, which is
-# UTC-2, and applies to Fernando de Noronha (formerly FN, but I believe it's
-# become part of the state of Pernambuco). The boundary between BR1 and BR2
-# has never been clearly stated. They've simply been called East and West.
-# However, some conclusions can be drawn from another IATA manual: the Airline
-# Coding Directory, which lists close to 400 airports in Brazil. For each
-# airport it gives a time zone which is coded to the SSIM. From that
-# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
-# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
-# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
-
-# From Marcos Tadeu (1998-09-27):
-#
-# Brazilian official page
-#
-
-# From Jesper Norgaard (2000-11-03):
-# [For an official list of which regions in Brazil use which time zones, see:]
-# http://pcdsh01.on.br/Fusbr.htm
-# http://pcdsh01.on.br/Fusbrhv.htm
-
-# From Celso Doria via David Madeo (2002-10-09):
-# The reason for the delay this year has to do with elections in Brazil.
-#
-# Unlike in the United States, elections in Brazil are 100% computerized and
-# the results are known almost immediately. Yesterday, it was the first
-# round of the elections when 115 million Brazilians voted for President,
-# Governor, Senators, Federal Deputies, and State Deputies. Nobody is
-# counting (or re-counting) votes anymore and we know there will be a second
-# round for the Presidency and also for some Governors. The 2nd round will
-# take place on October 27th.
-#
-# The reason why the DST will only begin November 3rd is that the thousands
-# of electoral machines used cannot have their time changed, and since the
-# Constitution says the elections must begin at 8:00 AM and end at 5:00 PM,
-# the Government decided to postpone DST, instead of changing the Constitution
-# (maybe, for the next elections, it will be possible to change the clock)...
-
-# From Rodrigo Severo (2004-10-04):
-# It's just the biannual change made necessary by the much hyped, supposedly
-# modern Brazilian eletronic voting machines which, apparently, can't deal
-# with a time change between the first and the second rounds of the elections.
-
-# From Steffen Thorsen (2007-09-20):
-# Brazil will start DST on 2007-10-14 00:00 and end on 2008-02-17 00:00:
-# http://www.mme.gov.br/site/news/detail.do;jsessionid=BBA06811AFCAAC28F0285210913513DA?newsId=13975
-
-# From Paul Schulze (2008-06-24):
-# ...by law number 11.662 of April 24, 2008 (published in the "Diario
-# Oficial da Uniao"...) in Brazil there are changes in the timezones,
-# effective today (00:00am at June 24, 2008) as follows:
-#
-# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
-# part of the Amazonas state that had this timezone now being put to the
-# timezone UTC+4
-# b) The whole Para state now is put at timezone UTC+3, instead of just
-# part of it, as was before.
-#
-# This change follows a proposal of senator Tiao Viana of Acre state, that
-# proposed it due to concerns about open television channels displaying
-# programs inappropriate to youths in the states that had the timezone
-# UTC+5 too early in the night. In the occasion, some more corrections
-# were proposed, trying to unify the timezones of any given state. This
-# change modifies timezone rules defined in decree 2.784 of 18 June,
-# 1913.
-
-# From Rodrigo Severo (2008-06-24):
-# Just correcting the URL:
-#
-# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008
-#
-#
-# As a result of the above Decree I believe the America/Rio_Branco
-# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
-# be created to represent the...west side of the Para State. I
-# suggest this new timezone be called Santarem as the most
-# important/populated city in the affected area.
-#
-# This new timezone would be the same as the Rio_Branco timezone up to
-# the 2008/06/24 change which would be to UTC-3 instead of UTC-4.
-
-# From Alex Krivenyshev (2008-06-24):
-# This is a quick reference page for New and Old Brazil Time Zones map.
-#
-# http://www.worldtimezone.com/brazil-time-new-old.php
-#
-#
-# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
-# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
-# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
-
-# From Paul Eggert (2002-10-10):
-# The official decrees referenced below are mostly taken from
-#
-# Decretos sobre o Horario de Verao no Brasil
-# .
-
-# From Steffen Thorsen (2008-08-29):
-# As announced by the government and many newspapers in Brazil late
-# yesterday, Brazil will start DST on 2008-10-19 (need to change rule) and
-# it will end on 2009-02-15 (current rule for Brazil is fine). Based on
-# past years experience with the elections, there was a good chance that
-# the start was postponed to November, but it did not happen this year.
-#
-# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
-#
-# An official page about it:
-#
-# http://www.mme.gov.br/site/news/detail.do?newsId=16722
-#
-# Note that this link does not always work directly, but must be accessed
-# by going to
-#
-# http://www.mme.gov.br/first
-#
-#
-# One example link that works directly:
-#
-# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
-# (Portuguese)
-#
-#
-# We have a written a short article about it as well:
-#
-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
-#
-#
-# From Alexander Krivenyshev (2011-10-04):
-# State Bahia will return to Daylight savings time this year after 8 years off.
-# The announcement was made by Governor Jaques Wagner in an interview to a
-# television station in Salvador.
-
-# In Portuguese:
-#
-# http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
-# and
-#
-# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
-#
-
-# From Guilherme Bernardes Rodrigues (2011-10-07):
-# There is news in the media, however there is still no decree about it.
-# I just send a e-mail to Zulmira Brandão at
-# http://pcdsh01.on.br/ the
-# oficial agency about time in Brazil, and she confirmed that the old rule is
-# still in force.
-
-# From Guilherme Bernardes Rodrigues (2011-10-14)
-# It's official, the President signed a decree that includes Bahia in summer
-# time.
-# [ and in a second message (same day): ]
-# I found the decree.
-#
-# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
-# Link :
-#
-# http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
-#
-
-# From Kelley Cook (2012-10-16):
-# The governor of state of Bahia in Brazil announced on Thursday that
-# due to public pressure, he is reversing the DST policy they implemented
-# last year and will not be going to Summer Time on October 21st....
-# http://www.correio24horas.com.br/r/artigo/apos-pressoes-wagner-suspende-horario-de-verao-na-bahia
-
-# From Rodrigo Severo (2012-10-16):
-# Tocantins state will have DST.
-# http://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Decree 20,466 (1931-10-01)
-# Decree 21,896 (1932-01-10)
-Rule Brazil 1931 only - Oct 3 11:00 1:00 S
-Rule Brazil 1932 1933 - Apr 1 0:00 0 -
-Rule Brazil 1932 only - Oct 3 0:00 1:00 S
-# Decree 23,195 (1933-10-10)
-# revoked DST.
-# Decree 27,496 (1949-11-24)
-# Decree 27,998 (1950-04-13)
-Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S
-Rule Brazil 1950 only - Apr 16 1:00 0 -
-Rule Brazil 1951 1952 - Apr 1 0:00 0 -
-# Decree 32,308 (1953-02-24)
-Rule Brazil 1953 only - Mar 1 0:00 0 -
-# Decree 34,724 (1953-11-30)
-# revoked DST.
-# Decree 52,700 (1963-10-18)
-# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
-# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
-# Decree 53,071 (1963-12-03)
-# extended the above decree to all of the national territory on 12-09.
-Rule Brazil 1963 only - Dec 9 0:00 1:00 S
-# Decree 53,604 (1964-02-25)
-# extended summer time by one day to 1964-03-01 00:00 (start of school).
-Rule Brazil 1964 only - Mar 1 0:00 0 -
-# Decree 55,639 (1965-01-27)
-Rule Brazil 1965 only - Jan 31 0:00 1:00 S
-Rule Brazil 1965 only - Mar 31 0:00 0 -
-# Decree 57,303 (1965-11-22)
-Rule Brazil 1965 only - Dec 1 0:00 1:00 S
-# Decree 57,843 (1966-02-18)
-Rule Brazil 1966 1968 - Mar 1 0:00 0 -
-Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S
-# Decree 63,429 (1968-10-15)
-# revoked DST.
-# Decree 91,698 (1985-09-27)
-Rule Brazil 1985 only - Nov 2 0:00 1:00 S
-# Decree 92,310 (1986-01-21)
-# Decree 92,463 (1986-03-13)
-Rule Brazil 1986 only - Mar 15 0:00 0 -
-# Decree 93,316 (1986-10-01)
-Rule Brazil 1986 only - Oct 25 0:00 1:00 S
-Rule Brazil 1987 only - Feb 14 0:00 0 -
-# Decree 94,922 (1987-09-22)
-Rule Brazil 1987 only - Oct 25 0:00 1:00 S
-Rule Brazil 1988 only - Feb 7 0:00 0 -
-# Decree 96,676 (1988-09-12)
-# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
-Rule Brazil 1988 only - Oct 16 0:00 1:00 S
-Rule Brazil 1989 only - Jan 29 0:00 0 -
-# Decree 98,077 (1989-08-21)
-# with the same exceptions
-Rule Brazil 1989 only - Oct 15 0:00 1:00 S
-Rule Brazil 1990 only - Feb 11 0:00 0 -
-# Decree 99,530 (1990-09-17)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
-# Decree 99,629 (1990-10-19) adds BA, MT.
-Rule Brazil 1990 only - Oct 21 0:00 1:00 S
-Rule Brazil 1991 only - Feb 17 0:00 0 -
-# Unnumbered decree (1991-09-25)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
-Rule Brazil 1991 only - Oct 20 0:00 1:00 S
-Rule Brazil 1992 only - Feb 9 0:00 0 -
-# Unnumbered decree (1992-10-16)
-# adopted by same states.
-Rule Brazil 1992 only - Oct 25 0:00 1:00 S
-Rule Brazil 1993 only - Jan 31 0:00 0 -
-# Decree 942 (1993-09-28)
-# adopted by same states, plus AM.
-# Decree 1,252 (1994-09-22;
-# web page corrected 2004-01-07) adopted by same states, minus AM.
-# Decree 1,636 (1995-09-14)
-# adopted by same states, plus MT and TO.
-# Decree 1,674 (1995-10-13)
-# adds AL, SE.
-Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S
-Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 -
-Rule Brazil 1996 only - Feb 11 0:00 0 -
-# Decree 2,000 (1996-09-04)
-# adopted by same states, minus AL, SE.
-Rule Brazil 1996 only - Oct 6 0:00 1:00 S
-Rule Brazil 1997 only - Feb 16 0:00 0 -
-# From Daniel C. Sobral (1998-02-12):
-# In 1997, the DS began on October 6. The stated reason was that
-# because international television networks ignored Brazil's policy on DS,
-# they bought the wrong times on satellite for coverage of Pope's visit.
-# This year, the ending date of DS was postponed to March 1
-# to help dealing with the shortages of electric power.
-#
-# Decree 2,317 (1997-09-04), adopted by same states.
-Rule Brazil 1997 only - Oct 6 0:00 1:00 S
-# Decree 2,495
-# (1998-02-10)
-Rule Brazil 1998 only - Mar 1 0:00 0 -
-# Decree 2,780 (1998-09-11)
-# adopted by the same states as before.
-Rule Brazil 1998 only - Oct 11 0:00 1:00 S
-Rule Brazil 1999 only - Feb 21 0:00 0 -
-# Decree 3,150
-# (1999-08-23) adopted by same states.
-# Decree 3,188 (1999-09-30)
-# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
-Rule Brazil 1999 only - Oct 3 0:00 1:00 S
-Rule Brazil 2000 only - Feb 27 0:00 0 -
-# Decree 3,592 (2000-09-06)
-# adopted by the same states as before.
-# Decree 3,630 (2000-10-13)
-# repeals DST in PE and RR, effective 2000-10-15 00:00.
-# Decree 3,632 (2000-10-17)
-# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
-# Decree 3,916
-# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
-Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S
-Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 -
-# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
-# 4,399
-Rule Brazil 2002 only - Nov 3 0:00 1:00 S
-# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
-# 4,844
-Rule Brazil 2003 only - Oct 19 0:00 1:00 S
-# Decree 5,223 (2004-10-01) reestablishes DST in MT.
-# 5,223
-Rule Brazil 2004 only - Nov 2 0:00 1:00 S
-# Decree 5,539 (2005-09-19),
-# adopted by the same states as before.
-Rule Brazil 2005 only - Oct 16 0:00 1:00 S
-# Decree 5,920 (2006-10-03),
-# adopted by the same states as before.
-Rule Brazil 2006 only - Nov 5 0:00 1:00 S
-Rule Brazil 2007 only - Feb 25 0:00 0 -
-# Decree 6,212 (2007-09-26),
-# adopted by the same states as before.
-Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S
-# From Frederico A. C. Neves (2008-09-10):
-# Acording to this decree
-#
-# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
-#
-# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
-# 3rd Feb Sunday. There is an exception on the return date when this is
-# the Carnival Sunday then the return date will be the next Sunday...
-Rule Brazil 2008 max - Oct Sun>=15 0:00 1:00 S
-Rule Brazil 2008 2011 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2012 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2013 2014 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2015 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2016 2022 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2023 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2024 2025 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2026 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2027 2033 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2034 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2035 2036 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2037 only - Feb Sun>=22 0:00 0 -
-# From Arthur David Olson (2008-09-29):
-# The next is wrong in some years but is better than nothing.
-Rule Brazil 2038 max - Feb Sun>=15 0:00 0 -
-
-# The latest ruleset listed above says that the following states observe DST:
-# DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Fernando de Noronha (administratively part of PE)
-Zone America/Noronha -2:09:40 - LMT 1914
- -2:00 Brazil FN%sT 1990 Sep 17
- -2:00 - FNT 1999 Sep 30
- -2:00 Brazil FN%sT 2000 Oct 15
- -2:00 - FNT 2001 Sep 13
- -2:00 Brazil FN%sT 2002 Oct 1
- -2:00 - FNT
-# Other Atlantic islands have no permanent settlement.
-# These include Trindade and Martin Vaz (administratively part of ES),
-# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
-# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
-# it also included the Penedos.
-#
-# Amapa (AP), east Para (PA)
-# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
-# The division between east and west Para is the river Xingu.
-# In the north a very small part from the river Javary (now Jari I guess,
-# the border with Amapa) to the Amazon, then to the Xingu.
-Zone America/Belem -3:13:56 - LMT 1914
- -3:00 Brazil BR%sT 1988 Sep 12
- -3:00 - BRT
-#
-# west Para (PA)
-# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
-Zone America/Santarem -3:38:48 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 2008 Jun 24 00:00
- -3:00 - BRT
-#
-# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
-# Paraiba (PB)
-Zone America/Fortaleza -2:34:00 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 22
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Pernambuco (PE) (except Atlantic islands)
-Zone America/Recife -2:19:36 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 15
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Tocantins (TO)
-Zone America/Araguaina -3:12:48 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1995 Sep 14
- -3:00 Brazil BR%sT 2003 Sep 24
- -3:00 - BRT 2012 Oct 21
- -3:00 Brazil BR%sT
-#
-# Alagoas (AL), Sergipe (SE)
-Zone America/Maceio -2:22:52 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1995 Oct 13
- -3:00 Brazil BR%sT 1996 Sep 4
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 22
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Bahia (BA)
-# There are too many Salvadors elsewhere, so use America/Bahia instead
-# of America/Salvador.
-Zone America/Bahia -2:34:04 - LMT 1914
- -3:00 Brazil BR%sT 2003 Sep 24
- -3:00 - BRT 2011 Oct 16
- -3:00 Brazil BR%sT 2012 Oct 21
- -3:00 - BRT
-#
-# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
-# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
-# Santa Catarina (SC), Rio Grande do Sul (RS)
-Zone America/Sao_Paulo -3:06:28 - LMT 1914
- -3:00 Brazil BR%sT 1963 Oct 23 00:00
- -3:00 1:00 BRST 1964
- -3:00 Brazil BR%sT
-#
-# Mato Grosso do Sul (MS)
-Zone America/Campo_Grande -3:38:28 - LMT 1914
- -4:00 Brazil AM%sT
-#
-# Mato Grosso (MT)
-Zone America/Cuiaba -3:44:20 - LMT 1914
- -4:00 Brazil AM%sT 2003 Sep 24
- -4:00 - AMT 2004 Oct 1
- -4:00 Brazil AM%sT
-#
-# Rondonia (RO)
-Zone America/Porto_Velho -4:15:36 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT
-#
-# Roraima (RR)
-Zone America/Boa_Vista -4:02:40 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 1999 Sep 30
- -4:00 Brazil AM%sT 2000 Oct 15
- -4:00 - AMT
-#
-# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
-# The great circle line from Tabatinga to Porto Acre divides
-# east from west Amazonas.
-Zone America/Manaus -4:00:04 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 1993 Sep 28
- -4:00 Brazil AM%sT 1994 Sep 22
- -4:00 - AMT
-#
-# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
-# Eirunepe, Envira, Ipixuna
-Zone America/Eirunepe -4:39:28 - LMT 1914
- -5:00 Brazil AC%sT 1988 Sep 12
- -5:00 - ACT 1993 Sep 28
- -5:00 Brazil AC%sT 1994 Sep 22
- -5:00 - ACT 2008 Jun 24 00:00
- -4:00 - AMT
-#
-# Acre (AC)
-Zone America/Rio_Branco -4:31:12 - LMT 1914
- -5:00 Brazil AC%sT 1988 Sep 12
- -5:00 - ACT 2008 Jun 24 00:00
- -4:00 - AMT
-
-# Chile
-
-# From Eduardo Krell (1995-10-19):
-# The law says to switch to DST at midnight [24:00] on the second SATURDAY
-# of October.... The law is the same for March and October.
-# (1998-09-29):
-# Because of the drought this year, the government decided to go into
-# DST earlier (saturday 9/26 at 24:00). This is a one-time change only ...
-# (unless there's another dry season next year, I guess).
-
-# From Julio I. Pacheco Troncoso (1999-03-18):
-# Because of the same drought, the government decided to end DST later,
-# on April 3, (one-time change).
-
-# From Oscar van Vlijmen (2006-10-08):
-# http://www.horaoficial.cl/cambio.htm
-
-# From Jesper Norgaard Welen (2006-10-08):
-# I think that there are some obvious mistakes in the suggested link
-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
-# anyhow it clears up some doubts too.
-
-# From Paul Eggert (2006-12-27):
-# The following data for Chile and America/Santiago are from
-# (2006-09-20), transcribed by
-# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks
-# & Pottenger, except with DST transitions after 1932 cloned from
-# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
-# but we have no other source.
-
-# From German Poo-Caaman~o (2008-03-03):
-# Due to drought, Chile extends Daylight Time in three weeks. This
-# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
-# and Saturday 3/29 at 22:00 for Pacific/Easter)
-# The Supreme Decree is located at
-#
-# http://www.shoa.cl/servicios/supremo316.pdf
-#
-# and the instructions for 2008 are located in:
-#
-# http://www.horaoficial.cl/cambio.htm
-# .
-
-# From Jose Miguel Garrido (2008-03-05):
-# ...
-# You could see the announces of the change on
-#
-# http://www.shoa.cl/noticias/2008/04hora/hora.htm
-# .
-
-# From Angel Chiang (2010-03-04):
-# Subject: DST in Chile exceptionally extended to 3 April due to earthquake
-#
-# http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
-#
-# (in Spanish, last paragraph).
-#
-# This is breaking news. There should be more information available later.
-
-# From Arthur Daivd Olson (2010-03-06):
-# Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
-
-# From Glenn Eychaner (2011-03-02): [geychaner@mac.com]
-# It appears that the Chilean government has decided to postpone the
-# change from summer time to winter time again, by three weeks to April
-# 2nd:
-#
-# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
-#
-#
-# This is not yet reflected in the offical "cambio de hora" site, but
-# probably will be soon:
-#
-# http://www.horaoficial.cl/cambio.htm
-#
-
-# From Arthur David Olson (2011-03-02):
-# The emol.com article mentions a water shortage as the cause of the
-# postponement, which may mean that it's not a permanent change.
-
-# From Glenn Eychaner (2011-03-28):
-# The article:
-#
-# http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
-#
-#
-# In English:
-# Chile's clocks will go back an hour this year on the 7th of May instead
-# of this Saturday. They will go forward again the 3rd Saturday in
-# August, not in October as they have since 1968. This is a pilot plan
-# which will be reevaluated in 2012.
-
-# From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
-# As stated in the website of the Chilean Energy Ministry
-# http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
-# The Chilean Government has decided to postpone the entrance into winter time
-# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
-# been yet formalized but it will within the next days.
-# Quote from the website communication:
-#
-# 6. For the year 2012, the dates of entry into winter time will be as follows:
-# a. Saturday April 28, 2012, clocks should go back 60 minutes; that is, at
-# 23:59:59, instead of passing to 0:00, the time should be adjusted to be 23:00
-# of the same day.
-# b. Saturday, September 1, 2012, clocks should go forward 60 minutes; that is,
-# at 23:59:59, instead of passing to 0:00, the time should be adjusted to be
-# 01:00 on September 2.
-#
-# Note that...this is yet another "temporary" change that will be reevaluated
-# AGAIN in 2013.
-
-# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
-# 'antarctica' file.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
-Rule Chile 1928 1932 - Apr 1 0:00 0 -
-Rule Chile 1942 only - Jun 1 4:00u 0 -
-Rule Chile 1942 only - Aug 1 5:00u 1:00 S
-Rule Chile 1946 only - Jul 15 4:00u 1:00 S
-Rule Chile 1946 only - Sep 1 3:00u 0:00 -
-Rule Chile 1947 only - Apr 1 4:00u 0 -
-Rule Chile 1968 only - Nov 3 4:00u 1:00 S
-Rule Chile 1969 only - Mar 30 3:00u 0 -
-Rule Chile 1969 only - Nov 23 4:00u 1:00 S
-Rule Chile 1970 only - Mar 29 3:00u 0 -
-Rule Chile 1971 only - Mar 14 3:00u 0 -
-Rule Chile 1970 1972 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1972 1986 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1973 only - Sep 30 4:00u 1:00 S
-Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1987 only - Apr 12 3:00u 0 -
-Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
-Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1990 only - Mar 18 3:00u 0 -
-Rule Chile 1990 only - Sep 16 4:00u 1:00 S
-Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1997 only - Mar 30 3:00u 0 -
-Rule Chile 1998 only - Mar Sun>=9 3:00u 0 -
-Rule Chile 1998 only - Sep 27 4:00u 1:00 S
-Rule Chile 1999 only - Apr 4 3:00u 0 -
-Rule Chile 1999 2010 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 2000 2007 - Mar Sun>=9 3:00u 0 -
-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
-# which is used below in specifying the transition.
-Rule Chile 2008 only - Mar 30 3:00u 0 -
-Rule Chile 2009 only - Mar Sun>=9 3:00u 0 -
-Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
-Rule Chile 2011 only - May Sun>=2 3:00u 0 -
-Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
-Rule Chile 2012 only - Apr Sun>=23 3:00u 0 -
-Rule Chile 2012 only - Sep Sun>=2 4:00u 1:00 S
-Rule Chile 2013 max - Mar Sun>=9 3:00u 0 -
-Rule Chile 2013 max - Oct Sun>=9 4:00u 1:00 S
-# IATA SSIM anomalies: (1992-02) says 1992-03-14;
-# (1996-09) says 1998-03-08. Ignore these.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Santiago -4:42:46 - LMT 1890
- -4:42:46 - SMT 1910 # Santiago Mean Time
- -5:00 - CLT 1916 Jul 1 # Chile Time
- -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
- -4:00 - CLT 1919 Jul 1 # Chile Time
- -4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
- -5:00 Chile CL%sT 1947 May 22 # Chile Time
- -4:00 Chile CL%sT
-Zone Pacific/Easter -7:17:44 - LMT 1890
- -7:17:28 - EMT 1932 Sep # Easter Mean Time
- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
- -6:00 Chile EAS%sT
-#
-# Sala y Gomez Island is like Pacific/Easter.
-# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
-# San Felix, and Antarctic bases, are like America/Santiago.
-
-# Colombia
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule CO 1992 only - May 3 0:00 1:00 S
-Rule CO 1993 only - Apr 4 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Bogota -4:56:20 - LMT 1884 Mar 13
- -4:56:20 - BMT 1914 Nov 23 # Bogota Mean Time
- -5:00 CO CO%sT # Colombia Time
-# Malpelo, Providencia, San Andres
-# no information; probably like America/Bogota
-
-# Curacao
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that The Bottom and Philipsburg have been at
-# -4:00 since standard time was introduced on 1912-03-02; and that
-# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
-# 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say
-# Saba Island has been like Curacao.
-# This all predates our 1970 cutoff, though.
-#
-# By July 2007 Curacao and St Maarten are planned to become
-# associated states within the Netherlands, much like Aruba;
-# Bonaire, Saba and St Eustatius would become directly part of the
-# Netherlands as Kingdom Islands. This won't affect their time zones
-# though, as far as we know.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Curacao -4:35:44 - LMT 1912 Feb 12 # Willemstad
- -4:30 - ANT 1965 # Netherlands Antilles Time
- -4:00 - AST
-
-# From Arthur David Olson (2011-06-15):
-# At least for now, use links for places with new iso3166 codes.
-# The name "Lower Prince's Quarter" is both longer than fourteen charaters
-# and contains an apostrophe; use "Lower_Princes" below.
-
-Link America/Curacao America/Lower_Princes # Sint Maarten
-Link America/Curacao America/Kralendijk # Bonaire, Sint Estatius and Saba
-
-# Ecuador
-#
-# From Paul Eggert (2007-03-04):
-# Apparently Ecuador had a failed experiment with DST in 1992.
-# (2007-02-27) and
-# (2006-11-06) both
-# talk about "hora Sixto". Leave this alone for now, as we have no data.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guayaquil -5:19:20 - LMT 1890
- -5:14:00 - QMT 1931 # Quito Mean Time
- -5:00 - ECT # Ecuador Time
-Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
- -5:00 - ECT 1986
- -6:00 - GALT # Galapagos Time
-
-# Falklands
-
-# From Paul Eggert (2006-03-22):
-# Between 1990 and 2000 inclusive, Shanks & Pottenger and the IATA agree except
-# the IATA gives 1996-09-08. Go with Shanks & Pottenger.
-
-# From Falkland Islands Government Office, London (2001-01-22)
-# via Jesper Norgaard:
-# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
-# April 2001 and advance one hour to summer time at 2 am on Sunday 2
-# September. It is anticipated that the clocks will revert back at 2
-# am on Sunday 21 April 2002 and advance to summer time at 2 am on
-# Sunday 1 September.
-
-# From Rives McDow (2001-02-13):
-#
-# I have communicated several times with people there, and the last
-# time I had communications that was helpful was in 1998. Here is
-# what was said then:
-#
-# "The general rule was that Stanley used daylight saving and the Camp
-# did not. However for various reasons many people in the Camp have
-# started to use daylight saving (known locally as 'Stanley Time')
-# There is no rule as to who uses daylight saving - it is a matter of
-# personal choice and so it is impossible to draw a map showing who
-# uses it and who does not. Any list would be out of date as soon as
-# it was produced. This year daylight saving ended on April 18/19th
-# and started again on September 12/13th. I do not know what the rule
-# is, but can find out if you like. We do not change at the same time
-# as UK or Chile."
-#
-# I did have in my notes that the rule was "Second Saturday in Sep at
-# 0:00 until third Saturday in Apr at 0:00". I think that this does
-# not agree in some cases with Shanks; is this true?
-#
-# Also, there is no mention in the list that some areas in the
-# Falklands do not use DST. I have found in my communications there
-# that these areas are on the western half of East Falkland and all of
-# West Falkland. Stanley is the only place that consistently observes
-# DST. Again, as in other places in the world, the farmers don't like
-# it. West Falkland is almost entirely sheep farmers.
-#
-# I know one lady there that keeps a list of which farm keeps DST and
-# which doesn't each year. She runs a shop in Stanley, and says that
-# the list changes each year. She uses it to communicate to her
-# customers, catching them when they are home for lunch or dinner.
-
-# From Paul Eggert (2001-03-05):
-# For now, we'll just record the time in Stanley, since we have no
-# better info.
-
-# From Steffen Thorsen (2011-04-01):
-# The Falkland Islands will not turn back clocks this winter, but stay on
-# daylight saving time.
-#
-# One source:
-#
-# http://www.falklandnews.com/public/story.cfm?get=5914&source=3
-#
-#
-# We have gotten this confirmed by a clerk of the legislative assembly:
-# Normally the clocks revert to Local Mean Time (UTC/GMT -4 hours) on the
-# third Sunday of April at 0200hrs and advance to Summer Time (UTC/GMT -3
-# hours) on the first Sunday of September at 0200hrs.
-#
-# IMPORTANT NOTE: During 2011, on a trial basis, the Falkland Islands
-# will not revert to local mean time, but clocks will remain on Summer
-# time (UTC/GMT - 3 hours) throughout the whole of 2011. Any long term
-# change to local time following the trial period will be notified.
-#
-# From Andrew Newman (2012-02-24)
-# A letter from Justin McPhee, Chief Executive,
-# Cable & Wireless Falkland Islands (dated 2012-02-22)
-# states...
-# The current Atlantic/Stanley entry under South America expects the
-# clocks to go back to standard Falklands Time (FKT) on the 15th April.
-# The database entry states that in 2011 Stanley was staying on fixed
-# summer time on a trial basis only. FIG need to contact IANA and/or
-# the maintainers of the database to inform them we're adopting
-# the same policy this year and suggest recommendations for future years.
-#
-# For now we will assume permanent summer time for the Falklands
-# until advised differently (to apply for 2012 and beyond, after the 2011
-# experiment was apparently successful.)
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Falk 1937 1938 - Sep lastSun 0:00 1:00 S
-Rule Falk 1938 1942 - Mar Sun>=19 0:00 0 -
-Rule Falk 1939 only - Oct 1 0:00 1:00 S
-Rule Falk 1940 1942 - Sep lastSun 0:00 1:00 S
-Rule Falk 1943 only - Jan 1 0:00 0 -
-Rule Falk 1983 only - Sep lastSun 0:00 1:00 S
-Rule Falk 1984 1985 - Apr lastSun 0:00 0 -
-Rule Falk 1984 only - Sep 16 0:00 1:00 S
-Rule Falk 1985 2000 - Sep Sun>=9 0:00 1:00 S
-Rule Falk 1986 2000 - Apr Sun>=16 0:00 0 -
-Rule Falk 2001 2010 - Apr Sun>=15 2:00 0 -
-Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Stanley -3:51:24 - LMT 1890
- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
- -4:00 Falk FK%sT 1983 May # Falkland Is Time
- -3:00 Falk FK%sT 1985 Sep 15
- -4:00 Falk FK%sT 2010 Sep 5 02:00
- -3:00 - FKST
-
-# French Guiana
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Cayenne -3:29:20 - LMT 1911 Jul
- -4:00 - GFT 1967 Oct # French Guiana Time
- -3:00 - GFT
-
-# Guyana
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
- -3:45 - GBGT 1966 May 26 # Br Guiana Time
- -3:45 - GYT 1975 Jul 31 # Guyana Time
- -3:00 - GYT 1991
-# IATA SSIM (1996-06) says -4:00. Assume a 1991 switch.
- -4:00 - GYT
-
-# Paraguay
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
-# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999
-# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Para 1975 1988 - Oct 1 0:00 1:00 S
-Rule Para 1975 1978 - Mar 1 0:00 0 -
-Rule Para 1979 1991 - Apr 1 0:00 0 -
-Rule Para 1989 only - Oct 22 0:00 1:00 S
-Rule Para 1990 only - Oct 1 0:00 1:00 S
-Rule Para 1991 only - Oct 6 0:00 1:00 S
-Rule Para 1992 only - Mar 1 0:00 0 -
-Rule Para 1992 only - Oct 5 0:00 1:00 S
-Rule Para 1993 only - Mar 31 0:00 0 -
-Rule Para 1993 1995 - Oct 1 0:00 1:00 S
-Rule Para 1994 1995 - Feb lastSun 0:00 0 -
-Rule Para 1996 only - Mar 1 0:00 0 -
-# IATA SSIM (2000-02) says 1999-10-10; ignore this for now.
-# From Steffen Thorsen (2000-10-02):
-# I have three independent reports that Paraguay changed to DST this Sunday
-# (10-01).
-#
-# Translated by Gwillim Law (2001-02-27) from
-#
-# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
-# :
-# Starting at 0:00 today, the clock will be set forward 60 minutes, in
-# fulfillment of Decree No. 7,273 of the Executive Power.... The time change
-# system has been operating for several years. Formerly there was a separate
-# decree each year; the new law has the same effect, but permanently. Every
-# year, the time will change on the first Sunday of October; likewise, the
-# clock will be set back on the first Sunday of March.
-#
-Rule Para 1996 2001 - Oct Sun>=1 0:00 1:00 S
-# IATA SSIM (1997-09) says Mar 1; go with Shanks & Pottenger.
-Rule Para 1997 only - Feb lastSun 0:00 0 -
-# Shanks & Pottenger say 1999-02-28; IATA SSIM (1999-02) says 1999-02-27, but
-# (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
-Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
-# From Rives McDow (2002-02-28):
-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
-# dst method to be from the first Sunday in September to the first Sunday in
-# April.
-Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
-Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S
-#
-# From Jesper Norgaard Welen (2005-01-02):
-# There are several sources that claim that Paraguay made
-# a timezone rule change in autumn 2004.
-# From Steffen Thorsen (2005-01-05):
-# Decree 1,867 (2004-03-05)
-# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
-#
-Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S
-Rule Para 2005 2009 - Mar Sun>=8 0:00 0 -
-# From Carlos Raul Perasso (2010-02-18):
-# By decree number 3958 issued yesterday (
-#
-# http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf
-#
-# )
-# Paraguay changes its DST schedule, postponing the March rule to April and
-# modifying the October date. The decree reads:
-# ...
-# Art. 1. It is hereby established that from the second Sunday of the month of
-# April of this year (2010), the official time is to be set back 60 minutes,
-# and that on the first Sunday of the month of October, it is to be set
-# forward 60 minutes, in all the territory of the Paraguayan Republic.
-# ...
-Rule Para 2010 max - Oct Sun>=1 0:00 1:00 S
-Rule Para 2010 max - Apr Sun>=8 0:00 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Asuncion -3:50:40 - LMT 1890
- -3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time
- -4:00 - PYT 1972 Oct # Paraguay Time
- -3:00 - PYT 1974 Apr
- -4:00 Para PY%sT
-
-# Peru
-#
-#
-# From Evelyn C. Leeper via Mark Brader (2003-10-26):
-# When we were in Peru in 1985-1986, they apparently switched over
-# sometime between December 29 and January 3 while we were on the Amazon.
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger don't have this transition. Assume 1986 was like 1987.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Peru 1938 only - Jan 1 0:00 1:00 S
-Rule Peru 1938 only - Apr 1 0:00 0 -
-Rule Peru 1938 1939 - Sep lastSun 0:00 1:00 S
-Rule Peru 1939 1940 - Mar Sun>=24 0:00 0 -
-Rule Peru 1986 1987 - Jan 1 0:00 1:00 S
-Rule Peru 1986 1987 - Apr 1 0:00 0 -
-Rule Peru 1990 only - Jan 1 0:00 1:00 S
-Rule Peru 1990 only - Apr 1 0:00 0 -
-# IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
-Rule Peru 1994 only - Jan 1 0:00 1:00 S
-Rule Peru 1994 only - Apr 1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Lima -5:08:12 - LMT 1890
- -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
- -5:00 Peru PE%sT # Peru Time
-
-# South Georgia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
- -2:00 - GST # South Georgia Time
-
-# South Sandwich Is
-# uninhabited; scientific personnel have wintered
-
-# Suriname
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Paramaribo -3:40:40 - LMT 1911
- -3:40:52 - PMT 1935 # Paramaribo Mean Time
- -3:40:36 - PMT 1945 Oct # The capital moved?
- -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
- -3:30 - SRT 1984 Oct # Suriname Time
- -3:00 - SRT
-
-# Trinidad and Tobago
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2
- -4:00 - AST
-
-# Uruguay
-# From Paul Eggert (1993-11-18):
-# Uruguay wins the prize for the strangest peacetime manipulation of the rules.
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman gives 1923 Oct 1; go with Shanks & Pottenger.
-Rule Uruguay 1923 only - Oct 2 0:00 0:30 HS
-Rule Uruguay 1924 1926 - Apr 1 0:00 0 -
-Rule Uruguay 1924 1925 - Oct 1 0:00 0:30 HS
-Rule Uruguay 1933 1935 - Oct lastSun 0:00 0:30 HS
-# Shanks & Pottenger give 1935 Apr 1 0:00 & 1936 Mar 30 0:00; go with Whitman.
-Rule Uruguay 1934 1936 - Mar Sat>=25 23:30s 0 -
-Rule Uruguay 1936 only - Nov 1 0:00 0:30 HS
-Rule Uruguay 1937 1941 - Mar lastSun 0:00 0 -
-# Whitman gives 1937 Oct 3; go with Shanks & Pottenger.
-Rule Uruguay 1937 1940 - Oct lastSun 0:00 0:30 HS
-# Whitman gives 1941 Oct 24 - 1942 Mar 27, 1942 Dec 14 - 1943 Apr 13,
-# and 1943 Apr 13 ``to present time''; go with Shanks & Pottenger.
-Rule Uruguay 1941 only - Aug 1 0:00 0:30 HS
-Rule Uruguay 1942 only - Jan 1 0:00 0 -
-Rule Uruguay 1942 only - Dec 14 0:00 1:00 S
-Rule Uruguay 1943 only - Mar 14 0:00 0 -
-Rule Uruguay 1959 only - May 24 0:00 1:00 S
-Rule Uruguay 1959 only - Nov 15 0:00 0 -
-Rule Uruguay 1960 only - Jan 17 0:00 1:00 S
-Rule Uruguay 1960 only - Mar 6 0:00 0 -
-Rule Uruguay 1965 1967 - Apr Sun>=1 0:00 1:00 S
-Rule Uruguay 1965 only - Sep 26 0:00 0 -
-Rule Uruguay 1966 1967 - Oct 31 0:00 0 -
-Rule Uruguay 1968 1970 - May 27 0:00 0:30 HS
-Rule Uruguay 1968 1970 - Dec 2 0:00 0 -
-Rule Uruguay 1972 only - Apr 24 0:00 1:00 S
-Rule Uruguay 1972 only - Aug 15 0:00 0 -
-Rule Uruguay 1974 only - Mar 10 0:00 0:30 HS
-Rule Uruguay 1974 only - Dec 22 0:00 1:00 S
-Rule Uruguay 1976 only - Oct 1 0:00 0 -
-Rule Uruguay 1977 only - Dec 4 0:00 1:00 S
-Rule Uruguay 1978 only - Apr 1 0:00 0 -
-Rule Uruguay 1979 only - Oct 1 0:00 1:00 S
-Rule Uruguay 1980 only - May 1 0:00 0 -
-Rule Uruguay 1987 only - Dec 14 0:00 1:00 S
-Rule Uruguay 1988 only - Mar 14 0:00 0 -
-Rule Uruguay 1988 only - Dec 11 0:00 1:00 S
-Rule Uruguay 1989 only - Mar 12 0:00 0 -
-Rule Uruguay 1989 only - Oct 29 0:00 1:00 S
-# Shanks & Pottenger say no DST was observed in 1990/1 and 1991/2,
-# and that 1992/3's DST was from 10-25 to 03-01. Go with IATA.
-Rule Uruguay 1990 1992 - Mar Sun>=1 0:00 0 -
-Rule Uruguay 1990 1991 - Oct Sun>=21 0:00 1:00 S
-Rule Uruguay 1992 only - Oct 18 0:00 1:00 S
-Rule Uruguay 1993 only - Feb 28 0:00 0 -
-# From Eduardo Cota (2004-09-20):
-# The uruguayan government has decreed a change in the local time....
-# http://www.presidencia.gub.uy/decretos/2004091502.htm
-Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
-# From Steffen Thorsen (2005-03-11):
-# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to
-# save energy ... it was postponed two weeks....
-# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm
-Rule Uruguay 2005 only - Mar 27 2:00 0 -
-# From Eduardo Cota (2005-09-27):
-# http://www.presidencia.gub.uy/_Web/decretos/2005/09/CM%20119_09%2009%202005_00001.PDF
-# This means that from 2005-10-09 at 02:00 local time, until 2006-03-12 at
-# 02:00 local time, official time in Uruguay will be at GMT -2.
-Rule Uruguay 2005 only - Oct 9 2:00 1:00 S
-Rule Uruguay 2006 only - Mar 12 2:00 0 -
-# From Jesper Norgaard Welen (2006-09-06):
-# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
-Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
-Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
- -3:44:44 - MMT 1920 May 1 # Montevideo MT
- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
- -3:00 Uruguay UY%sT
-
-# Venezuela
-#
-# From John Stainforth (2007-11-28):
-# ... the change for Venezuela originally expected for 2007-12-31 has
-# been brought forward to 2007-12-09. The official announcement was
-# published today in the "Gaceta Oficial de la Republica Bolivariana
-# de Venezuela, numero 38.819" (official document for all laws or
-# resolution publication)
-# http://www.globovision.com/news.php?nid=72208
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Caracas -4:27:44 - LMT 1890
- -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
- -4:30 - VET 1965 # Venezuela Time
- -4:00 - VET 2007 Dec 9 03:00
- -4:30 - VET
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/systemv b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/systemv
deleted file mode 100755
index e651e8540..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/systemv
+++ /dev/null
@@ -1,38 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-
-# Old rules, should the need arise.
-# No attempt is made to handle Newfoundland, since it cannot be expressed
-# using the System V "TZ" scheme (half-hour offset), or anything outside
-# North America (no support for non-standard DST start/end dates), nor
-# the changes in the DST rules in the US after 1976 (which occurred after
-# the old rules were written).
-#
-# If you need the old rules, uncomment ## lines.
-# Compile this *without* leap second correction for true conformance.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule SystemV min 1973 - Apr lastSun 2:00 1:00 D
-Rule SystemV min 1973 - Oct lastSun 2:00 0 S
-Rule SystemV 1974 only - Jan 6 2:00 1:00 D
-Rule SystemV 1974 only - Nov lastSun 2:00 0 S
-Rule SystemV 1975 only - Feb 23 2:00 1:00 D
-Rule SystemV 1975 only - Oct lastSun 2:00 0 S
-Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D
-Rule SystemV 1976 max - Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-## Zone SystemV/AST4ADT -4:00 SystemV A%sT
-## Zone SystemV/EST5EDT -5:00 SystemV E%sT
-## Zone SystemV/CST6CDT -6:00 SystemV C%sT
-## Zone SystemV/MST7MDT -7:00 SystemV M%sT
-## Zone SystemV/PST8PDT -8:00 SystemV P%sT
-## Zone SystemV/YST9YDT -9:00 SystemV Y%sT
-## Zone SystemV/AST4 -4:00 - AST
-## Zone SystemV/EST5 -5:00 - EST
-## Zone SystemV/CST6 -6:00 - CST
-## Zone SystemV/MST7 -7:00 - MST
-## Zone SystemV/PST8 -8:00 - PST
-## Zone SystemV/YST9 -9:00 - YST
-## Zone SystemV/HST10 -10:00 - HST
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/yearistype.sh b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/yearistype.sh
deleted file mode 100755
index bdc6e5832..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/yearistype.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#! /bin/sh
-
-: 'This file is in the public domain, so clarified as of'
-: '2006-07-17 by Arthur David Olson.'
-
-case $#-$1 in
- 2-|2-0*|2-*[!0-9]*)
- echo "$0: wild year - $1" >&2
- exit 1 ;;
-esac
-
-case $#-$2 in
- 2-even)
- case $1 in
- *[24680]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-nonpres|2-nonuspres)
- case $1 in
- *[02468][048]|*[13579][26]) exit 1 ;;
- *) exit 0 ;;
- esac ;;
- 2-odd)
- case $1 in
- *[13579]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-uspres)
- case $1 in
- *[02468][048]|*[13579][26]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-*)
- echo "$0: wild type - $2" >&2 ;;
-esac
-
-echo "$0: usage is $0 year even|odd|uspres|nonpres|nonuspres" >&2
-exit 1
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/zone.tab b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/zone.tab
deleted file mode 100755
index 6bda8266b..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time-zones/tz/zone.tab
+++ /dev/null
@@ -1,441 +0,0 @@
-#
-# This file is in the public domain, so clarified as of
-# 2009-05-17 by Arthur David Olson.
-#
-# TZ zone descriptions
-#
-# From Paul Eggert (1996-08-05):
-#
-# This file contains a table with the following columns:
-# 1. ISO 3166 2-character country code. See the file `iso3166.tab'.
-# 2. Latitude and longitude of the zone's principal location
-# in ISO 6709 sign-degrees-minutes-seconds format,
-# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
-# first latitude (+ is north), then longitude (+ is east).
-# 3. Zone name used in value of TZ environment variable.
-# 4. Comments; present if and only if the country has multiple rows.
-#
-# Columns are separated by a single tab.
-# The table is sorted first by country, then an order within the country that
-# (1) makes some geographical sense, and
-# (2) puts the most populous zones first, where that does not contradict (1).
-#
-# Lines beginning with `#' are comments.
-#
-#country-
-#code coordinates TZ comments
-AD +4230+00131 Europe/Andorra
-AE +2518+05518 Asia/Dubai
-AF +3431+06912 Asia/Kabul
-AG +1703-06148 America/Antigua
-AI +1812-06304 America/Anguilla
-AL +4120+01950 Europe/Tirane
-AM +4011+04430 Asia/Yerevan
-AO -0848+01314 Africa/Luanda
-AQ -7750+16636 Antarctica/McMurdo McMurdo Station, Ross Island
-AQ -9000+00000 Antarctica/South_Pole Amundsen-Scott Station, South Pole
-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
-AQ -5430+15857 Antarctica/Macquarie Macquarie Island Station, Macquarie Island
-AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
-AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
-AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
-AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
-AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
-AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
-AR -3319-06621 America/Argentina/San_Luis San Luis (SL)
-AR -5138-06913 America/Argentina/Rio_Gallegos Santa Cruz (SC)
-AR -5448-06818 America/Argentina/Ushuaia Tierra del Fuego (TF)
-AS -1416-17042 Pacific/Pago_Pago
-AT +4813+01620 Europe/Vienna
-AU -3133+15905 Australia/Lord_Howe Lord Howe Island
-AU -4253+14719 Australia/Hobart Tasmania - most locations
-AU -3956+14352 Australia/Currie Tasmania - King Island
-AU -3749+14458 Australia/Melbourne Victoria
-AU -3352+15113 Australia/Sydney New South Wales - most locations
-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
-AU -2728+15302 Australia/Brisbane Queensland - most locations
-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
-AU -3455+13835 Australia/Adelaide South Australia
-AU -1228+13050 Australia/Darwin Northern Territory
-AU -3157+11551 Australia/Perth Western Australia - most locations
-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
-AW +1230-06958 America/Aruba
-AX +6006+01957 Europe/Mariehamn
-AZ +4023+04951 Asia/Baku
-BA +4352+01825 Europe/Sarajevo
-BB +1306-05937 America/Barbados
-BD +2343+09025 Asia/Dhaka
-BE +5050+00420 Europe/Brussels
-BF +1222-00131 Africa/Ouagadougou
-BG +4241+02319 Europe/Sofia
-BH +2623+05035 Asia/Bahrain
-BI -0323+02922 Africa/Bujumbura
-BJ +0629+00237 Africa/Porto-Novo
-BL +1753-06251 America/St_Barthelemy
-BM +3217-06446 Atlantic/Bermuda
-BN +0456+11455 Asia/Brunei
-BO -1630-06809 America/La_Paz
-BQ +120903-0681636 America/Kralendijk
-BR -0351-03225 America/Noronha Atlantic islands
-BR -0127-04829 America/Belem Amapa, E Para
-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
-BR -0803-03454 America/Recife Pernambuco
-BR -0712-04812 America/Araguaina Tocantins
-BR -0940-03543 America/Maceio Alagoas, Sergipe
-BR -1259-03831 America/Bahia Bahia
-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
-BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
-BR -1535-05605 America/Cuiaba Mato Grosso
-BR -0226-05452 America/Santarem W Para
-BR -0846-06354 America/Porto_Velho Rondonia
-BR +0249-06040 America/Boa_Vista Roraima
-BR -0308-06001 America/Manaus E Amazonas
-BR -0640-06952 America/Eirunepe W Amazonas
-BR -0958-06748 America/Rio_Branco Acre
-BS +2505-07721 America/Nassau
-BT +2728+08939 Asia/Thimphu
-BW -2439+02555 Africa/Gaborone
-BY +5354+02734 Europe/Minsk
-BZ +1730-08812 America/Belize
-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
-CA +4531-07334 America/Montreal Eastern Time - Quebec - most locations
-CA +4339-07923 America/Toronto Eastern Time - Ontario - most locations
-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
-CA +744144-0944945 America/Resolute Central Standard Time - Resolute, Nunavut
-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
-CA +6404-13925 America/Dawson Pacific Time - north Yukon
-CC -1210+09655 Indian/Cocos
-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
-CF +0422+01835 Africa/Bangui
-CG -0416+01517 Africa/Brazzaville
-CH +4723+00832 Europe/Zurich
-CI +0519-00402 Africa/Abidjan
-CK -2114-15946 Pacific/Rarotonga
-CL -3327-07040 America/Santiago most locations
-CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez
-CM +0403+00942 Africa/Douala
-CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc.
-CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin
-CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
-CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang
-CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang
-CO +0436-07405 America/Bogota
-CR +0956-08405 America/Costa_Rica
-CU +2308-08222 America/Havana
-CV +1455-02331 Atlantic/Cape_Verde
-CW +1211-06900 America/Curacao
-CX -1025+10543 Indian/Christmas
-CY +3510+03322 Asia/Nicosia
-CZ +5005+01426 Europe/Prague
-DE +5230+01322 Europe/Berlin
-DJ +1136+04309 Africa/Djibouti
-DK +5540+01235 Europe/Copenhagen
-DM +1518-06124 America/Dominica
-DO +1828-06954 America/Santo_Domingo
-DZ +3647+00303 Africa/Algiers
-EC -0210-07950 America/Guayaquil mainland
-EC -0054-08936 Pacific/Galapagos Galapagos Islands
-EE +5925+02445 Europe/Tallinn
-EG +3003+03115 Africa/Cairo
-EH +2709-01312 Africa/El_Aaiun
-ER +1520+03853 Africa/Asmara
-ES +4024-00341 Europe/Madrid mainland
-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
-ES +2806-01524 Atlantic/Canary Canary Islands
-ET +0902+03842 Africa/Addis_Ababa
-FI +6010+02458 Europe/Helsinki
-FJ -1808+17825 Pacific/Fiji
-FK -5142-05751 Atlantic/Stanley
-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
-FM +0519+16259 Pacific/Kosrae Kosrae
-FO +6201-00646 Atlantic/Faroe
-FR +4852+00220 Europe/Paris
-GA +0023+00927 Africa/Libreville
-GB +513030-0000731 Europe/London
-GD +1203-06145 America/Grenada
-GE +4143+04449 Asia/Tbilisi
-GF +0456-05220 America/Cayenne
-GG +4927-00232 Europe/Guernsey
-GH +0533-00013 Africa/Accra
-GI +3608-00521 Europe/Gibraltar
-GL +6411-05144 America/Godthab most locations
-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
-GL +7634-06847 America/Thule Thule / Pituffik
-GM +1328-01639 Africa/Banjul
-GN +0931-01343 Africa/Conakry
-GP +1614-06132 America/Guadeloupe
-GQ +0345+00847 Africa/Malabo
-GR +3758+02343 Europe/Athens
-GS -5416-03632 Atlantic/South_Georgia
-GT +1438-09031 America/Guatemala
-GU +1328+14445 Pacific/Guam
-GW +1151-01535 Africa/Bissau
-GY +0648-05810 America/Guyana
-HK +2217+11409 Asia/Hong_Kong
-HN +1406-08713 America/Tegucigalpa
-HR +4548+01558 Europe/Zagreb
-HT +1832-07220 America/Port-au-Prince
-HU +4730+01905 Europe/Budapest
-ID -0610+10648 Asia/Jakarta Java & Sumatra
-ID -0002+10920 Asia/Pontianak west & central Borneo
-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
-IE +5320-00615 Europe/Dublin
-IL +3146+03514 Asia/Jerusalem
-IM +5409-00428 Europe/Isle_of_Man
-IN +2232+08822 Asia/Kolkata
-IO -0720+07225 Indian/Chagos
-IQ +3321+04425 Asia/Baghdad
-IR +3540+05126 Asia/Tehran
-IS +6409-02151 Atlantic/Reykjavik
-IT +4154+01229 Europe/Rome
-JE +4912-00207 Europe/Jersey
-JM +1800-07648 America/Jamaica
-JO +3157+03556 Asia/Amman
-JP +353916+1394441 Asia/Tokyo
-KE -0117+03649 Africa/Nairobi
-KG +4254+07436 Asia/Bishkek
-KH +1133+10455 Asia/Phnom_Penh
-KI +0125+17300 Pacific/Tarawa Gilbert Islands
-KI -0308-17105 Pacific/Enderbury Phoenix Islands
-KI +0152-15720 Pacific/Kiritimati Line Islands
-KM -1141+04316 Indian/Comoro
-KN +1718-06243 America/St_Kitts
-KP +3901+12545 Asia/Pyongyang
-KR +3733+12658 Asia/Seoul
-KW +2920+04759 Asia/Kuwait
-KY +1918-08123 America/Cayman
-KZ +4315+07657 Asia/Almaty most locations
-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
-KZ +5113+05121 Asia/Oral West Kazakhstan
-LA +1758+10236 Asia/Vientiane
-LB +3353+03530 Asia/Beirut
-LC +1401-06100 America/St_Lucia
-LI +4709+00931 Europe/Vaduz
-LK +0656+07951 Asia/Colombo
-LR +0618-01047 Africa/Monrovia
-LS -2928+02730 Africa/Maseru
-LT +5441+02519 Europe/Vilnius
-LU +4936+00609 Europe/Luxembourg
-LV +5657+02406 Europe/Riga
-LY +3254+01311 Africa/Tripoli
-MA +3339-00735 Africa/Casablanca
-MC +4342+00723 Europe/Monaco
-MD +4700+02850 Europe/Chisinau
-ME +4226+01916 Europe/Podgorica
-MF +1804-06305 America/Marigot
-MG -1855+04731 Indian/Antananarivo
-MH +0709+17112 Pacific/Majuro most locations
-MH +0905+16720 Pacific/Kwajalein Kwajalein
-MK +4159+02126 Europe/Skopje
-ML +1239-00800 Africa/Bamako
-MM +1647+09610 Asia/Rangoon
-MN +4755+10653 Asia/Ulaanbaatar most locations
-MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
-MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
-MO +2214+11335 Asia/Macau
-MP +1512+14545 Pacific/Saipan
-MQ +1436-06105 America/Martinique
-MR +1806-01557 Africa/Nouakchott
-MS +1643-06213 America/Montserrat
-MT +3554+01431 Europe/Malta
-MU -2010+05730 Indian/Mauritius
-MV +0410+07330 Indian/Maldives
-MW -1547+03500 Africa/Blantyre
-MX +1924-09909 America/Mexico_City Central Time - most locations
-MX +2105-08646 America/Cancun Central Time - Quintana Roo
-MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
-MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
-MY +0133+11020 Asia/Kuching Sabah & Sarawak
-MZ -2558+03235 Africa/Maputo
-NA -2234+01706 Africa/Windhoek
-NC -2216+16627 Pacific/Noumea
-NE +1331+00207 Africa/Niamey
-NF -2903+16758 Pacific/Norfolk
-NG +0627+00324 Africa/Lagos
-NI +1209-08617 America/Managua
-NL +5222+00454 Europe/Amsterdam
-NO +5955+01045 Europe/Oslo
-NP +2743+08519 Asia/Kathmandu
-NR -0031+16655 Pacific/Nauru
-NU -1901-16955 Pacific/Niue
-NZ -3652+17446 Pacific/Auckland most locations
-NZ -4357-17633 Pacific/Chatham Chatham Islands
-OM +2336+05835 Asia/Muscat
-PA +0858-07932 America/Panama
-PE -1203-07703 America/Lima
-PF -1732-14934 Pacific/Tahiti Society Islands
-PF -0900-13930 Pacific/Marquesas Marquesas Islands
-PF -2308-13457 Pacific/Gambier Gambier Islands
-PG -0930+14710 Pacific/Port_Moresby
-PH +1435+12100 Asia/Manila
-PK +2452+06703 Asia/Karachi
-PL +5215+02100 Europe/Warsaw
-PM +4703-05620 America/Miquelon
-PN -2504-13005 Pacific/Pitcairn
-PR +182806-0660622 America/Puerto_Rico
-PS +3130+03428 Asia/Gaza Gaza Strip
-PS +313200+0350542 Asia/Hebron West Bank
-PT +3843-00908 Europe/Lisbon mainland
-PT +3238-01654 Atlantic/Madeira Madeira Islands
-PT +3744-02540 Atlantic/Azores Azores
-PW +0720+13429 Pacific/Palau
-PY -2516-05740 America/Asuncion
-QA +2517+05132 Asia/Qatar
-RE -2052+05528 Indian/Reunion
-RO +4426+02606 Europe/Bucharest
-RS +4450+02030 Europe/Belgrade
-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
-RU +5545+03735 Europe/Moscow Moscow+00 - west Russia
-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
-RU +5312+05009 Europe/Samara Moscow+00 - Samara, Udmurtia
-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
-RU +5345+08707 Asia/Novokuznetsk Moscow+03 - Novokuznetsk
-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
-RU +5934+15048 Asia/Magadan Moscow+08 - Magadan
-RU +5301+15839 Asia/Kamchatka Moscow+08 - Kamchatka
-RU +6445+17729 Asia/Anadyr Moscow+08 - Bering Sea
-RW -0157+03004 Africa/Kigali
-SA +2438+04643 Asia/Riyadh
-SB -0932+16012 Pacific/Guadalcanal
-SC -0440+05528 Indian/Mahe
-SD +1536+03232 Africa/Khartoum
-SE +5920+01803 Europe/Stockholm
-SG +0117+10351 Asia/Singapore
-SH -1555-00542 Atlantic/St_Helena
-SI +4603+01431 Europe/Ljubljana
-SJ +7800+01600 Arctic/Longyearbyen
-SK +4809+01707 Europe/Bratislava
-SL +0830-01315 Africa/Freetown
-SM +4355+01228 Europe/San_Marino
-SN +1440-01726 Africa/Dakar
-SO +0204+04522 Africa/Mogadishu
-SR +0550-05510 America/Paramaribo
-SS +0451+03136 Africa/Juba
-ST +0020+00644 Africa/Sao_Tome
-SV +1342-08912 America/El_Salvador
-SX +180305-0630250 America/Lower_Princes
-SY +3330+03618 Asia/Damascus
-SZ -2618+03106 Africa/Mbabane
-TC +2128-07108 America/Grand_Turk
-TD +1207+01503 Africa/Ndjamena
-TF -492110+0701303 Indian/Kerguelen
-TG +0608+00113 Africa/Lome
-TH +1345+10031 Asia/Bangkok
-TJ +3835+06848 Asia/Dushanbe
-TK -0922-17114 Pacific/Fakaofo
-TL -0833+12535 Asia/Dili
-TM +3757+05823 Asia/Ashgabat
-TN +3648+01011 Africa/Tunis
-TO -2110-17510 Pacific/Tongatapu
-TR +4101+02858 Europe/Istanbul
-TT +1039-06131 America/Port_of_Spain
-TV -0831+17913 Pacific/Funafuti
-TW +2503+12130 Asia/Taipei
-TZ -0648+03917 Africa/Dar_es_Salaam
-UA +5026+03031 Europe/Kiev most locations
-UA +4837+02218 Europe/Uzhgorod Ruthenia
-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
-UA +4457+03406 Europe/Simferopol central Crimea
-UG +0019+03225 Africa/Kampala
-UM +1645-16931 Pacific/Johnston Johnston Atoll
-UM +2813-17722 Pacific/Midway Midway Islands
-UM +1917+16637 Pacific/Wake Wake Island
-US +404251-0740023 America/New_York Eastern Time
-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
-US +415100-0873900 America/Chicago Central Time
-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
-US +394421-1045903 America/Denver Mountain Time
-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
-US +364708-1084111 America/Shiprock Mountain Time - Navajo
-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona
-US +340308-1181434 America/Los_Angeles Pacific Time
-US +611305-1495401 America/Anchorage Alaska Time
-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
-US +643004-1652423 America/Nome Alaska Time - west Alaska
-US +515248-1763929 America/Adak Aleutian Islands
-US +550737-1313435 America/Metlakatla Metlakatla Time - Annette Island
-US +211825-1575130 Pacific/Honolulu Hawaii
-UY -3453-05611 America/Montevideo
-UZ +3940+06648 Asia/Samarkand west Uzbekistan
-UZ +4120+06918 Asia/Tashkent east Uzbekistan
-VA +415408+0122711 Europe/Vatican
-VC +1309-06114 America/St_Vincent
-VE +1030-06656 America/Caracas
-VG +1827-06437 America/Tortola
-VI +1821-06456 America/St_Thomas
-VN +1045+10640 Asia/Ho_Chi_Minh
-VU -1740+16825 Pacific/Efate
-WF -1318-17610 Pacific/Wallis
-WS -1350-17144 Pacific/Apia
-YE +1245+04512 Asia/Aden
-YT -1247+04514 Indian/Mayotte
-ZA -2615+02800 Africa/Johannesburg
-ZM -1525+02817 Africa/Lusaka
-ZW -1750+03103 Africa/Harare
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/axes-time/index.html
deleted file mode 100755
index ac3b2dc75..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/axes-time/index.html
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
-
-
- Flot Examples: Time Axes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Monthly mean atmospheric CO2 in PPM at Mauna Loa, Hawaii (source: NOAA/ESRL ).
-
-
If you tell Flot that an axis represents time, the data will be interpreted as timestamps and the ticks adjusted and formatted accordingly.
-
-
Zoom to: Whole period
- 1990-2000
- 1996-2000
-
-
Zoom to: 1999 by quarter
- 1999 by month
- Last week of 1999
- Dec. 31, 1999
-
-
The timestamps must be specified as Javascript timestamps, as milliseconds since January 1, 1970 00:00. This is like Unix timestamps, but in milliseconds instead of seconds (remember to multiply with 1000!).
-
-
As an extra caveat, the timestamps are interpreted according to UTC and, by default, displayed as such. You can set the axis "timezone" option to "browser" to display the timestamps in the user's timezone, or, if you use timezoneJS, you can specify a time zone.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/background.png b/front/lib/AdminLTE/bower_components/Flot/examples/background.png
deleted file mode 100755
index 47a4a4c51..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/background.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/basic-options/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/basic-options/index.html
deleted file mode 100755
index 8d7f98d06..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/basic-options/index.html
+++ /dev/null
@@ -1,91 +0,0 @@
-
-
-
-
- Flot Examples: Basic Options
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
There are plenty of options you can set to control the precise looks of your plot. You can control the ticks on the axes, the legend, the graph type, etc.
-
-
Flot goes to great lengths to provide sensible defaults so that you don't have to customize much for a good-looking result.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/basic-usage/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/basic-usage/index.html
deleted file mode 100755
index 4ace69639..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/basic-usage/index.html
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
- Flot Examples: Basic Usage
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
You don't have to do much to get an attractive plot. Create a placeholder, make sure it has dimensions (so Flot knows at what size to draw the plot), then call the plot function with your data.
-
-
The axes are automatically scaled.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/canvas/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/canvas/index.html
deleted file mode 100755
index f51362a31..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/canvas/index.html
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
-
-
- Flot Examples: Canvas text
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This example uses the same dataset (raw oil price in US $/barrel of crude oil vs. the exchange rate from US $ to €) as the multiple-axes example, but uses the canvas plugin to render axis tick labels using canvas text.
-
-
Enable canvas text
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/categories/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/categories/index.html
deleted file mode 100755
index 58416764b..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/categories/index.html
+++ /dev/null
@@ -1,64 +0,0 @@
-
-
-
-
- Flot Examples: Categories
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
With the categories plugin you can plot categories/textual data easily.
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/examples.css b/front/lib/AdminLTE/bower_components/Flot/examples/examples.css
deleted file mode 100755
index ee4724778..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/examples.css
+++ /dev/null
@@ -1,97 +0,0 @@
-* { padding: 0; margin: 0; vertical-align: top; }
-
-body {
- background: url(background.png) repeat-x;
- font: 18px/1.5em "proxima-nova", Helvetica, Arial, sans-serif;
-}
-
-a { color: #069; }
-a:hover { color: #28b; }
-
-h2 {
- margin-top: 15px;
- font: normal 32px "omnes-pro", Helvetica, Arial, sans-serif;
-}
-
-h3 {
- margin-left: 30px;
- font: normal 26px "omnes-pro", Helvetica, Arial, sans-serif;
- color: #666;
-}
-
-p {
- margin-top: 10px;
-}
-
-button {
- font-size: 18px;
- padding: 1px 7px;
-}
-
-input {
- font-size: 18px;
-}
-
-input[type=checkbox] {
- margin: 7px;
-}
-
-#header {
- position: relative;
- width: 900px;
- margin: auto;
-}
-
-#header h2 {
- margin-left: 10px;
- vertical-align: middle;
- font-size: 42px;
- font-weight: bold;
- text-decoration: none;
- color: #000;
-}
-
-#content {
- width: 880px;
- margin: 0 auto;
- padding: 10px;
-}
-
-#footer {
- margin-top: 25px;
- margin-bottom: 10px;
- text-align: center;
- font-size: 12px;
- color: #999;
-}
-
-.demo-container {
- box-sizing: border-box;
- width: 850px;
- height: 450px;
- padding: 20px 15px 15px 15px;
- margin: 15px auto 30px auto;
- border: 1px solid #ddd;
- background: #fff;
- background: linear-gradient(#f6f6f6 0, #fff 50px);
- background: -o-linear-gradient(#f6f6f6 0, #fff 50px);
- background: -ms-linear-gradient(#f6f6f6 0, #fff 50px);
- background: -moz-linear-gradient(#f6f6f6 0, #fff 50px);
- background: -webkit-linear-gradient(#f6f6f6 0, #fff 50px);
- box-shadow: 0 3px 10px rgba(0,0,0,0.15);
- -o-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
- -ms-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
- -moz-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
- -webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
-}
-
-.demo-placeholder {
- width: 100%;
- height: 100%;
- font-size: 14px;
- line-height: 1.2em;
-}
-
-.legend table {
- border-spacing: 5px;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/image/hs-2004-27-a-large-web.jpg b/front/lib/AdminLTE/bower_components/Flot/examples/image/hs-2004-27-a-large-web.jpg
deleted file mode 100755
index a1d5c0583..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/image/hs-2004-27-a-large-web.jpg and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/image/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/image/index.html
deleted file mode 100755
index 450101c9a..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/image/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
- Flot Examples: Image Plots
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The Cat's Eye Nebula (picture from Hubble ).
-
-
With the image plugin, you can plot static images against a set of axes. This is for useful for adding ticks to complex prerendered visualizations. Instead of inputting data points, you specify the images and where their two opposite corners are supposed to be in plot space.
-
-
Images represent a little further complication because you need to make sure they are loaded before you can use them (Flot skips incomplete images). The plugin comes with a couple of helpers for doing that.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/index.html
deleted file mode 100755
index 6975d2906..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/index.html
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
- Flot Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
Here are some examples for Flot , the Javascript charting library for jQuery:
-
-
Basic Usage
-
-
-
-
Interactivity
-
-
-
-
Additional Features
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/interacting/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/interacting/index.html
deleted file mode 100755
index 31169dbb3..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/interacting/index.html
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
-
-
- Flot Examples: Interactivity
-
-
-
-
-
-
-
-
-
-
-
-
-
-
One of the goals of Flot is to support user interactions. Try pointing and clicking on the points.
-
-
- Show mouse position
-
-
-
-
-
A tooltip is easy to build with a bit of jQuery code and the data returned from the plot.
-
-
Enable tooltip
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-down.gif b/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-down.gif
deleted file mode 100755
index e239d11aa..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-down.gif and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-left.gif b/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-left.gif
deleted file mode 100755
index 93ffd5a9e..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-left.gif and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-right.gif b/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-right.gif
deleted file mode 100755
index 5fd053085..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-right.gif and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-up.gif b/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-up.gif
deleted file mode 100755
index 7d196267e..000000000
Binary files a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/arrow-up.gif and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/navigate/index.html
deleted file mode 100755
index 671692e76..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/navigate/index.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
-
-
- Flot Examples: Navigation
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
With the navigate plugin it is easy to add panning and zooming. Drag to pan, double click to zoom (or use the mouse scrollwheel).
-
-
The plugin fires events (useful for synchronizing several plots) and adds a couple of public methods so you can easily build a little user interface around it, like the little buttons at the top right in the plot.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/percentiles/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/percentiles/index.html
deleted file mode 100755
index 57df2a5bb..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/percentiles/index.html
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-
- Flot Examples: Percentiles
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Height in centimeters of individuals from the US (2003-2006) as function of age in years (source: CDC ). The 15%-85%, 25%-75% and 50% percentiles are indicated.
-
-
For each point of a filled curve, you can specify an arbitrary bottom. As this example illustrates, this can be useful for plotting percentiles. If you have the data sets available without appropriate fill bottoms, you can use the fillbetween plugin to compute the data point bottoms automatically.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/realtime/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/realtime/index.html
deleted file mode 100755
index 8742a29b2..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/realtime/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
- Flot Examples: Real-time updates
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
You can update a chart periodically to get a real-time effect by using a timer to insert the new data in the plot and redraw it.
-
-
Time between updates: milliseconds
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/resize/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/resize/index.html
deleted file mode 100755
index 46b815c16..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/resize/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
- Flot Examples: Resizing
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Sometimes it makes more sense to just let the plot take up the available space. In that case, we need to redraw the plot each time the placeholder changes its size. If you include the resize plugin, this is handled automatically.
-
-
Drag the bottom and right sides of the plot to resize it.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/selection/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/selection/index.html
deleted file mode 100755
index 48db7d3b5..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/selection/index.html
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
-
- Flot Examples: Selection
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
1000 kg. CO2 emissions per year per capita for various countries (source: Wikipedia ).
-
-
Flot supports selections through the selection plugin. You can enable rectangular selection or one-dimensional selection if the user should only be able to select on one axis. Try left-click and drag on the plot above where selection on the x axis is enabled.
-
-
You selected:
-
-
The plot command returns a plot object you can use to control the selection. Click the buttons below.
-
-
- Clear selection
- Select year 1994
-
-
-
Selections are really useful for zooming. Just replot the chart with min and max values for the axes set to the values in the "plotselected" event triggered. Enable the checkbox below and select a region again.
-
-
Zoom to selection.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/series-errorbars/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/series-errorbars/index.html
deleted file mode 100755
index 23a5a877e..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/series-errorbars/index.html
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
- Flot Examples: Error Bars
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
With the errorbars plugin you can plot error bars to show standard deviation and other useful statistical properties.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/series-pie/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/series-pie/index.html
deleted file mode 100755
index 342636f00..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/series-pie/index.html
+++ /dev/null
@@ -1,818 +0,0 @@
-
-
-
-
- Flot Examples: Pie Charts
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Source Code
-
-
-
-
-
Pie Options
-
-
- option: default value - Description of option
- show: false - Enable the plugin and draw as a pie.
- radius: 'auto' - Sets the radius of the pie. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length. If set to 'auto', it will be set to 1 if the legend is enabled and 3/4 if not.
- innerRadius: 0 - Sets the radius of the donut hole. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the radius, otherwise it will use the value as a direct pixel length.
- startAngle: 3/2 - Factor of PI used for the starting angle (in radians) It can range between 0 and 2 (where 0 and 2 have the same result).
- tilt: 1 - Percentage of tilt ranging from 0 and 1, where 1 has no change (fully vertical) and 0 is completely flat (fully horizontal -- in which case nothing actually gets drawn).
- shadow:
- top: 5 - Vertical distance in pixel of the tilted pie shadow.
- left: 15 - Horizontal distance in pixel of the tilted pie shadow.
- alpha: 0.02 - Alpha value of the tilted pie shadow.
-
- offset:
- top: 0 - Pixel distance to move the pie up and down (relative to the center).
- left: 'auto' - Pixel distance to move the pie left and right (relative to the center).
-
- stroke:
- color: '#FFF' - Color of the border of each slice. Hexadecimal color definitions are prefered (other formats may or may not work).
- width: 1 - Pixel width of the border of each slice.
-
- label:
- show: 'auto' - Enable/Disable the labels. This can be set to true, false, or 'auto'. When set to 'auto', it will be set to false if the legend is enabled and true if not.
- radius: 1 - Sets the radius at which to place the labels. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length.
- threshold: 0 - Hides the labels of any pie slice that is smaller than the specified percentage (ranging from 0 to 1) i.e. a value of '0.03' will hide all slices 3% or less of the total.
- formatter: [function] - This function specifies how the positioned labels should be formatted, and is applied after the legend's labelFormatter function. The labels can also still be styled using the class "pieLabel" (i.e. ".pieLabel" or "#graph1 .pieLabel").
- radius: 1 - Sets the radius at which to place the labels. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length.
- background:
- color: null - Backgound color of the positioned labels. If null, the plugin will automatically use the color of the slice.
- opacity: 0 - Opacity of the background for the positioned labels. Acceptable values range from 0 to 1, where 0 is completely transparent and 1 is completely opaque.
-
-
- combine:
- threshold: 0 - Combines all slices that are smaller than the specified percentage (ranging from 0 to 1) i.e. a value of '0.03' will combine all slices 3% or less into one slice).
- color: null - Backgound color of the positioned labels. If null, the plugin will automatically use the color of the first slice to be combined.
- label: 'Other' - Label text for the combined slice.
-
- highlight:
- opacity: 0.5 - Opacity of the highlight overlay on top of the current pie slice. Currently this just uses a white overlay, but support for changing the color of the overlay will also be added at a later date.
-
-
-
-
Changes/Features
-
- v1.0 - November 20th, 2009 - Brian Medendorp
- The pie plug-in is now part of the Flot repository! This should make it a lot easier to deal with.
- Added a new option (innerRadius) to add a "donut hole" to the center of the pie, based on comtributions from Anthony Aragues. I was a little reluctant to add this feature because it doesn't work very well with the shadow created for the tilted pie, but figured it was worthwhile for non-tilted pies. Also, excanvas apparently doesn't support compositing, so it will fall back to using the stroke color to fill in the center (but I recommend setting the stroke color to the background color anyway).
- Changed the lineJoin for the border of the pie slices to use the 'round' option. This should make the center of the pie look better, particularly when there are numerous thin slices.
- Included a bug fix submitted by btburnett3 to display a slightly smaller slice in the event that the slice is 100% and being rendered with Internet Explorer. I haven't experienced this bug myself, but it doesn't seem to hurt anything so I've included it.
- The tilt value is now used when calculating the maximum radius of the pie in relation to the height of the container. This should prevent the pie from being smaller than it needed to in some cases, as well as reducing the amount of extra white space generated above and below the pie.
- Hover and Click functionality are now availabe!
- Thanks to btburnett3 for the original hover functionality and Anthony Aragues for the modification that makes it compatable with excanvas, this was a huge help!
- Added a new option (highlight opacity) to modify the highlight created when mousing over a slice. Currently this just uses a white overlay, but an option to change the hightlight color will be added when the appropriate functionality becomes available.
- I had a major setback that required me to practically rebuild the hover/click events from scratch one piece at a time (I discovered that it only worked with a single pie on a page at a time), but the end result ended up being virtually identical to the original, so I'm not quite sure what exactly made it work.
- Warning: There are some minor issues with using this functionality in conjuction with some of the other more advanced features (tilt and donut). When using a donut hole, the inner portion still triggers the events even though that portion of the pie is no longer visible. When tilted, the interactive portions still use the original, untilted version of the pie when determining mouse position (this is because the isPointInPath function apparently doesn't work with transformations), however hover and click both work this way, so the appropriate slice is still highlighted when clicking, and it isn't as noticable of a problem.
-
- Included a bug fix submitted by Xavi Ivars to fix array issues when other javascript libraries are included in addition to jQuery
-
- v0.4 - July 1st, 2009 - Brian Medendorp
- Each series will now be shown in the legend, even if it's value is zero. The series will not get a positioned label because it will overlap with the other labels present and often makes them unreadable.
- Data can now be passed in using the standard Flot method using an array of datapoints, the pie plugin will simply use the first y-value that it finds for each series in this case. The plugin uses this datastructure internally, but you can still use the old method of passing in a single numerical value for each series (the plugin will convert it as necessary). This should make it easier to transition from other types of graphs (such as a stacked bar graph) to a pie.
- The pie can now be tilted at an angle with a new "tilt" option. Acceptable values range from 0-1, where 1 has no change (fully vertical) and 0 is completely flat (fully horizontal -- in which case nothing actually gets drawn). If the plugin determines that it will fit within the canvas, a drop shadow will be drawn under the tilted pie (this also requires a tilt value of 0.8 or less).
-
- v0.3.2 - June 25th, 2009 - Brian Medendorp
- Fixed a bug that was causing the pie to be shifted too far left or right when the legend is showing in some cases.
-
- v0.3.1 - June 24th, 2009 - Brian Medendorp
- Fixed a bug that was causing nothing to be drawn and generating a javascript error if any of the data values were set to zero.
-
- v0.3 - June 23rd, 2009 - Brian Medendorp
- The legend now works without any modifications! Because of changes made to flot and the plugin system (thanks Ole Laursen!) I was able to simplify a number of things and am now able to use the legend without the direct access hack that was required in the previous version.
-
- v0.2 - June 22nd, 2009 - Brian Medendorp
- The legend now works but only if you make the necessary changes to jquery.flot.js. Because of this, I changed the default values for pie.radius and pie.label.show to new 'auto' settings that change the default behavior of the size and labels depending on whether the legend functionality is available or not.
-
- v0.1 - June 18th, 2009 - Brian Medendorp
- Rewrote the entire pie code into a flot plugin (since that is now an option), so it should be much easier to use and the code is cleaned up a bit. However, the (standard flot) legend is no longer available because the only way to prevent the grid lines from being displayed also prevents the legend from being displayed. Hopefully this can be fixed at a later date.
- Restructured and combined some of the options. It should be much easier to deal with now.
- Added the ability to change the starting point of the pie (still defaults to the top).
- Modified the default options to show the labels to compensate for the lack of a legend.
- Modified this page to use a random dataset. Note: you may need to refresh the page to see the effects of some of the examples.
-
- May 21st, 2009 - Brian Medendorp
- Merged original pie modifications by Sergey Nosenko into the latest SVN version (as of May 15th, 2009) so that it will work with ie8.
- Pie graph will now be centered in the canvas unless moved because of the legend or manually via the options. Additionally it prevents the pie from being moved beyond the edge of the canvas.
- Modified the code related to the labelFormatter option to apply flot's legend labelFormatter first. This is so that the labels will be consistent, but still provide extra formatting for the positioned labels (such as adding the percentage value).
- Positioned labels now have their backgrounds applied as a seperate element (much like the legend background) so that the opacity value can be set independently from the label itself (foreground). Additionally, the background color defaults to that of the matching slice.
- As long as the labelOffset and radiusLimit are not set to hard values, the pie will be shrunk if the labels will extend outside the edge of the canvas
- Added new options "radiusLimitFactor" and "radiusLimit" which limits how large the (visual) radius of the pie is in relation to the full radius (as calculated from the canvas dimensions) or a hard-pixel value (respectively). This allows for pushing the labels "outside" the pie.
- Added a new option "labelHidePercent" that does not show the positioned labels of slices smaller than the specified percentage. This is to help prevent a bunch of overlapping labels from small slices.
- Added a new option "sliceCombinePercent" that combines all slices smaller than the specified percentage into one larger slice. This is to help make the pie more attractive when there are a number of tiny slices. The options "sliceCombineColor" and "sliceCombineLabel" have also been added to change the color and name of the new slice if desired.
- Tested in Firefox (3.0.10, 3.5b4), Internet Explorer (6.0.2900, 7.0.5730, 8.0.6001), Chrome (1.0.154), Opera (9.64), and Safari (3.1.1, 4 beta 5528.16).
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/series-toggle/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/series-toggle/index.html
deleted file mode 100755
index 4c062902c..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/series-toggle/index.html
+++ /dev/null
@@ -1,121 +0,0 @@
-
-
-
-
- Flot Examples: Toggling Series
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This example shows military budgets for various countries in constant (2005) million US dollars (source: SIPRI ).
-
-
Since all data is available client-side, it's pretty easy to make the plot interactive. Try turning countries on and off with the checkboxes next to the plot.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/series-types/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/series-types/index.html
deleted file mode 100755
index 91f72437f..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/series-types/index.html
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
- Flot Examples: Series Types
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Flot supports lines, points, filled areas, bars and any combinations of these, in the same plot and even on the same data series.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/shared/jquery-ui/jquery-ui.min.css b/front/lib/AdminLTE/bower_components/Flot/examples/shared/jquery-ui/jquery-ui.min.css
deleted file mode 100755
index 08331c1cb..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/shared/jquery-ui/jquery-ui.min.css
+++ /dev/null
@@ -1,6 +0,0 @@
-/*! jQuery UI - v1.10.0 - 2013-01-26
-* http://jqueryui.com
-* Includes: jquery.ui.core.css, jquery.ui.resizable.css
-* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */
-
-.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/stacking/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/stacking/index.html
deleted file mode 100755
index bf5414ec3..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/stacking/index.html
+++ /dev/null
@@ -1,107 +0,0 @@
-
-
-
-
- Flot Examples: Stacking
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
With the stack plugin, you can have Flot stack the series. This is useful if you wish to display both a total and the constituents it is made of. The only requirement is that you provide the input sorted on x.
-
-
- With stacking
- Without stacking
-
-
-
- Bars
- Lines
- Lines with steps
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/symbols/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/symbols/index.html
deleted file mode 100755
index e2507be25..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/symbols/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
- Flot Examples: Symbols
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Points can be marked in several ways, with circles being the built-in default. For other point types, you can define a callback function to draw the symbol. Some common symbols are available in the symbol plugin.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/threshold/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/threshold/index.html
deleted file mode 100755
index c2c596f32..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/threshold/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
- Flot Examples: Thresholds
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
With the threshold plugin, you can apply a specific color to the part of a data series below a threshold. This is can be useful for highlighting negative values, e.g. when displaying net results or what's in stock.
-
-
- Threshold at 5
- Threshold at 0
- Threshold at -2.5
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/tracking/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/tracking/index.html
deleted file mode 100755
index 69276c2d0..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/tracking/index.html
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
- Flot Examples: Tracking
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
You can add crosshairs that'll track the mouse position, either on both axes or as here on only one.
-
-
If you combine it with listening on hover events, you can use it to track the intersection on the curves by interpolating the data points (look at the legend).
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/visitors/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/visitors/index.html
deleted file mode 100755
index 803c0bc1c..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/visitors/index.html
+++ /dev/null
@@ -1,147 +0,0 @@
-
-
-
-
- Flot Examples: Visitors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This plot shows visitors per day to the Flot homepage, with weekends colored.
-
-
The smaller plot is linked to the main plot, so it acts as an overview. Try dragging a selection on either plot, and watch the behavior of the other.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/examples/zooming/index.html b/front/lib/AdminLTE/bower_components/Flot/examples/zooming/index.html
deleted file mode 100755
index fb295d549..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/examples/zooming/index.html
+++ /dev/null
@@ -1,144 +0,0 @@
-
-
-
-
- Flot Examples: Selection and zooming
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Selection support makes it easy to construct flexible zooming schemes. With a few lines of code, the small overview plot to the right has been connected to the large plot. Try selecting a rectangle on either of them.
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/Flot/excanvas.js b/front/lib/AdminLTE/bower_components/Flot/excanvas.js
deleted file mode 100755
index 70a8f25ca..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/excanvas.js
+++ /dev/null
@@ -1,1428 +0,0 @@
-// 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.
-// * Filling very large shapes (above 5000 points) is buggy.
-// * 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 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, '&').replace(/"/g, '"');
- }
-
- 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;
- }
- };
-
- 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;
-
- 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(' ' ,
- ' ',
- ' ');
-
- this.element_.insertAdjacentHTML('BeforeEnd', vmlStr.join(''));
- };
-
- contextPrototype.stroke = function(aFill) {
- var W = 10;
- var H = 10;
- // Divide the shape into chunks if it's too long because IE has a limit
- // somewhere for how long a VML shape can be. This simple division does
- // not work with fills, only strokes, unfortunately.
- var chunkSize = 5000;
-
- var min = {x: null, y: null};
- var max = {x: null, y: null};
-
- for (var j = 0; j < this.currentPath_.length; j += chunkSize) {
- var lineStr = [];
- var lineOpen = false;
-
- lineStr.push('');
-
- if (!aFill) {
- appendStroke(this, lineStr);
- } else {
- appendFill(this, lineStr, min, max);
- }
-
- lineStr.push(' ');
-
- 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(
- ' '
- );
- }
-
- 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(' ');
- } else if (fillStyle instanceof CanvasPattern_) {
- if (width && height) {
- var deltaLeft = -min.x;
- var deltaTop = -min.y;
- lineStr.push(' ');
- }
- } else {
- var a = processStyle(ctx.fillStyle);
- var color = a.color;
- var opacity = a.alpha * ctx.globalAlpha;
- lineStr.push(' ');
- }
- }
-
- 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('');
-
- 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) + ',' + mr(d.y / Z);
-
- lineStr.push(' ',
- ' ',
- ' ');
-
- 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 = ' ';
- 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_;
-})();
-
-} // if
diff --git a/front/lib/AdminLTE/bower_components/Flot/excanvas.min.js b/front/lib/AdminLTE/bower_components/Flot/excanvas.min.js
deleted file mode 100755
index fcf876c74..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/excanvas.min.js
+++ /dev/null
@@ -1 +0,0 @@
-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,"&").replace(/"/g,""")}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;j1){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;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(" ',' "," ");this.element_.insertAdjacentHTML("BeforeEnd",ax.join(""))};q.stroke=function(ao){var Z=10;var ap=10;var ag=5000;var ai={x:null,y:null};var an={x:null,y:null};for(var aj=0;ajan.x){an.x=m.x}if(ai.y==null||m.yan.y){an.y=m.y}}}am.push(' ">');if(!ao){w(this,am)}else{G(this,am,ai,an)}am.push("");this.element_.insertAdjacentHTML("beforeEnd",am.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(" ')}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 ')}else{if(aj instanceof T){if(j&&p){var ah=-aK.x;var aC=-aK.y;ai.push(" ')}}else{var aL=F(aq.fillStyle);var aw=aL.color;var aG=aL.alpha*aq.globalAlpha;ai.push(' ')}}}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('');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)+","+n(aq.y/d);ag.push(' ',' ',' ');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=' ';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})()};
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/Flot/flot.jquery.json b/front/lib/AdminLTE/bower_components/Flot/flot.jquery.json
deleted file mode 100755
index 91ac79af1..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/flot.jquery.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "name": "flot",
- "version": "0.8.3",
- "title": "Flot",
- "author": {
- "name": "Ole Laursen",
- "url": "https://github.com/OleLaursen"
- },
- "licenses": [{
- "type": "MIT",
- "url": "http://github.com/flot/flot/blob/master/LICENSE.txt"
- }],
- "dependencies": {
- "jquery": ">=1.2.6"
- },
- "description": "Flot is a pure JavaScript plotting library for jQuery, with a focus on simple usage, attractive looks and interactive features.",
- "keywords": ["plot", "chart", "graph", "visualization", "canvas", "graphics"],
- "homepage": "http://www.flotcharts.org",
- "docs": "http://github.com/flot/flot/blob/master/API.md",
- "demo": "http://www.flotcharts.org/flot/examples/",
- "bugs": "http://github.com/flot/flot/issues",
- "maintainers": [{
- "name": "David Schnur",
- "email": "dnschnur@gmail.com",
- "url": "http://github.com/dnschnur"
- }]
-}
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.colorhelpers.js b/front/lib/AdminLTE/bower_components/Flot/jquery.colorhelpers.js
deleted file mode 100755
index b2f6dc4e4..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.colorhelpers.js
+++ /dev/null
@@ -1,180 +0,0 @@
-/* Plugin for jQuery for working with colors.
- *
- * Version 1.1.
- *
- * Inspiration from jQuery color animation plugin by John Resig.
- *
- * Released under the MIT license by Ole Laursen, October 2009.
- *
- * Examples:
- *
- * $.color.parse("#fff").scale('rgb', 0.25).add('a', -0.5).toString()
- * var c = $.color.extract($("#mydiv"), 'background-color');
- * console.log(c.r, c.g, c.b, c.a);
- * $.color.make(100, 50, 25, 0.4).toString() // returns "rgba(100,50,25,0.4)"
- *
- * Note that .scale() and .add() return the same modified object
- * instead of making a new one.
- *
- * V. 1.1: Fix error handling so e.g. parsing an empty string does
- * produce a color rather than just crashing.
- */
-
-(function($) {
- $.color = {};
-
- // construct color object with some convenient chainable helpers
- $.color.make = function (r, g, b, a) {
- var o = {};
- o.r = r || 0;
- o.g = g || 0;
- o.b = b || 0;
- o.a = a != null ? a : 1;
-
- o.add = function (c, d) {
- for (var i = 0; i < c.length; ++i)
- o[c.charAt(i)] += d;
- return o.normalize();
- };
-
- o.scale = function (c, f) {
- for (var i = 0; i < c.length; ++i)
- o[c.charAt(i)] *= f;
- return o.normalize();
- };
-
- o.toString = function () {
- if (o.a >= 1.0) {
- return "rgb("+[o.r, o.g, o.b].join(",")+")";
- } else {
- return "rgba("+[o.r, o.g, o.b, o.a].join(",")+")";
- }
- };
-
- o.normalize = function () {
- function clamp(min, value, max) {
- return value < min ? min: (value > max ? max: value);
- }
-
- o.r = clamp(0, parseInt(o.r), 255);
- o.g = clamp(0, parseInt(o.g), 255);
- o.b = clamp(0, parseInt(o.b), 255);
- o.a = clamp(0, o.a, 1);
- return o;
- };
-
- o.clone = function () {
- return $.color.make(o.r, o.b, o.g, o.a);
- };
-
- return o.normalize();
- }
-
- // extract CSS color property from element, going up in the DOM
- // if it's "transparent"
- $.color.extract = function (elem, css) {
- var c;
-
- do {
- c = elem.css(css).toLowerCase();
- // keep going until we find an element that has color, or
- // we hit the body or root (have no parent)
- if (c != '' && c != 'transparent')
- break;
- elem = elem.parent();
- } while (elem.length && !$.nodeName(elem.get(0), "body"));
-
- // catch Safari's way of signalling transparent
- if (c == "rgba(0, 0, 0, 0)")
- c = "transparent";
-
- return $.color.parse(c);
- }
-
- // parse CSS color string (like "rgb(10, 32, 43)" or "#fff"),
- // returns color object, if parsing failed, you get black (0, 0,
- // 0) out
- $.color.parse = function (str) {
- var res, m = $.color.make;
-
- // Look for rgb(num,num,num)
- if (res = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str))
- return m(parseInt(res[1], 10), parseInt(res[2], 10), parseInt(res[3], 10));
-
- // Look for rgba(num,num,num,num)
- if (res = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))
- return m(parseInt(res[1], 10), parseInt(res[2], 10), parseInt(res[3], 10), parseFloat(res[4]));
-
- // Look for rgb(num%,num%,num%)
- if (res = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str))
- return m(parseFloat(res[1])*2.55, parseFloat(res[2])*2.55, parseFloat(res[3])*2.55);
-
- // Look for rgba(num%,num%,num%,num)
- if (res = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))
- return m(parseFloat(res[1])*2.55, parseFloat(res[2])*2.55, parseFloat(res[3])*2.55, parseFloat(res[4]));
-
- // Look for #a0b1c2
- if (res = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str))
- return m(parseInt(res[1], 16), parseInt(res[2], 16), parseInt(res[3], 16));
-
- // Look for #fff
- if (res = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str))
- return m(parseInt(res[1]+res[1], 16), parseInt(res[2]+res[2], 16), parseInt(res[3]+res[3], 16));
-
- // Otherwise, we're most likely dealing with a named color
- var name = $.trim(str).toLowerCase();
- if (name == "transparent")
- return m(255, 255, 255, 0);
- else {
- // default to black
- res = lookupColors[name] || [0, 0, 0];
- return m(res[0], res[1], res[2]);
- }
- }
-
- var lookupColors = {
- aqua:[0,255,255],
- azure:[240,255,255],
- beige:[245,245,220],
- black:[0,0,0],
- blue:[0,0,255],
- brown:[165,42,42],
- cyan:[0,255,255],
- darkblue:[0,0,139],
- darkcyan:[0,139,139],
- darkgrey:[169,169,169],
- darkgreen:[0,100,0],
- darkkhaki:[189,183,107],
- darkmagenta:[139,0,139],
- darkolivegreen:[85,107,47],
- darkorange:[255,140,0],
- darkorchid:[153,50,204],
- darkred:[139,0,0],
- darksalmon:[233,150,122],
- darkviolet:[148,0,211],
- fuchsia:[255,0,255],
- gold:[255,215,0],
- green:[0,128,0],
- indigo:[75,0,130],
- khaki:[240,230,140],
- lightblue:[173,216,230],
- lightcyan:[224,255,255],
- lightgreen:[144,238,144],
- lightgrey:[211,211,211],
- lightpink:[255,182,193],
- lightyellow:[255,255,224],
- lime:[0,255,0],
- magenta:[255,0,255],
- maroon:[128,0,0],
- navy:[0,0,128],
- olive:[128,128,0],
- orange:[255,165,0],
- pink:[255,192,203],
- purple:[128,0,128],
- violet:[128,0,128],
- red:[255,0,0],
- silver:[192,192,192],
- white:[255,255,255],
- yellow:[255,255,0]
- };
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.canvas.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.canvas.js
deleted file mode 100755
index 29328d581..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.canvas.js
+++ /dev/null
@@ -1,345 +0,0 @@
-/* Flot plugin for drawing all elements of a plot on the canvas.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-Flot normally produces certain elements, like axis labels and the legend, using
-HTML elements. This permits greater interactivity and customization, and often
-looks better, due to cross-browser canvas text inconsistencies and limitations.
-
-It can also be desirable to render the plot entirely in canvas, particularly
-if the goal is to save it as an image, or if Flot is being used in a context
-where the HTML DOM does not exist, as is the case within Node.js. This plugin
-switches out Flot's standard drawing operations for canvas-only replacements.
-
-Currently the plugin supports only axis labels, but it will eventually allow
-every element of the plot to be rendered directly to canvas.
-
-The plugin supports these options:
-
-{
- canvas: boolean
-}
-
-The "canvas" option controls whether full canvas drawing is enabled, making it
-possible to toggle on and off. This is useful when a plot uses HTML text in the
-browser, but needs to redraw with canvas text when exporting as an image.
-
-*/
-
-(function($) {
-
- var options = {
- canvas: true
- };
-
- var render, getTextInfo, addText;
-
- // Cache the prototype hasOwnProperty for faster access
-
- var hasOwnProperty = Object.prototype.hasOwnProperty;
-
- function init(plot, classes) {
-
- var Canvas = classes.Canvas;
-
- // We only want to replace the functions once; the second time around
- // we would just get our new function back. This whole replacing of
- // prototype functions is a disaster, and needs to be changed ASAP.
-
- if (render == null) {
- getTextInfo = Canvas.prototype.getTextInfo,
- addText = Canvas.prototype.addText,
- render = Canvas.prototype.render;
- }
-
- // Finishes rendering the canvas, including overlaid text
-
- Canvas.prototype.render = function() {
-
- if (!plot.getOptions().canvas) {
- return render.call(this);
- }
-
- var context = this.context,
- cache = this._textCache;
-
- // For each text layer, render elements marked as active
-
- context.save();
- context.textBaseline = "middle";
-
- for (var layerKey in cache) {
- if (hasOwnProperty.call(cache, layerKey)) {
- var layerCache = cache[layerKey];
- for (var styleKey in layerCache) {
- if (hasOwnProperty.call(layerCache, styleKey)) {
- var styleCache = layerCache[styleKey],
- updateStyles = true;
- for (var key in styleCache) {
- if (hasOwnProperty.call(styleCache, key)) {
-
- var info = styleCache[key],
- positions = info.positions,
- lines = info.lines;
-
- // Since every element at this level of the cache have the
- // same font and fill styles, we can just change them once
- // using the values from the first element.
-
- if (updateStyles) {
- context.fillStyle = info.font.color;
- context.font = info.font.definition;
- updateStyles = false;
- }
-
- for (var i = 0, position; position = positions[i]; i++) {
- if (position.active) {
- for (var j = 0, line; line = position.lines[j]; j++) {
- context.fillText(lines[j].text, line[0], line[1]);
- }
- } else {
- positions.splice(i--, 1);
- }
- }
-
- if (positions.length == 0) {
- delete styleCache[key];
- }
- }
- }
- }
- }
- }
- }
-
- context.restore();
- };
-
- // Creates (if necessary) and returns a text info object.
- //
- // When the canvas option is set, the object looks like this:
- //
- // {
- // width: Width of the text's bounding box.
- // height: Height of the text's bounding box.
- // positions: Array of positions at which this text is drawn.
- // lines: [{
- // height: Height of this line.
- // widths: Width of this line.
- // text: Text on this line.
- // }],
- // font: {
- // definition: Canvas font property string.
- // color: Color of the text.
- // },
- // }
- //
- // The positions array contains objects that look like this:
- //
- // {
- // active: Flag indicating whether the text should be visible.
- // lines: Array of [x, y] coordinates at which to draw the line.
- // x: X coordinate at which to draw the text.
- // y: Y coordinate at which to draw the text.
- // }
-
- Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) {
-
- if (!plot.getOptions().canvas) {
- return getTextInfo.call(this, layer, text, font, angle, width);
- }
-
- var textStyle, layerCache, styleCache, info;
-
- // Cast the value to a string, in case we were given a number
-
- text = "" + text;
-
- // If the font is a font-spec object, generate a CSS definition
-
- if (typeof font === "object") {
- textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family;
- } else {
- textStyle = font;
- }
-
- // Retrieve (or create) the cache for the text's layer and styles
-
- layerCache = this._textCache[layer];
-
- if (layerCache == null) {
- layerCache = this._textCache[layer] = {};
- }
-
- styleCache = layerCache[textStyle];
-
- if (styleCache == null) {
- styleCache = layerCache[textStyle] = {};
- }
-
- info = styleCache[text];
-
- if (info == null) {
-
- var context = this.context;
-
- // If the font was provided as CSS, create a div with those
- // classes and examine it to generate a canvas font spec.
-
- if (typeof font !== "object") {
-
- var element = $("
")
- .css("position", "absolute")
- .addClass(typeof font === "string" ? font : null)
- .appendTo(this.getTextLayer(layer));
-
- font = {
- lineHeight: element.height(),
- style: element.css("font-style"),
- variant: element.css("font-variant"),
- weight: element.css("font-weight"),
- family: element.css("font-family"),
- color: element.css("color")
- };
-
- // Setting line-height to 1, without units, sets it equal
- // to the font-size, even if the font-size is abstract,
- // like 'smaller'. This enables us to read the real size
- // via the element's height, working around browsers that
- // return the literal 'smaller' value.
-
- font.size = element.css("line-height", 1).height();
-
- element.remove();
- }
-
- textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family;
-
- // Create a new info object, initializing the dimensions to
- // zero so we can count them up line-by-line.
-
- info = styleCache[text] = {
- width: 0,
- height: 0,
- positions: [],
- lines: [],
- font: {
- definition: textStyle,
- color: font.color
- }
- };
-
- context.save();
- context.font = textStyle;
-
- // Canvas can't handle multi-line strings; break on various
- // newlines, including HTML brs, to build a list of lines.
- // Note that we could split directly on regexps, but IE < 9 is
- // broken; revisit when we drop IE 7/8 support.
-
- var lines = (text + "").replace(/ |\r\n|\r/g, "\n").split("\n");
-
- for (var i = 0; i < lines.length; ++i) {
-
- var lineText = lines[i],
- measured = context.measureText(lineText);
-
- info.width = Math.max(measured.width, info.width);
- info.height += font.lineHeight;
-
- info.lines.push({
- text: lineText,
- width: measured.width,
- height: font.lineHeight
- });
- }
-
- context.restore();
- }
-
- return info;
- };
-
- // Adds a text string to the canvas text overlay.
-
- Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) {
-
- if (!plot.getOptions().canvas) {
- return addText.call(this, layer, x, y, text, font, angle, width, halign, valign);
- }
-
- var info = this.getTextInfo(layer, text, font, angle, width),
- positions = info.positions,
- lines = info.lines;
-
- // Text is drawn with baseline 'middle', which we need to account
- // for by adding half a line's height to the y position.
-
- y += info.height / lines.length / 2;
-
- // Tweak the initial y-position to match vertical alignment
-
- if (valign == "middle") {
- y = Math.round(y - info.height / 2);
- } else if (valign == "bottom") {
- y = Math.round(y - info.height);
- } else {
- y = Math.round(y);
- }
-
- // FIXME: LEGACY BROWSER FIX
- // AFFECTS: Opera < 12.00
-
- // Offset the y coordinate, since Opera is off pretty
- // consistently compared to the other browsers.
-
- if (!!(window.opera && window.opera.version().split(".")[0] < 12)) {
- y -= 2;
- }
-
- // Determine whether this text already exists at this position.
- // If so, mark it for inclusion in the next render pass.
-
- for (var i = 0, position; position = positions[i]; i++) {
- if (position.x == x && position.y == y) {
- position.active = true;
- return;
- }
- }
-
- // If the text doesn't exist at this position, create a new entry
-
- position = {
- active: true,
- lines: [],
- x: x,
- y: y
- };
-
- positions.push(position);
-
- // Fill in the x & y positions of each line, adjusting them
- // individually for horizontal alignment.
-
- for (var i = 0, line; line = lines[i]; i++) {
- if (halign == "center") {
- position.lines.push([Math.round(x - line.width / 2), y]);
- } else if (halign == "right") {
- position.lines.push([Math.round(x - line.width), y]);
- } else {
- position.lines.push([Math.round(x), y]);
- }
- y += line.height;
- }
- };
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: "canvas",
- version: "1.0"
- });
-
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.categories.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.categories.js
deleted file mode 100755
index 2f9b25797..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.categories.js
+++ /dev/null
@@ -1,190 +0,0 @@
-/* Flot plugin for plotting textual data or categories.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-Consider a dataset like [["February", 34], ["March", 20], ...]. This plugin
-allows you to plot such a dataset directly.
-
-To enable it, you must specify mode: "categories" on the axis with the textual
-labels, e.g.
-
- $.plot("#placeholder", data, { xaxis: { mode: "categories" } });
-
-By default, the labels are ordered as they are met in the data series. If you
-need a different ordering, you can specify "categories" on the axis options
-and list the categories there:
-
- xaxis: {
- mode: "categories",
- categories: ["February", "March", "April"]
- }
-
-If you need to customize the distances between the categories, you can specify
-"categories" as an object mapping labels to values
-
- xaxis: {
- mode: "categories",
- categories: { "February": 1, "March": 3, "April": 4 }
- }
-
-If you don't specify all categories, the remaining categories will be numbered
-from the max value plus 1 (with a spacing of 1 between each).
-
-Internally, the plugin works by transforming the input data through an auto-
-generated mapping where the first category becomes 0, the second 1, etc.
-Hence, a point like ["February", 34] becomes [0, 34] internally in Flot (this
-is visible in hover and click events that return numbers rather than the
-category labels). The plugin also overrides the tick generator to spit out the
-categories as ticks instead of the values.
-
-If you need to map a value back to its label, the mapping is always accessible
-as "categories" on the axis object, e.g. plot.getAxes().xaxis.categories.
-
-*/
-
-(function ($) {
- var options = {
- xaxis: {
- categories: null
- },
- yaxis: {
- categories: null
- }
- };
-
- function processRawData(plot, series, data, datapoints) {
- // if categories are enabled, we need to disable
- // auto-transformation to numbers so the strings are intact
- // for later processing
-
- var xCategories = series.xaxis.options.mode == "categories",
- yCategories = series.yaxis.options.mode == "categories";
-
- if (!(xCategories || yCategories))
- return;
-
- var format = datapoints.format;
-
- if (!format) {
- // FIXME: auto-detection should really not be defined here
- var s = series;
- format = [];
- format.push({ x: true, number: true, required: true });
- format.push({ y: true, number: true, required: true });
-
- if (s.bars.show || (s.lines.show && s.lines.fill)) {
- var autoscale = !!((s.bars.show && s.bars.zero) || (s.lines.show && s.lines.zero));
- format.push({ y: true, number: true, required: false, defaultValue: 0, autoscale: autoscale });
- if (s.bars.horizontal) {
- delete format[format.length - 1].y;
- format[format.length - 1].x = true;
- }
- }
-
- datapoints.format = format;
- }
-
- for (var m = 0; m < format.length; ++m) {
- if (format[m].x && xCategories)
- format[m].number = false;
-
- if (format[m].y && yCategories)
- format[m].number = false;
- }
- }
-
- function getNextIndex(categories) {
- var index = -1;
-
- for (var v in categories)
- if (categories[v] > index)
- index = categories[v];
-
- return index + 1;
- }
-
- function categoriesTickGenerator(axis) {
- var res = [];
- for (var label in axis.categories) {
- var v = axis.categories[label];
- if (v >= axis.min && v <= axis.max)
- res.push([v, label]);
- }
-
- res.sort(function (a, b) { return a[0] - b[0]; });
-
- return res;
- }
-
- function setupCategoriesForAxis(series, axis, datapoints) {
- if (series[axis].options.mode != "categories")
- return;
-
- if (!series[axis].categories) {
- // parse options
- var c = {}, o = series[axis].options.categories || {};
- if ($.isArray(o)) {
- for (var i = 0; i < o.length; ++i)
- c[o[i]] = i;
- }
- else {
- for (var v in o)
- c[v] = o[v];
- }
-
- series[axis].categories = c;
- }
-
- // fix ticks
- if (!series[axis].options.ticks)
- series[axis].options.ticks = categoriesTickGenerator;
-
- transformPointsOnAxis(datapoints, axis, series[axis].categories);
- }
-
- function transformPointsOnAxis(datapoints, axis, categories) {
- // go through the points, transforming them
- var points = datapoints.points,
- ps = datapoints.pointsize,
- format = datapoints.format,
- formatColumn = axis.charAt(0),
- index = getNextIndex(categories);
-
- for (var i = 0; i < points.length; i += ps) {
- if (points[i] == null)
- continue;
-
- for (var m = 0; m < ps; ++m) {
- var val = points[i + m];
-
- if (val == null || !format[m][formatColumn])
- continue;
-
- if (!(val in categories)) {
- categories[val] = index;
- ++index;
- }
-
- points[i + m] = categories[val];
- }
- }
- }
-
- function processDatapoints(plot, series, datapoints) {
- setupCategoriesForAxis(series, "xaxis", datapoints);
- setupCategoriesForAxis(series, "yaxis", datapoints);
- }
-
- function init(plot) {
- plot.hooks.processRawData.push(processRawData);
- plot.hooks.processDatapoints.push(processDatapoints);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'categories',
- version: '1.0'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.crosshair.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.crosshair.js
deleted file mode 100755
index 5111695e3..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.crosshair.js
+++ /dev/null
@@ -1,176 +0,0 @@
-/* Flot plugin for showing crosshairs when the mouse hovers over the plot.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin supports these options:
-
- crosshair: {
- mode: null or "x" or "y" or "xy"
- color: color
- lineWidth: number
- }
-
-Set the mode to one of "x", "y" or "xy". The "x" mode enables a vertical
-crosshair that lets you trace the values on the x axis, "y" enables a
-horizontal crosshair and "xy" enables them both. "color" is the color of the
-crosshair (default is "rgba(170, 0, 0, 0.80)"), "lineWidth" is the width of
-the drawn lines (default is 1).
-
-The plugin also adds four public methods:
-
- - setCrosshair( pos )
-
- Set the position of the crosshair. Note that this is cleared if the user
- moves the mouse. "pos" is in coordinates of the plot and should be on the
- form { x: xpos, y: ypos } (you can use x2/x3/... if you're using multiple
- axes), which is coincidentally the same format as what you get from a
- "plothover" event. If "pos" is null, the crosshair is cleared.
-
- - clearCrosshair()
-
- Clear the crosshair.
-
- - lockCrosshair(pos)
-
- Cause the crosshair to lock to the current location, no longer updating if
- the user moves the mouse. Optionally supply a position (passed on to
- setCrosshair()) to move it to.
-
- Example usage:
-
- var myFlot = $.plot( $("#graph"), ..., { crosshair: { mode: "x" } } };
- $("#graph").bind( "plothover", function ( evt, position, item ) {
- if ( item ) {
- // Lock the crosshair to the data point being hovered
- myFlot.lockCrosshair({
- x: item.datapoint[ 0 ],
- y: item.datapoint[ 1 ]
- });
- } else {
- // Return normal crosshair operation
- myFlot.unlockCrosshair();
- }
- });
-
- - unlockCrosshair()
-
- Free the crosshair to move again after locking it.
-*/
-
-(function ($) {
- var options = {
- crosshair: {
- mode: null, // one of null, "x", "y" or "xy",
- color: "rgba(170, 0, 0, 0.80)",
- lineWidth: 1
- }
- };
-
- function init(plot) {
- // position of crosshair in pixels
- var crosshair = { x: -1, y: -1, locked: false };
-
- plot.setCrosshair = function setCrosshair(pos) {
- if (!pos)
- crosshair.x = -1;
- else {
- var o = plot.p2c(pos);
- crosshair.x = Math.max(0, Math.min(o.left, plot.width()));
- crosshair.y = Math.max(0, Math.min(o.top, plot.height()));
- }
-
- plot.triggerRedrawOverlay();
- };
-
- plot.clearCrosshair = plot.setCrosshair; // passes null for pos
-
- plot.lockCrosshair = function lockCrosshair(pos) {
- if (pos)
- plot.setCrosshair(pos);
- crosshair.locked = true;
- };
-
- plot.unlockCrosshair = function unlockCrosshair() {
- crosshair.locked = false;
- };
-
- function onMouseOut(e) {
- if (crosshair.locked)
- return;
-
- if (crosshair.x != -1) {
- crosshair.x = -1;
- plot.triggerRedrawOverlay();
- }
- }
-
- function onMouseMove(e) {
- if (crosshair.locked)
- return;
-
- if (plot.getSelection && plot.getSelection()) {
- crosshair.x = -1; // hide the crosshair while selecting
- return;
- }
-
- var offset = plot.offset();
- crosshair.x = Math.max(0, Math.min(e.pageX - offset.left, plot.width()));
- crosshair.y = Math.max(0, Math.min(e.pageY - offset.top, plot.height()));
- plot.triggerRedrawOverlay();
- }
-
- plot.hooks.bindEvents.push(function (plot, eventHolder) {
- if (!plot.getOptions().crosshair.mode)
- return;
-
- eventHolder.mouseout(onMouseOut);
- eventHolder.mousemove(onMouseMove);
- });
-
- plot.hooks.drawOverlay.push(function (plot, ctx) {
- var c = plot.getOptions().crosshair;
- if (!c.mode)
- return;
-
- var plotOffset = plot.getPlotOffset();
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- if (crosshair.x != -1) {
- var adj = plot.getOptions().crosshair.lineWidth % 2 ? 0.5 : 0;
-
- ctx.strokeStyle = c.color;
- ctx.lineWidth = c.lineWidth;
- ctx.lineJoin = "round";
-
- ctx.beginPath();
- if (c.mode.indexOf("x") != -1) {
- var drawX = Math.floor(crosshair.x) + adj;
- ctx.moveTo(drawX, 0);
- ctx.lineTo(drawX, plot.height());
- }
- if (c.mode.indexOf("y") != -1) {
- var drawY = Math.floor(crosshair.y) + adj;
- ctx.moveTo(0, drawY);
- ctx.lineTo(plot.width(), drawY);
- }
- ctx.stroke();
- }
- ctx.restore();
- });
-
- plot.hooks.shutdown.push(function (plot, eventHolder) {
- eventHolder.unbind("mouseout", onMouseOut);
- eventHolder.unbind("mousemove", onMouseMove);
- });
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'crosshair',
- version: '1.0'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.errorbars.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.errorbars.js
deleted file mode 100755
index 2583d5c20..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.errorbars.js
+++ /dev/null
@@ -1,353 +0,0 @@
-/* Flot plugin for plotting error bars.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-Error bars are used to show standard deviation and other statistical
-properties in a plot.
-
-* Created by Rui Pereira - rui (dot) pereira (at) gmail (dot) com
-
-This plugin allows you to plot error-bars over points. Set "errorbars" inside
-the points series to the axis name over which there will be error values in
-your data array (*even* if you do not intend to plot them later, by setting
-"show: null" on xerr/yerr).
-
-The plugin supports these options:
-
- series: {
- points: {
- errorbars: "x" or "y" or "xy",
- xerr: {
- show: null/false or true,
- asymmetric: null/false or true,
- upperCap: null or "-" or function,
- lowerCap: null or "-" or function,
- color: null or color,
- radius: null or number
- },
- yerr: { same options as xerr }
- }
- }
-
-Each data point array is expected to be of the type:
-
- "x" [ x, y, xerr ]
- "y" [ x, y, yerr ]
- "xy" [ x, y, xerr, yerr ]
-
-Where xerr becomes xerr_lower,xerr_upper for the asymmetric error case, and
-equivalently for yerr. Eg., a datapoint for the "xy" case with symmetric
-error-bars on X and asymmetric on Y would be:
-
- [ x, y, xerr, yerr_lower, yerr_upper ]
-
-By default no end caps are drawn. Setting upperCap and/or lowerCap to "-" will
-draw a small cap perpendicular to the error bar. They can also be set to a
-user-defined drawing function, with (ctx, x, y, radius) as parameters, as eg.
-
- function drawSemiCircle( ctx, x, y, radius ) {
- ctx.beginPath();
- ctx.arc( x, y, radius, 0, Math.PI, false );
- ctx.moveTo( x - radius, y );
- ctx.lineTo( x + radius, y );
- ctx.stroke();
- }
-
-Color and radius both default to the same ones of the points series if not
-set. The independent radius parameter on xerr/yerr is useful for the case when
-we may want to add error-bars to a line, without showing the interconnecting
-points (with radius: 0), and still showing end caps on the error-bars.
-shadowSize and lineWidth are derived as well from the points series.
-
-*/
-
-(function ($) {
- var options = {
- series: {
- points: {
- errorbars: null, //should be 'x', 'y' or 'xy'
- xerr: { err: 'x', show: null, asymmetric: null, upperCap: null, lowerCap: null, color: null, radius: null},
- yerr: { err: 'y', show: null, asymmetric: null, upperCap: null, lowerCap: null, color: null, radius: null}
- }
- }
- };
-
- function processRawData(plot, series, data, datapoints){
- if (!series.points.errorbars)
- return;
-
- // x,y values
- var format = [
- { x: true, number: true, required: true },
- { y: true, number: true, required: true }
- ];
-
- var errors = series.points.errorbars;
- // error bars - first X then Y
- if (errors == 'x' || errors == 'xy') {
- // lower / upper error
- if (series.points.xerr.asymmetric) {
- format.push({ x: true, number: true, required: true });
- format.push({ x: true, number: true, required: true });
- } else
- format.push({ x: true, number: true, required: true });
- }
- if (errors == 'y' || errors == 'xy') {
- // lower / upper error
- if (series.points.yerr.asymmetric) {
- format.push({ y: true, number: true, required: true });
- format.push({ y: true, number: true, required: true });
- } else
- format.push({ y: true, number: true, required: true });
- }
- datapoints.format = format;
- }
-
- function parseErrors(series, i){
-
- var points = series.datapoints.points;
-
- // read errors from points array
- var exl = null,
- exu = null,
- eyl = null,
- eyu = null;
- var xerr = series.points.xerr,
- yerr = series.points.yerr;
-
- var eb = series.points.errorbars;
- // error bars - first X
- if (eb == 'x' || eb == 'xy') {
- if (xerr.asymmetric) {
- exl = points[i + 2];
- exu = points[i + 3];
- if (eb == 'xy')
- if (yerr.asymmetric){
- eyl = points[i + 4];
- eyu = points[i + 5];
- } else eyl = points[i + 4];
- } else {
- exl = points[i + 2];
- if (eb == 'xy')
- if (yerr.asymmetric) {
- eyl = points[i + 3];
- eyu = points[i + 4];
- } else eyl = points[i + 3];
- }
- // only Y
- } else if (eb == 'y')
- if (yerr.asymmetric) {
- eyl = points[i + 2];
- eyu = points[i + 3];
- } else eyl = points[i + 2];
-
- // symmetric errors?
- if (exu == null) exu = exl;
- if (eyu == null) eyu = eyl;
-
- var errRanges = [exl, exu, eyl, eyu];
- // nullify if not showing
- if (!xerr.show){
- errRanges[0] = null;
- errRanges[1] = null;
- }
- if (!yerr.show){
- errRanges[2] = null;
- errRanges[3] = null;
- }
- return errRanges;
- }
-
- function drawSeriesErrors(plot, ctx, s){
-
- var points = s.datapoints.points,
- ps = s.datapoints.pointsize,
- ax = [s.xaxis, s.yaxis],
- radius = s.points.radius,
- err = [s.points.xerr, s.points.yerr];
-
- //sanity check, in case some inverted axis hack is applied to flot
- var invertX = false;
- if (ax[0].p2c(ax[0].max) < ax[0].p2c(ax[0].min)) {
- invertX = true;
- var tmp = err[0].lowerCap;
- err[0].lowerCap = err[0].upperCap;
- err[0].upperCap = tmp;
- }
-
- var invertY = false;
- if (ax[1].p2c(ax[1].min) < ax[1].p2c(ax[1].max)) {
- invertY = true;
- var tmp = err[1].lowerCap;
- err[1].lowerCap = err[1].upperCap;
- err[1].upperCap = tmp;
- }
-
- for (var i = 0; i < s.datapoints.points.length; i += ps) {
-
- //parse
- var errRanges = parseErrors(s, i);
-
- //cycle xerr & yerr
- for (var e = 0; e < err.length; e++){
-
- var minmax = [ax[e].min, ax[e].max];
-
- //draw this error?
- if (errRanges[e * err.length]){
-
- //data coordinates
- var x = points[i],
- y = points[i + 1];
-
- //errorbar ranges
- var upper = [x, y][e] + errRanges[e * err.length + 1],
- lower = [x, y][e] - errRanges[e * err.length];
-
- //points outside of the canvas
- if (err[e].err == 'x')
- if (y > ax[1].max || y < ax[1].min || upper < ax[0].min || lower > ax[0].max)
- continue;
- if (err[e].err == 'y')
- if (x > ax[0].max || x < ax[0].min || upper < ax[1].min || lower > ax[1].max)
- continue;
-
- // prevent errorbars getting out of the canvas
- var drawUpper = true,
- drawLower = true;
-
- if (upper > minmax[1]) {
- drawUpper = false;
- upper = minmax[1];
- }
- if (lower < minmax[0]) {
- drawLower = false;
- lower = minmax[0];
- }
-
- //sanity check, in case some inverted axis hack is applied to flot
- if ((err[e].err == 'x' && invertX) || (err[e].err == 'y' && invertY)) {
- //swap coordinates
- var tmp = lower;
- lower = upper;
- upper = tmp;
- tmp = drawLower;
- drawLower = drawUpper;
- drawUpper = tmp;
- tmp = minmax[0];
- minmax[0] = minmax[1];
- minmax[1] = tmp;
- }
-
- // convert to pixels
- x = ax[0].p2c(x),
- y = ax[1].p2c(y),
- upper = ax[e].p2c(upper);
- lower = ax[e].p2c(lower);
- minmax[0] = ax[e].p2c(minmax[0]);
- minmax[1] = ax[e].p2c(minmax[1]);
-
- //same style as points by default
- var lw = err[e].lineWidth ? err[e].lineWidth : s.points.lineWidth,
- sw = s.points.shadowSize != null ? s.points.shadowSize : s.shadowSize;
-
- //shadow as for points
- if (lw > 0 && sw > 0) {
- var w = sw / 2;
- ctx.lineWidth = w;
- ctx.strokeStyle = "rgba(0,0,0,0.1)";
- drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, w + w/2, minmax);
-
- ctx.strokeStyle = "rgba(0,0,0,0.2)";
- drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, w/2, minmax);
- }
-
- ctx.strokeStyle = err[e].color? err[e].color: s.color;
- ctx.lineWidth = lw;
- //draw it
- drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, 0, minmax);
- }
- }
- }
- }
-
- function drawError(ctx,err,x,y,upper,lower,drawUpper,drawLower,radius,offset,minmax){
-
- //shadow offset
- y += offset;
- upper += offset;
- lower += offset;
-
- // error bar - avoid plotting over circles
- if (err.err == 'x'){
- if (upper > x + radius) drawPath(ctx, [[upper,y],[Math.max(x + radius,minmax[0]),y]]);
- else drawUpper = false;
- if (lower < x - radius) drawPath(ctx, [[Math.min(x - radius,minmax[1]),y],[lower,y]] );
- else drawLower = false;
- }
- else {
- if (upper < y - radius) drawPath(ctx, [[x,upper],[x,Math.min(y - radius,minmax[0])]] );
- else drawUpper = false;
- if (lower > y + radius) drawPath(ctx, [[x,Math.max(y + radius,minmax[1])],[x,lower]] );
- else drawLower = false;
- }
-
- //internal radius value in errorbar, allows to plot radius 0 points and still keep proper sized caps
- //this is a way to get errorbars on lines without visible connecting dots
- radius = err.radius != null? err.radius: radius;
-
- // upper cap
- if (drawUpper) {
- if (err.upperCap == '-'){
- if (err.err=='x') drawPath(ctx, [[upper,y - radius],[upper,y + radius]] );
- else drawPath(ctx, [[x - radius,upper],[x + radius,upper]] );
- } else if ($.isFunction(err.upperCap)){
- if (err.err=='x') err.upperCap(ctx, upper, y, radius);
- else err.upperCap(ctx, x, upper, radius);
- }
- }
- // lower cap
- if (drawLower) {
- if (err.lowerCap == '-'){
- if (err.err=='x') drawPath(ctx, [[lower,y - radius],[lower,y + radius]] );
- else drawPath(ctx, [[x - radius,lower],[x + radius,lower]] );
- } else if ($.isFunction(err.lowerCap)){
- if (err.err=='x') err.lowerCap(ctx, lower, y, radius);
- else err.lowerCap(ctx, x, lower, radius);
- }
- }
- }
-
- function drawPath(ctx, pts){
- ctx.beginPath();
- ctx.moveTo(pts[0][0], pts[0][1]);
- for (var p=1; p < pts.length; p++)
- ctx.lineTo(pts[p][0], pts[p][1]);
- ctx.stroke();
- }
-
- function draw(plot, ctx){
- var plotOffset = plot.getPlotOffset();
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
- $.each(plot.getData(), function (i, s) {
- if (s.points.errorbars && (s.points.xerr.show || s.points.yerr.show))
- drawSeriesErrors(plot, ctx, s);
- });
- ctx.restore();
- }
-
- function init(plot) {
- plot.hooks.processRawData.push(processRawData);
- plot.hooks.draw.push(draw);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'errorbars',
- version: '1.0'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.fillbetween.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.fillbetween.js
deleted file mode 100755
index 18b15d26d..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.fillbetween.js
+++ /dev/null
@@ -1,226 +0,0 @@
-/* Flot plugin for computing bottoms for filled line and bar charts.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The case: you've got two series that you want to fill the area between. In Flot
-terms, you need to use one as the fill bottom of the other. You can specify the
-bottom of each data point as the third coordinate manually, or you can use this
-plugin to compute it for you.
-
-In order to name the other series, you need to give it an id, like this:
-
- var dataset = [
- { data: [ ... ], id: "foo" } , // use default bottom
- { data: [ ... ], fillBetween: "foo" }, // use first dataset as bottom
- ];
-
- $.plot($("#placeholder"), dataset, { lines: { show: true, fill: true }});
-
-As a convenience, if the id given is a number that doesn't appear as an id in
-the series, it is interpreted as the index in the array instead (so fillBetween:
-0 can also mean the first series).
-
-Internally, the plugin modifies the datapoints in each series. For line series,
-extra data points might be inserted through interpolation. Note that at points
-where the bottom line is not defined (due to a null point or start/end of line),
-the current line will show a gap too. The algorithm comes from the
-jquery.flot.stack.js plugin, possibly some code could be shared.
-
-*/
-
-(function ( $ ) {
-
- var options = {
- series: {
- fillBetween: null // or number
- }
- };
-
- function init( plot ) {
-
- function findBottomSeries( s, allseries ) {
-
- var i;
-
- for ( i = 0; i < allseries.length; ++i ) {
- if ( allseries[ i ].id === s.fillBetween ) {
- return allseries[ i ];
- }
- }
-
- if ( typeof s.fillBetween === "number" ) {
- if ( s.fillBetween < 0 || s.fillBetween >= allseries.length ) {
- return null;
- }
- return allseries[ s.fillBetween ];
- }
-
- return null;
- }
-
- function computeFillBottoms( plot, s, datapoints ) {
-
- if ( s.fillBetween == null ) {
- return;
- }
-
- var other = findBottomSeries( s, plot.getData() );
-
- if ( !other ) {
- return;
- }
-
- var ps = datapoints.pointsize,
- points = datapoints.points,
- otherps = other.datapoints.pointsize,
- otherpoints = other.datapoints.points,
- newpoints = [],
- px, py, intery, qx, qy, bottom,
- withlines = s.lines.show,
- withbottom = ps > 2 && datapoints.format[2].y,
- withsteps = withlines && s.lines.steps,
- fromgap = true,
- i = 0,
- j = 0,
- l, m;
-
- while ( true ) {
-
- if ( i >= points.length ) {
- break;
- }
-
- l = newpoints.length;
-
- if ( points[ i ] == null ) {
-
- // copy gaps
-
- for ( m = 0; m < ps; ++m ) {
- newpoints.push( points[ i + m ] );
- }
-
- i += ps;
-
- } else if ( j >= otherpoints.length ) {
-
- // for lines, we can't use the rest of the points
-
- if ( !withlines ) {
- for ( m = 0; m < ps; ++m ) {
- newpoints.push( points[ i + m ] );
- }
- }
-
- i += ps;
-
- } else if ( otherpoints[ j ] == null ) {
-
- // oops, got a gap
-
- for ( m = 0; m < ps; ++m ) {
- newpoints.push( null );
- }
-
- fromgap = true;
- j += otherps;
-
- } else {
-
- // cases where we actually got two points
-
- px = points[ i ];
- py = points[ i + 1 ];
- qx = otherpoints[ j ];
- qy = otherpoints[ j + 1 ];
- bottom = 0;
-
- if ( px === qx ) {
-
- for ( m = 0; m < ps; ++m ) {
- newpoints.push( points[ i + m ] );
- }
-
- //newpoints[ l + 1 ] += qy;
- bottom = qy;
-
- i += ps;
- j += otherps;
-
- } else if ( px > qx ) {
-
- // we got past point below, might need to
- // insert interpolated extra point
-
- if ( withlines && i > 0 && points[ i - ps ] != null ) {
- intery = py + ( points[ i - ps + 1 ] - py ) * ( qx - px ) / ( points[ i - ps ] - px );
- newpoints.push( qx );
- newpoints.push( intery );
- for ( m = 2; m < ps; ++m ) {
- newpoints.push( points[ i + m ] );
- }
- bottom = qy;
- }
-
- j += otherps;
-
- } else { // px < qx
-
- // if we come from a gap, we just skip this point
-
- if ( fromgap && withlines ) {
- i += ps;
- continue;
- }
-
- for ( m = 0; m < ps; ++m ) {
- newpoints.push( points[ i + m ] );
- }
-
- // we might be able to interpolate a point below,
- // this can give us a better y
-
- if ( withlines && j > 0 && otherpoints[ j - otherps ] != null ) {
- bottom = qy + ( otherpoints[ j - otherps + 1 ] - qy ) * ( px - qx ) / ( otherpoints[ j - otherps ] - qx );
- }
-
- //newpoints[l + 1] += bottom;
-
- i += ps;
- }
-
- fromgap = false;
-
- if ( l !== newpoints.length && withbottom ) {
- newpoints[ l + 2 ] = bottom;
- }
- }
-
- // maintain the line steps invariant
-
- if ( withsteps && l !== newpoints.length && l > 0 &&
- newpoints[ l ] !== null &&
- newpoints[ l ] !== newpoints[ l - ps ] &&
- newpoints[ l + 1 ] !== newpoints[ l - ps + 1 ] ) {
- for (m = 0; m < ps; ++m) {
- newpoints[ l + ps + m ] = newpoints[ l + m ];
- }
- newpoints[ l + 1 ] = newpoints[ l - ps + 1 ];
- }
- }
-
- datapoints.points = newpoints;
- }
-
- plot.hooks.processDatapoints.push( computeFillBottoms );
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: "fillbetween",
- version: "1.0"
- });
-
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.image.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.image.js
deleted file mode 100755
index 625a03571..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.image.js
+++ /dev/null
@@ -1,241 +0,0 @@
-/* Flot plugin for plotting images.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The data syntax is [ [ image, x1, y1, x2, y2 ], ... ] where (x1, y1) and
-(x2, y2) are where you intend the two opposite corners of the image to end up
-in the plot. Image must be a fully loaded Javascript image (you can make one
-with new Image()). If the image is not complete, it's skipped when plotting.
-
-There are two helpers included for retrieving images. The easiest work the way
-that you put in URLs instead of images in the data, like this:
-
- [ "myimage.png", 0, 0, 10, 10 ]
-
-Then call $.plot.image.loadData( data, options, callback ) where data and
-options are the same as you pass in to $.plot. This loads the images, replaces
-the URLs in the data with the corresponding images and calls "callback" when
-all images are loaded (or failed loading). In the callback, you can then call
-$.plot with the data set. See the included example.
-
-A more low-level helper, $.plot.image.load(urls, callback) is also included.
-Given a list of URLs, it calls callback with an object mapping from URL to
-Image object when all images are loaded or have failed loading.
-
-The plugin supports these options:
-
- series: {
- images: {
- show: boolean
- anchor: "corner" or "center"
- alpha: [ 0, 1 ]
- }
- }
-
-They can be specified for a specific series:
-
- $.plot( $("#placeholder"), [{
- data: [ ... ],
- images: { ... }
- ])
-
-Note that because the data format is different from usual data points, you
-can't use images with anything else in a specific data series.
-
-Setting "anchor" to "center" causes the pixels in the image to be anchored at
-the corner pixel centers inside of at the pixel corners, effectively letting
-half a pixel stick out to each side in the plot.
-
-A possible future direction could be support for tiling for large images (like
-Google Maps).
-
-*/
-
-(function ($) {
- var options = {
- series: {
- images: {
- show: false,
- alpha: 1,
- anchor: "corner" // or "center"
- }
- }
- };
-
- $.plot.image = {};
-
- $.plot.image.loadDataImages = function (series, options, callback) {
- var urls = [], points = [];
-
- var defaultShow = options.series.images.show;
-
- $.each(series, function (i, s) {
- if (!(defaultShow || s.images.show))
- return;
-
- if (s.data)
- s = s.data;
-
- $.each(s, function (i, p) {
- if (typeof p[0] == "string") {
- urls.push(p[0]);
- points.push(p);
- }
- });
- });
-
- $.plot.image.load(urls, function (loadedImages) {
- $.each(points, function (i, p) {
- var url = p[0];
- if (loadedImages[url])
- p[0] = loadedImages[url];
- });
-
- callback();
- });
- }
-
- $.plot.image.load = function (urls, callback) {
- var missing = urls.length, loaded = {};
- if (missing == 0)
- callback({});
-
- $.each(urls, function (i, url) {
- var handler = function () {
- --missing;
-
- loaded[url] = this;
-
- if (missing == 0)
- callback(loaded);
- };
-
- $(' ').load(handler).error(handler).attr('src', url);
- });
- };
-
- function drawSeries(plot, ctx, series) {
- var plotOffset = plot.getPlotOffset();
-
- if (!series.images || !series.images.show)
- return;
-
- var points = series.datapoints.points,
- ps = series.datapoints.pointsize;
-
- for (var i = 0; i < points.length; i += ps) {
- var img = points[i],
- x1 = points[i + 1], y1 = points[i + 2],
- x2 = points[i + 3], y2 = points[i + 4],
- xaxis = series.xaxis, yaxis = series.yaxis,
- tmp;
-
- // actually we should check img.complete, but it
- // appears to be a somewhat unreliable indicator in
- // IE6 (false even after load event)
- if (!img || img.width <= 0 || img.height <= 0)
- continue;
-
- if (x1 > x2) {
- tmp = x2;
- x2 = x1;
- x1 = tmp;
- }
- if (y1 > y2) {
- tmp = y2;
- y2 = y1;
- y1 = tmp;
- }
-
- // if the anchor is at the center of the pixel, expand the
- // image by 1/2 pixel in each direction
- if (series.images.anchor == "center") {
- tmp = 0.5 * (x2-x1) / (img.width - 1);
- x1 -= tmp;
- x2 += tmp;
- tmp = 0.5 * (y2-y1) / (img.height - 1);
- y1 -= tmp;
- y2 += tmp;
- }
-
- // clip
- if (x1 == x2 || y1 == y2 ||
- x1 >= xaxis.max || x2 <= xaxis.min ||
- y1 >= yaxis.max || y2 <= yaxis.min)
- continue;
-
- var sx1 = 0, sy1 = 0, sx2 = img.width, sy2 = img.height;
- if (x1 < xaxis.min) {
- sx1 += (sx2 - sx1) * (xaxis.min - x1) / (x2 - x1);
- x1 = xaxis.min;
- }
-
- if (x2 > xaxis.max) {
- sx2 += (sx2 - sx1) * (xaxis.max - x2) / (x2 - x1);
- x2 = xaxis.max;
- }
-
- if (y1 < yaxis.min) {
- sy2 += (sy1 - sy2) * (yaxis.min - y1) / (y2 - y1);
- y1 = yaxis.min;
- }
-
- if (y2 > yaxis.max) {
- sy1 += (sy1 - sy2) * (yaxis.max - y2) / (y2 - y1);
- y2 = yaxis.max;
- }
-
- x1 = xaxis.p2c(x1);
- x2 = xaxis.p2c(x2);
- y1 = yaxis.p2c(y1);
- y2 = yaxis.p2c(y2);
-
- // the transformation may have swapped us
- if (x1 > x2) {
- tmp = x2;
- x2 = x1;
- x1 = tmp;
- }
- if (y1 > y2) {
- tmp = y2;
- y2 = y1;
- y1 = tmp;
- }
-
- tmp = ctx.globalAlpha;
- ctx.globalAlpha *= series.images.alpha;
- ctx.drawImage(img,
- sx1, sy1, sx2 - sx1, sy2 - sy1,
- x1 + plotOffset.left, y1 + plotOffset.top,
- x2 - x1, y2 - y1);
- ctx.globalAlpha = tmp;
- }
- }
-
- function processRawData(plot, series, data, datapoints) {
- if (!series.images.show)
- return;
-
- // format is Image, x1, y1, x2, y2 (opposite corners)
- datapoints.format = [
- { required: true },
- { x: true, number: true, required: true },
- { y: true, number: true, required: true },
- { x: true, number: true, required: true },
- { y: true, number: true, required: true }
- ];
- }
-
- function init(plot) {
- plot.hooks.processRawData.push(processRawData);
- plot.hooks.drawSeries.push(drawSeries);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'image',
- version: '1.1'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.js
deleted file mode 100755
index 39f3e4cf3..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.js
+++ /dev/null
@@ -1,3168 +0,0 @@
-/* Javascript plotting library for jQuery, version 0.8.3.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-*/
-
-// first an inline dependency, jquery.colorhelpers.js, we inline it here
-// for convenience
-
-/* Plugin for jQuery for working with colors.
- *
- * Version 1.1.
- *
- * Inspiration from jQuery color animation plugin by John Resig.
- *
- * Released under the MIT license by Ole Laursen, October 2009.
- *
- * Examples:
- *
- * $.color.parse("#fff").scale('rgb', 0.25).add('a', -0.5).toString()
- * var c = $.color.extract($("#mydiv"), 'background-color');
- * console.log(c.r, c.g, c.b, c.a);
- * $.color.make(100, 50, 25, 0.4).toString() // returns "rgba(100,50,25,0.4)"
- *
- * Note that .scale() and .add() return the same modified object
- * instead of making a new one.
- *
- * V. 1.1: Fix error handling so e.g. parsing an empty string does
- * produce a color rather than just crashing.
- */
-(function($){$.color={};$.color.make=function(r,g,b,a){var o={};o.r=r||0;o.g=g||0;o.b=b||0;o.a=a!=null?a:1;o.add=function(c,d){for(var i=0;i=1){return"rgb("+[o.r,o.g,o.b].join(",")+")"}else{return"rgba("+[o.r,o.g,o.b,o.a].join(",")+")"}};o.normalize=function(){function clamp(min,value,max){return valuemax?max:value}o.r=clamp(0,parseInt(o.r),255);o.g=clamp(0,parseInt(o.g),255);o.b=clamp(0,parseInt(o.b),255);o.a=clamp(0,o.a,1);return o};o.clone=function(){return $.color.make(o.r,o.b,o.g,o.a)};return o.normalize()};$.color.extract=function(elem,css){var c;do{c=elem.css(css).toLowerCase();if(c!=""&&c!="transparent")break;elem=elem.parent()}while(elem.length&&!$.nodeName(elem.get(0),"body"));if(c=="rgba(0, 0, 0, 0)")c="transparent";return $.color.parse(c)};$.color.parse=function(str){var res,m=$.color.make;if(res=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10));if(res=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10),parseFloat(res[4]));if(res=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55);if(res=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55,parseFloat(res[4]));if(res=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str))return m(parseInt(res[1],16),parseInt(res[2],16),parseInt(res[3],16));if(res=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str))return m(parseInt(res[1]+res[1],16),parseInt(res[2]+res[2],16),parseInt(res[3]+res[3],16));var name=$.trim(str).toLowerCase();if(name=="transparent")return m(255,255,255,0);else{res=lookupColors[name]||[0,0,0];return m(res[0],res[1],res[2])}};var lookupColors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})(jQuery);
-
-// the actual Flot code
-(function($) {
-
- // Cache the prototype hasOwnProperty for faster access
-
- var hasOwnProperty = Object.prototype.hasOwnProperty;
-
- // A shim to provide 'detach' to jQuery versions prior to 1.4. Using a DOM
- // operation produces the same effect as detach, i.e. removing the element
- // without touching its jQuery data.
-
- // Do not merge this into Flot 0.9, since it requires jQuery 1.4.4+.
-
- if (!$.fn.detach) {
- $.fn.detach = function() {
- return this.each(function() {
- if (this.parentNode) {
- this.parentNode.removeChild( this );
- }
- });
- };
- }
-
- ///////////////////////////////////////////////////////////////////////////
- // The Canvas object is a wrapper around an HTML5 tag.
- //
- // @constructor
- // @param {string} cls List of classes to apply to the canvas.
- // @param {element} container Element onto which to append the canvas.
- //
- // Requiring a container is a little iffy, but unfortunately canvas
- // operations don't work unless the canvas is attached to the DOM.
-
- function Canvas(cls, container) {
-
- var element = container.children("." + cls)[0];
-
- if (element == null) {
-
- element = document.createElement("canvas");
- element.className = cls;
-
- $(element).css({ direction: "ltr", position: "absolute", left: 0, top: 0 })
- .appendTo(container);
-
- // If HTML5 Canvas isn't available, fall back to [Ex|Flash]canvas
-
- if (!element.getContext) {
- if (window.G_vmlCanvasManager) {
- element = window.G_vmlCanvasManager.initElement(element);
- } else {
- throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode.");
- }
- }
- }
-
- this.element = element;
-
- var context = this.context = element.getContext("2d");
-
- // Determine the screen's ratio of physical to device-independent
- // pixels. This is the ratio between the canvas width that the browser
- // advertises and the number of pixels actually present in that space.
-
- // The iPhone 4, for example, has a device-independent width of 320px,
- // but its screen is actually 640px wide. It therefore has a pixel
- // ratio of 2, while most normal devices have a ratio of 1.
-
- var devicePixelRatio = window.devicePixelRatio || 1,
- backingStoreRatio =
- context.webkitBackingStorePixelRatio ||
- context.mozBackingStorePixelRatio ||
- context.msBackingStorePixelRatio ||
- context.oBackingStorePixelRatio ||
- context.backingStorePixelRatio || 1;
-
- this.pixelRatio = devicePixelRatio / backingStoreRatio;
-
- // Size the canvas to match the internal dimensions of its container
-
- this.resize(container.width(), container.height());
-
- // Collection of HTML div layers for text overlaid onto the canvas
-
- this.textContainer = null;
- this.text = {};
-
- // Cache of text fragments and metrics, so we can avoid expensively
- // re-calculating them when the plot is re-rendered in a loop.
-
- this._textCache = {};
- }
-
- // Resizes the canvas to the given dimensions.
- //
- // @param {number} width New width of the canvas, in pixels.
- // @param {number} width New height of the canvas, in pixels.
-
- Canvas.prototype.resize = function(width, height) {
-
- if (width <= 0 || height <= 0) {
- throw new Error("Invalid dimensions for plot, width = " + width + ", height = " + height);
- }
-
- var element = this.element,
- context = this.context,
- pixelRatio = this.pixelRatio;
-
- // Resize the canvas, increasing its density based on the display's
- // pixel ratio; basically giving it more pixels without increasing the
- // size of its element, to take advantage of the fact that retina
- // displays have that many more pixels in the same advertised space.
-
- // Resizing should reset the state (excanvas seems to be buggy though)
-
- if (this.width != width) {
- element.width = width * pixelRatio;
- element.style.width = width + "px";
- this.width = width;
- }
-
- if (this.height != height) {
- element.height = height * pixelRatio;
- element.style.height = height + "px";
- this.height = height;
- }
-
- // Save the context, so we can reset in case we get replotted. The
- // restore ensure that we're really back at the initial state, and
- // should be safe even if we haven't saved the initial state yet.
-
- context.restore();
- context.save();
-
- // Scale the coordinate space to match the display density; so even though we
- // may have twice as many pixels, we still want lines and other drawing to
- // appear at the same size; the extra pixels will just make them crisper.
-
- context.scale(pixelRatio, pixelRatio);
- };
-
- // Clears the entire canvas area, not including any overlaid HTML text
-
- Canvas.prototype.clear = function() {
- this.context.clearRect(0, 0, this.width, this.height);
- };
-
- // Finishes rendering the canvas, including managing the text overlay.
-
- Canvas.prototype.render = function() {
-
- var cache = this._textCache;
-
- // For each text layer, add elements marked as active that haven't
- // already been rendered, and remove those that are no longer active.
-
- for (var layerKey in cache) {
- if (hasOwnProperty.call(cache, layerKey)) {
-
- var layer = this.getTextLayer(layerKey),
- layerCache = cache[layerKey];
-
- layer.hide();
-
- for (var styleKey in layerCache) {
- if (hasOwnProperty.call(layerCache, styleKey)) {
- var styleCache = layerCache[styleKey];
- for (var key in styleCache) {
- if (hasOwnProperty.call(styleCache, key)) {
-
- var positions = styleCache[key].positions;
-
- for (var i = 0, position; position = positions[i]; i++) {
- if (position.active) {
- if (!position.rendered) {
- layer.append(position.element);
- position.rendered = true;
- }
- } else {
- positions.splice(i--, 1);
- if (position.rendered) {
- position.element.detach();
- }
- }
- }
-
- if (positions.length == 0) {
- delete styleCache[key];
- }
- }
- }
- }
- }
-
- layer.show();
- }
- }
- };
-
- // Creates (if necessary) and returns the text overlay container.
- //
- // @param {string} classes String of space-separated CSS classes used to
- // uniquely identify the text layer.
- // @return {object} The jQuery-wrapped text-layer div.
-
- Canvas.prototype.getTextLayer = function(classes) {
-
- var layer = this.text[classes];
-
- // Create the text layer if it doesn't exist
-
- if (layer == null) {
-
- // Create the text layer container, if it doesn't exist
-
- if (this.textContainer == null) {
- this.textContainer = $("
")
- .css({
- position: "absolute",
- top: 0,
- left: 0,
- bottom: 0,
- right: 0,
- 'font-size': "smaller",
- color: "#545454"
- })
- .insertAfter(this.element);
- }
-
- layer = this.text[classes] = $("
")
- .addClass(classes)
- .css({
- position: "absolute",
- top: 0,
- left: 0,
- bottom: 0,
- right: 0
- })
- .appendTo(this.textContainer);
- }
-
- return layer;
- };
-
- // Creates (if necessary) and returns a text info object.
- //
- // The object looks like this:
- //
- // {
- // width: Width of the text's wrapper div.
- // height: Height of the text's wrapper div.
- // element: The jQuery-wrapped HTML div containing the text.
- // positions: Array of positions at which this text is drawn.
- // }
- //
- // The positions array contains objects that look like this:
- //
- // {
- // active: Flag indicating whether the text should be visible.
- // rendered: Flag indicating whether the text is currently visible.
- // element: The jQuery-wrapped HTML div containing the text.
- // x: X coordinate at which to draw the text.
- // y: Y coordinate at which to draw the text.
- // }
- //
- // Each position after the first receives a clone of the original element.
- //
- // The idea is that that the width, height, and general 'identity' of the
- // text is constant no matter where it is placed; the placements are a
- // secondary property.
- //
- // Canvas maintains a cache of recently-used text info objects; getTextInfo
- // either returns the cached element or creates a new entry.
- //
- // @param {string} layer A string of space-separated CSS classes uniquely
- // identifying the layer containing this text.
- // @param {string} text Text string to retrieve info for.
- // @param {(string|object)=} font Either a string of space-separated CSS
- // classes or a font-spec object, defining the text's font and style.
- // @param {number=} angle Angle at which to rotate the text, in degrees.
- // Angle is currently unused, it will be implemented in the future.
- // @param {number=} width Maximum width of the text before it wraps.
- // @return {object} a text info object.
-
- Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) {
-
- var textStyle, layerCache, styleCache, info;
-
- // Cast the value to a string, in case we were given a number or such
-
- text = "" + text;
-
- // If the font is a font-spec object, generate a CSS font definition
-
- if (typeof font === "object") {
- textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px/" + font.lineHeight + "px " + font.family;
- } else {
- textStyle = font;
- }
-
- // Retrieve (or create) the cache for the text's layer and styles
-
- layerCache = this._textCache[layer];
-
- if (layerCache == null) {
- layerCache = this._textCache[layer] = {};
- }
-
- styleCache = layerCache[textStyle];
-
- if (styleCache == null) {
- styleCache = layerCache[textStyle] = {};
- }
-
- info = styleCache[text];
-
- // If we can't find a matching element in our cache, create a new one
-
- if (info == null) {
-
- var element = $("
").html(text)
- .css({
- position: "absolute",
- 'max-width': width,
- top: -9999
- })
- .appendTo(this.getTextLayer(layer));
-
- if (typeof font === "object") {
- element.css({
- font: textStyle,
- color: font.color
- });
- } else if (typeof font === "string") {
- element.addClass(font);
- }
-
- info = styleCache[text] = {
- width: element.outerWidth(true),
- height: element.outerHeight(true),
- element: element,
- positions: []
- };
-
- element.detach();
- }
-
- return info;
- };
-
- // Adds a text string to the canvas text overlay.
- //
- // The text isn't drawn immediately; it is marked as rendering, which will
- // result in its addition to the canvas on the next render pass.
- //
- // @param {string} layer A string of space-separated CSS classes uniquely
- // identifying the layer containing this text.
- // @param {number} x X coordinate at which to draw the text.
- // @param {number} y Y coordinate at which to draw the text.
- // @param {string} text Text string to draw.
- // @param {(string|object)=} font Either a string of space-separated CSS
- // classes or a font-spec object, defining the text's font and style.
- // @param {number=} angle Angle at which to rotate the text, in degrees.
- // Angle is currently unused, it will be implemented in the future.
- // @param {number=} width Maximum width of the text before it wraps.
- // @param {string=} halign Horizontal alignment of the text; either "left",
- // "center" or "right".
- // @param {string=} valign Vertical alignment of the text; either "top",
- // "middle" or "bottom".
-
- Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) {
-
- var info = this.getTextInfo(layer, text, font, angle, width),
- positions = info.positions;
-
- // Tweak the div's position to match the text's alignment
-
- if (halign == "center") {
- x -= info.width / 2;
- } else if (halign == "right") {
- x -= info.width;
- }
-
- if (valign == "middle") {
- y -= info.height / 2;
- } else if (valign == "bottom") {
- y -= info.height;
- }
-
- // Determine whether this text already exists at this position.
- // If so, mark it for inclusion in the next render pass.
-
- for (var i = 0, position; position = positions[i]; i++) {
- if (position.x == x && position.y == y) {
- position.active = true;
- return;
- }
- }
-
- // If the text doesn't exist at this position, create a new entry
-
- // For the very first position we'll re-use the original element,
- // while for subsequent ones we'll clone it.
-
- position = {
- active: true,
- rendered: false,
- element: positions.length ? info.element.clone() : info.element,
- x: x,
- y: y
- };
-
- positions.push(position);
-
- // Move the element to its final position within the container
-
- position.element.css({
- top: Math.round(y),
- left: Math.round(x),
- 'text-align': halign // In case the text wraps
- });
- };
-
- // Removes one or more text strings from the canvas text overlay.
- //
- // If no parameters are given, all text within the layer is removed.
- //
- // Note that the text is not immediately removed; it is simply marked as
- // inactive, which will result in its removal on the next render pass.
- // This avoids the performance penalty for 'clear and redraw' behavior,
- // where we potentially get rid of all text on a layer, but will likely
- // add back most or all of it later, as when redrawing axes, for example.
- //
- // @param {string} layer A string of space-separated CSS classes uniquely
- // identifying the layer containing this text.
- // @param {number=} x X coordinate of the text.
- // @param {number=} y Y coordinate of the text.
- // @param {string=} text Text string to remove.
- // @param {(string|object)=} font Either a string of space-separated CSS
- // classes or a font-spec object, defining the text's font and style.
- // @param {number=} angle Angle at which the text is rotated, in degrees.
- // Angle is currently unused, it will be implemented in the future.
-
- Canvas.prototype.removeText = function(layer, x, y, text, font, angle) {
- if (text == null) {
- var layerCache = this._textCache[layer];
- if (layerCache != null) {
- for (var styleKey in layerCache) {
- if (hasOwnProperty.call(layerCache, styleKey)) {
- var styleCache = layerCache[styleKey];
- for (var key in styleCache) {
- if (hasOwnProperty.call(styleCache, key)) {
- var positions = styleCache[key].positions;
- for (var i = 0, position; position = positions[i]; i++) {
- position.active = false;
- }
- }
- }
- }
- }
- }
- } else {
- var positions = this.getTextInfo(layer, text, font, angle).positions;
- for (var i = 0, position; position = positions[i]; i++) {
- if (position.x == x && position.y == y) {
- position.active = false;
- }
- }
- }
- };
-
- ///////////////////////////////////////////////////////////////////////////
- // The top-level container for the entire plot.
-
- function Plot(placeholder, data_, options_, plugins) {
- // data is on the form:
- // [ series1, series2 ... ]
- // where series is either just the data as [ [x1, y1], [x2, y2], ... ]
- // or { data: [ [x1, y1], [x2, y2], ... ], label: "some label", ... }
-
- var series = [],
- options = {
- // the color theme used for graphs
- colors: ["#edc240", "#afd8f8", "#cb4b4b", "#4da74d", "#9440ed"],
- legend: {
- show: true,
- noColumns: 1, // number of colums in legend table
- labelFormatter: null, // fn: string -> string
- labelBoxBorderColor: "#ccc", // border color for the little label boxes
- container: null, // container (as jQuery object) to put legend in, null means default on top of graph
- position: "ne", // position of default legend container within plot
- margin: 5, // distance from grid edge to default legend container within plot
- backgroundColor: null, // null means auto-detect
- backgroundOpacity: 0.85, // set to 0 to avoid background
- sorted: null // default to no legend sorting
- },
- xaxis: {
- show: null, // null = auto-detect, true = always, false = never
- position: "bottom", // or "top"
- mode: null, // null or "time"
- font: null, // null (derived from CSS in placeholder) or object like { size: 11, lineHeight: 13, style: "italic", weight: "bold", family: "sans-serif", variant: "small-caps" }
- color: null, // base color, labels, ticks
- tickColor: null, // possibly different color of ticks, e.g. "rgba(0,0,0,0.15)"
- transform: null, // null or f: number -> number to transform axis
- inverseTransform: null, // if transform is set, this should be the inverse function
- min: null, // min. value to show, null means set automatically
- max: null, // max. value to show, null means set automatically
- autoscaleMargin: null, // margin in % to add if auto-setting min/max
- ticks: null, // either [1, 3] or [[1, "a"], 3] or (fn: axis info -> ticks) or app. number of ticks for auto-ticks
- tickFormatter: null, // fn: number -> string
- labelWidth: null, // size of tick labels in pixels
- labelHeight: null,
- reserveSpace: null, // whether to reserve space even if axis isn't shown
- tickLength: null, // size in pixels of ticks, or "full" for whole line
- alignTicksWithAxis: null, // axis number or null for no sync
- tickDecimals: null, // no. of decimals, null means auto
- tickSize: null, // number or [number, "unit"]
- minTickSize: null // number or [number, "unit"]
- },
- yaxis: {
- autoscaleMargin: 0.02,
- position: "left" // or "right"
- },
- xaxes: [],
- yaxes: [],
- series: {
- points: {
- show: false,
- radius: 3,
- lineWidth: 2, // in pixels
- fill: true,
- fillColor: "#ffffff",
- symbol: "circle" // or callback
- },
- lines: {
- // we don't put in show: false so we can see
- // whether lines were actively disabled
- lineWidth: 2, // in pixels
- fill: false,
- fillColor: null,
- steps: false
- // Omit 'zero', so we can later default its value to
- // match that of the 'fill' option.
- },
- bars: {
- show: false,
- lineWidth: 2, // in pixels
- barWidth: 1, // in units of the x axis
- fill: true,
- fillColor: null,
- align: "left", // "left", "right", or "center"
- horizontal: false,
- zero: true
- },
- shadowSize: 3,
- highlightColor: null
- },
- grid: {
- show: true,
- aboveData: false,
- color: "#545454", // primary color used for outline and labels
- backgroundColor: null, // null for transparent, else color
- borderColor: null, // set if different from the grid color
- tickColor: null, // color for the ticks, e.g. "rgba(0,0,0,0.15)"
- margin: 0, // distance from the canvas edge to the grid
- labelMargin: 5, // in pixels
- axisMargin: 8, // in pixels
- borderWidth: 2, // in pixels
- minBorderMargin: null, // in pixels, null means taken from points radius
- markings: null, // array of ranges or fn: axes -> array of ranges
- markingsColor: "#f4f4f4",
- markingsLineWidth: 2,
- // interactive stuff
- clickable: false,
- hoverable: false,
- autoHighlight: true, // highlight in case mouse is near
- mouseActiveRadius: 10 // how far the mouse can be away to activate an item
- },
- interaction: {
- redrawOverlayInterval: 1000/60 // time between updates, -1 means in same flow
- },
- hooks: {}
- },
- surface = null, // the canvas for the plot itself
- overlay = null, // canvas for interactive stuff on top of plot
- eventHolder = null, // jQuery object that events should be bound to
- ctx = null, octx = null,
- xaxes = [], yaxes = [],
- plotOffset = { left: 0, right: 0, top: 0, bottom: 0},
- plotWidth = 0, plotHeight = 0,
- hooks = {
- processOptions: [],
- processRawData: [],
- processDatapoints: [],
- processOffset: [],
- drawBackground: [],
- drawSeries: [],
- draw: [],
- bindEvents: [],
- drawOverlay: [],
- shutdown: []
- },
- plot = this;
-
- // public functions
- plot.setData = setData;
- plot.setupGrid = setupGrid;
- plot.draw = draw;
- plot.getPlaceholder = function() { return placeholder; };
- plot.getCanvas = function() { return surface.element; };
- plot.getPlotOffset = function() { return plotOffset; };
- plot.width = function () { return plotWidth; };
- plot.height = function () { return plotHeight; };
- plot.offset = function () {
- var o = eventHolder.offset();
- o.left += plotOffset.left;
- o.top += plotOffset.top;
- return o;
- };
- plot.getData = function () { return series; };
- plot.getAxes = function () {
- var res = {}, i;
- $.each(xaxes.concat(yaxes), function (_, axis) {
- if (axis)
- res[axis.direction + (axis.n != 1 ? axis.n : "") + "axis"] = axis;
- });
- return res;
- };
- plot.getXAxes = function () { return xaxes; };
- plot.getYAxes = function () { return yaxes; };
- plot.c2p = canvasToAxisCoords;
- plot.p2c = axisToCanvasCoords;
- plot.getOptions = function () { return options; };
- plot.highlight = highlight;
- plot.unhighlight = unhighlight;
- plot.triggerRedrawOverlay = triggerRedrawOverlay;
- plot.pointOffset = function(point) {
- return {
- left: parseInt(xaxes[axisNumber(point, "x") - 1].p2c(+point.x) + plotOffset.left, 10),
- top: parseInt(yaxes[axisNumber(point, "y") - 1].p2c(+point.y) + plotOffset.top, 10)
- };
- };
- plot.shutdown = shutdown;
- plot.destroy = function () {
- shutdown();
- placeholder.removeData("plot").empty();
-
- series = [];
- options = null;
- surface = null;
- overlay = null;
- eventHolder = null;
- ctx = null;
- octx = null;
- xaxes = [];
- yaxes = [];
- hooks = null;
- highlights = [];
- plot = null;
- };
- plot.resize = function () {
- var width = placeholder.width(),
- height = placeholder.height();
- surface.resize(width, height);
- overlay.resize(width, height);
- };
-
- // public attributes
- plot.hooks = hooks;
-
- // initialize
- initPlugins(plot);
- parseOptions(options_);
- setupCanvases();
- setData(data_);
- setupGrid();
- draw();
- bindEvents();
-
-
- function executeHooks(hook, args) {
- args = [plot].concat(args);
- for (var i = 0; i < hook.length; ++i)
- hook[i].apply(this, args);
- }
-
- function initPlugins() {
-
- // References to key classes, allowing plugins to modify them
-
- var classes = {
- Canvas: Canvas
- };
-
- for (var i = 0; i < plugins.length; ++i) {
- var p = plugins[i];
- p.init(plot, classes);
- if (p.options)
- $.extend(true, options, p.options);
- }
- }
-
- function parseOptions(opts) {
-
- $.extend(true, options, opts);
-
- // $.extend merges arrays, rather than replacing them. When less
- // colors are provided than the size of the default palette, we
- // end up with those colors plus the remaining defaults, which is
- // not expected behavior; avoid it by replacing them here.
-
- if (opts && opts.colors) {
- options.colors = opts.colors;
- }
-
- if (options.xaxis.color == null)
- options.xaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString();
- if (options.yaxis.color == null)
- options.yaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString();
-
- if (options.xaxis.tickColor == null) // grid.tickColor for back-compatibility
- options.xaxis.tickColor = options.grid.tickColor || options.xaxis.color;
- if (options.yaxis.tickColor == null) // grid.tickColor for back-compatibility
- options.yaxis.tickColor = options.grid.tickColor || options.yaxis.color;
-
- if (options.grid.borderColor == null)
- options.grid.borderColor = options.grid.color;
- if (options.grid.tickColor == null)
- options.grid.tickColor = $.color.parse(options.grid.color).scale('a', 0.22).toString();
-
- // Fill in defaults for axis options, including any unspecified
- // font-spec fields, if a font-spec was provided.
-
- // If no x/y axis options were provided, create one of each anyway,
- // since the rest of the code assumes that they exist.
-
- var i, axisOptions, axisCount,
- fontSize = placeholder.css("font-size"),
- fontSizeDefault = fontSize ? +fontSize.replace("px", "") : 13,
- fontDefaults = {
- style: placeholder.css("font-style"),
- size: Math.round(0.8 * fontSizeDefault),
- variant: placeholder.css("font-variant"),
- weight: placeholder.css("font-weight"),
- family: placeholder.css("font-family")
- };
-
- axisCount = options.xaxes.length || 1;
- for (i = 0; i < axisCount; ++i) {
-
- axisOptions = options.xaxes[i];
- if (axisOptions && !axisOptions.tickColor) {
- axisOptions.tickColor = axisOptions.color;
- }
-
- axisOptions = $.extend(true, {}, options.xaxis, axisOptions);
- options.xaxes[i] = axisOptions;
-
- if (axisOptions.font) {
- axisOptions.font = $.extend({}, fontDefaults, axisOptions.font);
- if (!axisOptions.font.color) {
- axisOptions.font.color = axisOptions.color;
- }
- if (!axisOptions.font.lineHeight) {
- axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15);
- }
- }
- }
-
- axisCount = options.yaxes.length || 1;
- for (i = 0; i < axisCount; ++i) {
-
- axisOptions = options.yaxes[i];
- if (axisOptions && !axisOptions.tickColor) {
- axisOptions.tickColor = axisOptions.color;
- }
-
- axisOptions = $.extend(true, {}, options.yaxis, axisOptions);
- options.yaxes[i] = axisOptions;
-
- if (axisOptions.font) {
- axisOptions.font = $.extend({}, fontDefaults, axisOptions.font);
- if (!axisOptions.font.color) {
- axisOptions.font.color = axisOptions.color;
- }
- if (!axisOptions.font.lineHeight) {
- axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15);
- }
- }
- }
-
- // backwards compatibility, to be removed in future
- if (options.xaxis.noTicks && options.xaxis.ticks == null)
- options.xaxis.ticks = options.xaxis.noTicks;
- if (options.yaxis.noTicks && options.yaxis.ticks == null)
- options.yaxis.ticks = options.yaxis.noTicks;
- if (options.x2axis) {
- options.xaxes[1] = $.extend(true, {}, options.xaxis, options.x2axis);
- options.xaxes[1].position = "top";
- // Override the inherit to allow the axis to auto-scale
- if (options.x2axis.min == null) {
- options.xaxes[1].min = null;
- }
- if (options.x2axis.max == null) {
- options.xaxes[1].max = null;
- }
- }
- if (options.y2axis) {
- options.yaxes[1] = $.extend(true, {}, options.yaxis, options.y2axis);
- options.yaxes[1].position = "right";
- // Override the inherit to allow the axis to auto-scale
- if (options.y2axis.min == null) {
- options.yaxes[1].min = null;
- }
- if (options.y2axis.max == null) {
- options.yaxes[1].max = null;
- }
- }
- if (options.grid.coloredAreas)
- options.grid.markings = options.grid.coloredAreas;
- if (options.grid.coloredAreasColor)
- options.grid.markingsColor = options.grid.coloredAreasColor;
- if (options.lines)
- $.extend(true, options.series.lines, options.lines);
- if (options.points)
- $.extend(true, options.series.points, options.points);
- if (options.bars)
- $.extend(true, options.series.bars, options.bars);
- if (options.shadowSize != null)
- options.series.shadowSize = options.shadowSize;
- if (options.highlightColor != null)
- options.series.highlightColor = options.highlightColor;
-
- // save options on axes for future reference
- for (i = 0; i < options.xaxes.length; ++i)
- getOrCreateAxis(xaxes, i + 1).options = options.xaxes[i];
- for (i = 0; i < options.yaxes.length; ++i)
- getOrCreateAxis(yaxes, i + 1).options = options.yaxes[i];
-
- // add hooks from options
- for (var n in hooks)
- if (options.hooks[n] && options.hooks[n].length)
- hooks[n] = hooks[n].concat(options.hooks[n]);
-
- executeHooks(hooks.processOptions, [options]);
- }
-
- function setData(d) {
- series = parseData(d);
- fillInSeriesOptions();
- processData();
- }
-
- function parseData(d) {
- var res = [];
- for (var i = 0; i < d.length; ++i) {
- var s = $.extend(true, {}, options.series);
-
- if (d[i].data != null) {
- s.data = d[i].data; // move the data instead of deep-copy
- delete d[i].data;
-
- $.extend(true, s, d[i]);
-
- d[i].data = s.data;
- }
- else
- s.data = d[i];
- res.push(s);
- }
-
- return res;
- }
-
- function axisNumber(obj, coord) {
- var a = obj[coord + "axis"];
- if (typeof a == "object") // if we got a real axis, extract number
- a = a.n;
- if (typeof a != "number")
- a = 1; // default to first axis
- return a;
- }
-
- function allAxes() {
- // return flat array without annoying null entries
- return $.grep(xaxes.concat(yaxes), function (a) { return a; });
- }
-
- function canvasToAxisCoords(pos) {
- // return an object with x/y corresponding to all used axes
- var res = {}, i, axis;
- for (i = 0; i < xaxes.length; ++i) {
- axis = xaxes[i];
- if (axis && axis.used)
- res["x" + axis.n] = axis.c2p(pos.left);
- }
-
- for (i = 0; i < yaxes.length; ++i) {
- axis = yaxes[i];
- if (axis && axis.used)
- res["y" + axis.n] = axis.c2p(pos.top);
- }
-
- if (res.x1 !== undefined)
- res.x = res.x1;
- if (res.y1 !== undefined)
- res.y = res.y1;
-
- return res;
- }
-
- function axisToCanvasCoords(pos) {
- // get canvas coords from the first pair of x/y found in pos
- var res = {}, i, axis, key;
-
- for (i = 0; i < xaxes.length; ++i) {
- axis = xaxes[i];
- if (axis && axis.used) {
- key = "x" + axis.n;
- if (pos[key] == null && axis.n == 1)
- key = "x";
-
- if (pos[key] != null) {
- res.left = axis.p2c(pos[key]);
- break;
- }
- }
- }
-
- for (i = 0; i < yaxes.length; ++i) {
- axis = yaxes[i];
- if (axis && axis.used) {
- key = "y" + axis.n;
- if (pos[key] == null && axis.n == 1)
- key = "y";
-
- if (pos[key] != null) {
- res.top = axis.p2c(pos[key]);
- break;
- }
- }
- }
-
- return res;
- }
-
- function getOrCreateAxis(axes, number) {
- if (!axes[number - 1])
- axes[number - 1] = {
- n: number, // save the number for future reference
- direction: axes == xaxes ? "x" : "y",
- options: $.extend(true, {}, axes == xaxes ? options.xaxis : options.yaxis)
- };
-
- return axes[number - 1];
- }
-
- function fillInSeriesOptions() {
-
- var neededColors = series.length, maxIndex = -1, i;
-
- // Subtract the number of series that already have fixed colors or
- // color indexes from the number that we still need to generate.
-
- for (i = 0; i < series.length; ++i) {
- var sc = series[i].color;
- if (sc != null) {
- neededColors--;
- if (typeof sc == "number" && sc > maxIndex) {
- maxIndex = sc;
- }
- }
- }
-
- // If any of the series have fixed color indexes, then we need to
- // generate at least as many colors as the highest index.
-
- if (neededColors <= maxIndex) {
- neededColors = maxIndex + 1;
- }
-
- // Generate all the colors, using first the option colors and then
- // variations on those colors once they're exhausted.
-
- var c, colors = [], colorPool = options.colors,
- colorPoolSize = colorPool.length, variation = 0;
-
- for (i = 0; i < neededColors; i++) {
-
- c = $.color.parse(colorPool[i % colorPoolSize] || "#666");
-
- // Each time we exhaust the colors in the pool we adjust
- // a scaling factor used to produce more variations on
- // those colors. The factor alternates negative/positive
- // to produce lighter/darker colors.
-
- // Reset the variation after every few cycles, or else
- // it will end up producing only white or black colors.
-
- if (i % colorPoolSize == 0 && i) {
- if (variation >= 0) {
- if (variation < 0.5) {
- variation = -variation - 0.2;
- } else variation = 0;
- } else variation = -variation;
- }
-
- colors[i] = c.scale('rgb', 1 + variation);
- }
-
- // Finalize the series options, filling in their colors
-
- var colori = 0, s;
- for (i = 0; i < series.length; ++i) {
- s = series[i];
-
- // assign colors
- if (s.color == null) {
- s.color = colors[colori].toString();
- ++colori;
- }
- else if (typeof s.color == "number")
- s.color = colors[s.color].toString();
-
- // turn on lines automatically in case nothing is set
- if (s.lines.show == null) {
- var v, show = true;
- for (v in s)
- if (s[v] && s[v].show) {
- show = false;
- break;
- }
- if (show)
- s.lines.show = true;
- }
-
- // If nothing was provided for lines.zero, default it to match
- // lines.fill, since areas by default should extend to zero.
-
- if (s.lines.zero == null) {
- s.lines.zero = !!s.lines.fill;
- }
-
- // setup axes
- s.xaxis = getOrCreateAxis(xaxes, axisNumber(s, "x"));
- s.yaxis = getOrCreateAxis(yaxes, axisNumber(s, "y"));
- }
- }
-
- function processData() {
- var topSentry = Number.POSITIVE_INFINITY,
- bottomSentry = Number.NEGATIVE_INFINITY,
- fakeInfinity = Number.MAX_VALUE,
- i, j, k, m, length,
- s, points, ps, x, y, axis, val, f, p,
- data, format;
-
- function updateAxis(axis, min, max) {
- if (min < axis.datamin && min != -fakeInfinity)
- axis.datamin = min;
- if (max > axis.datamax && max != fakeInfinity)
- axis.datamax = max;
- }
-
- $.each(allAxes(), function (_, axis) {
- // init axis
- axis.datamin = topSentry;
- axis.datamax = bottomSentry;
- axis.used = false;
- });
-
- for (i = 0; i < series.length; ++i) {
- s = series[i];
- s.datapoints = { points: [] };
-
- executeHooks(hooks.processRawData, [ s, s.data, s.datapoints ]);
- }
-
- // first pass: clean and copy data
- for (i = 0; i < series.length; ++i) {
- s = series[i];
-
- data = s.data;
- format = s.datapoints.format;
-
- if (!format) {
- format = [];
- // find out how to copy
- format.push({ x: true, number: true, required: true });
- format.push({ y: true, number: true, required: true });
-
- if (s.bars.show || (s.lines.show && s.lines.fill)) {
- var autoscale = !!((s.bars.show && s.bars.zero) || (s.lines.show && s.lines.zero));
- format.push({ y: true, number: true, required: false, defaultValue: 0, autoscale: autoscale });
- if (s.bars.horizontal) {
- delete format[format.length - 1].y;
- format[format.length - 1].x = true;
- }
- }
-
- s.datapoints.format = format;
- }
-
- if (s.datapoints.pointsize != null)
- continue; // already filled in
-
- s.datapoints.pointsize = format.length;
-
- ps = s.datapoints.pointsize;
- points = s.datapoints.points;
-
- var insertSteps = s.lines.show && s.lines.steps;
- s.xaxis.used = s.yaxis.used = true;
-
- for (j = k = 0; j < data.length; ++j, k += ps) {
- p = data[j];
-
- var nullify = p == null;
- if (!nullify) {
- for (m = 0; m < ps; ++m) {
- val = p[m];
- f = format[m];
-
- if (f) {
- if (f.number && val != null) {
- val = +val; // convert to number
- if (isNaN(val))
- val = null;
- else if (val == Infinity)
- val = fakeInfinity;
- else if (val == -Infinity)
- val = -fakeInfinity;
- }
-
- if (val == null) {
- if (f.required)
- nullify = true;
-
- if (f.defaultValue != null)
- val = f.defaultValue;
- }
- }
-
- points[k + m] = val;
- }
- }
-
- if (nullify) {
- for (m = 0; m < ps; ++m) {
- val = points[k + m];
- if (val != null) {
- f = format[m];
- // extract min/max info
- if (f.autoscale !== false) {
- if (f.x) {
- updateAxis(s.xaxis, val, val);
- }
- if (f.y) {
- updateAxis(s.yaxis, val, val);
- }
- }
- }
- points[k + m] = null;
- }
- }
- else {
- // a little bit of line specific stuff that
- // perhaps shouldn't be here, but lacking
- // better means...
- if (insertSteps && k > 0
- && points[k - ps] != null
- && points[k - ps] != points[k]
- && points[k - ps + 1] != points[k + 1]) {
- // copy the point to make room for a middle point
- for (m = 0; m < ps; ++m)
- points[k + ps + m] = points[k + m];
-
- // middle point has same y
- points[k + 1] = points[k - ps + 1];
-
- // we've added a point, better reflect that
- k += ps;
- }
- }
- }
- }
-
- // give the hooks a chance to run
- for (i = 0; i < series.length; ++i) {
- s = series[i];
-
- executeHooks(hooks.processDatapoints, [ s, s.datapoints]);
- }
-
- // second pass: find datamax/datamin for auto-scaling
- for (i = 0; i < series.length; ++i) {
- s = series[i];
- points = s.datapoints.points;
- ps = s.datapoints.pointsize;
- format = s.datapoints.format;
-
- var xmin = topSentry, ymin = topSentry,
- xmax = bottomSentry, ymax = bottomSentry;
-
- for (j = 0; j < points.length; j += ps) {
- if (points[j] == null)
- continue;
-
- for (m = 0; m < ps; ++m) {
- val = points[j + m];
- f = format[m];
- if (!f || f.autoscale === false || val == fakeInfinity || val == -fakeInfinity)
- continue;
-
- if (f.x) {
- if (val < xmin)
- xmin = val;
- if (val > xmax)
- xmax = val;
- }
- if (f.y) {
- if (val < ymin)
- ymin = val;
- if (val > ymax)
- ymax = val;
- }
- }
- }
-
- if (s.bars.show) {
- // make sure we got room for the bar on the dancing floor
- var delta;
-
- switch (s.bars.align) {
- case "left":
- delta = 0;
- break;
- case "right":
- delta = -s.bars.barWidth;
- break;
- default:
- delta = -s.bars.barWidth / 2;
- }
-
- if (s.bars.horizontal) {
- ymin += delta;
- ymax += delta + s.bars.barWidth;
- }
- else {
- xmin += delta;
- xmax += delta + s.bars.barWidth;
- }
- }
-
- updateAxis(s.xaxis, xmin, xmax);
- updateAxis(s.yaxis, ymin, ymax);
- }
-
- $.each(allAxes(), function (_, axis) {
- if (axis.datamin == topSentry)
- axis.datamin = null;
- if (axis.datamax == bottomSentry)
- axis.datamax = null;
- });
- }
-
- function setupCanvases() {
-
- // Make sure the placeholder is clear of everything except canvases
- // from a previous plot in this container that we'll try to re-use.
-
- placeholder.css("padding", 0) // padding messes up the positioning
- .children().filter(function(){
- return !$(this).hasClass("flot-overlay") && !$(this).hasClass('flot-base');
- }).remove();
-
- if (placeholder.css("position") == 'static')
- placeholder.css("position", "relative"); // for positioning labels and overlay
-
- surface = new Canvas("flot-base", placeholder);
- overlay = new Canvas("flot-overlay", placeholder); // overlay canvas for interactive features
-
- ctx = surface.context;
- octx = overlay.context;
-
- // define which element we're listening for events on
- eventHolder = $(overlay.element).unbind();
-
- // If we're re-using a plot object, shut down the old one
-
- var existing = placeholder.data("plot");
-
- if (existing) {
- existing.shutdown();
- overlay.clear();
- }
-
- // save in case we get replotted
- placeholder.data("plot", plot);
- }
-
- function bindEvents() {
- // bind events
- if (options.grid.hoverable) {
- eventHolder.mousemove(onMouseMove);
-
- // Use bind, rather than .mouseleave, because we officially
- // still support jQuery 1.2.6, which doesn't define a shortcut
- // for mouseenter or mouseleave. This was a bug/oversight that
- // was fixed somewhere around 1.3.x. We can return to using
- // .mouseleave when we drop support for 1.2.6.
-
- eventHolder.bind("mouseleave", onMouseLeave);
- }
-
- if (options.grid.clickable)
- eventHolder.click(onClick);
-
- executeHooks(hooks.bindEvents, [eventHolder]);
- }
-
- function shutdown() {
- if (redrawTimeout)
- clearTimeout(redrawTimeout);
-
- eventHolder.unbind("mousemove", onMouseMove);
- eventHolder.unbind("mouseleave", onMouseLeave);
- eventHolder.unbind("click", onClick);
-
- executeHooks(hooks.shutdown, [eventHolder]);
- }
-
- function setTransformationHelpers(axis) {
- // set helper functions on the axis, assumes plot area
- // has been computed already
-
- function identity(x) { return x; }
-
- var s, m, t = axis.options.transform || identity,
- it = axis.options.inverseTransform;
-
- // precompute how much the axis is scaling a point
- // in canvas space
- if (axis.direction == "x") {
- s = axis.scale = plotWidth / Math.abs(t(axis.max) - t(axis.min));
- m = Math.min(t(axis.max), t(axis.min));
- }
- else {
- s = axis.scale = plotHeight / Math.abs(t(axis.max) - t(axis.min));
- s = -s;
- m = Math.max(t(axis.max), t(axis.min));
- }
-
- // data point to canvas coordinate
- if (t == identity) // slight optimization
- axis.p2c = function (p) { return (p - m) * s; };
- else
- axis.p2c = function (p) { return (t(p) - m) * s; };
- // canvas coordinate to data point
- if (!it)
- axis.c2p = function (c) { return m + c / s; };
- else
- axis.c2p = function (c) { return it(m + c / s); };
- }
-
- function measureTickLabels(axis) {
-
- var opts = axis.options,
- ticks = axis.ticks || [],
- labelWidth = opts.labelWidth || 0,
- labelHeight = opts.labelHeight || 0,
- maxWidth = labelWidth || (axis.direction == "x" ? Math.floor(surface.width / (ticks.length || 1)) : null),
- legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis",
- layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles,
- font = opts.font || "flot-tick-label tickLabel";
-
- for (var i = 0; i < ticks.length; ++i) {
-
- var t = ticks[i];
-
- if (!t.label)
- continue;
-
- var info = surface.getTextInfo(layer, t.label, font, null, maxWidth);
-
- labelWidth = Math.max(labelWidth, info.width);
- labelHeight = Math.max(labelHeight, info.height);
- }
-
- axis.labelWidth = opts.labelWidth || labelWidth;
- axis.labelHeight = opts.labelHeight || labelHeight;
- }
-
- function allocateAxisBoxFirstPhase(axis) {
- // find the bounding box of the axis by looking at label
- // widths/heights and ticks, make room by diminishing the
- // plotOffset; this first phase only looks at one
- // dimension per axis, the other dimension depends on the
- // other axes so will have to wait
-
- var lw = axis.labelWidth,
- lh = axis.labelHeight,
- pos = axis.options.position,
- isXAxis = axis.direction === "x",
- tickLength = axis.options.tickLength,
- axisMargin = options.grid.axisMargin,
- padding = options.grid.labelMargin,
- innermost = true,
- outermost = true,
- first = true,
- found = false;
-
- // Determine the axis's position in its direction and on its side
-
- $.each(isXAxis ? xaxes : yaxes, function(i, a) {
- if (a && (a.show || a.reserveSpace)) {
- if (a === axis) {
- found = true;
- } else if (a.options.position === pos) {
- if (found) {
- outermost = false;
- } else {
- innermost = false;
- }
- }
- if (!found) {
- first = false;
- }
- }
- });
-
- // The outermost axis on each side has no margin
-
- if (outermost) {
- axisMargin = 0;
- }
-
- // The ticks for the first axis in each direction stretch across
-
- if (tickLength == null) {
- tickLength = first ? "full" : 5;
- }
-
- if (!isNaN(+tickLength))
- padding += +tickLength;
-
- if (isXAxis) {
- lh += padding;
-
- if (pos == "bottom") {
- plotOffset.bottom += lh + axisMargin;
- axis.box = { top: surface.height - plotOffset.bottom, height: lh };
- }
- else {
- axis.box = { top: plotOffset.top + axisMargin, height: lh };
- plotOffset.top += lh + axisMargin;
- }
- }
- else {
- lw += padding;
-
- if (pos == "left") {
- axis.box = { left: plotOffset.left + axisMargin, width: lw };
- plotOffset.left += lw + axisMargin;
- }
- else {
- plotOffset.right += lw + axisMargin;
- axis.box = { left: surface.width - plotOffset.right, width: lw };
- }
- }
-
- // save for future reference
- axis.position = pos;
- axis.tickLength = tickLength;
- axis.box.padding = padding;
- axis.innermost = innermost;
- }
-
- function allocateAxisBoxSecondPhase(axis) {
- // now that all axis boxes have been placed in one
- // dimension, we can set the remaining dimension coordinates
- if (axis.direction == "x") {
- axis.box.left = plotOffset.left - axis.labelWidth / 2;
- axis.box.width = surface.width - plotOffset.left - plotOffset.right + axis.labelWidth;
- }
- else {
- axis.box.top = plotOffset.top - axis.labelHeight / 2;
- axis.box.height = surface.height - plotOffset.bottom - plotOffset.top + axis.labelHeight;
- }
- }
-
- function adjustLayoutForThingsStickingOut() {
- // possibly adjust plot offset to ensure everything stays
- // inside the canvas and isn't clipped off
-
- var minMargin = options.grid.minBorderMargin,
- axis, i;
-
- // check stuff from the plot (FIXME: this should just read
- // a value from the series, otherwise it's impossible to
- // customize)
- if (minMargin == null) {
- minMargin = 0;
- for (i = 0; i < series.length; ++i)
- minMargin = Math.max(minMargin, 2 * (series[i].points.radius + series[i].points.lineWidth/2));
- }
-
- var margins = {
- left: minMargin,
- right: minMargin,
- top: minMargin,
- bottom: minMargin
- };
-
- // check axis labels, note we don't check the actual
- // labels but instead use the overall width/height to not
- // jump as much around with replots
- $.each(allAxes(), function (_, axis) {
- if (axis.reserveSpace && axis.ticks && axis.ticks.length) {
- if (axis.direction === "x") {
- margins.left = Math.max(margins.left, axis.labelWidth / 2);
- margins.right = Math.max(margins.right, axis.labelWidth / 2);
- } else {
- margins.bottom = Math.max(margins.bottom, axis.labelHeight / 2);
- margins.top = Math.max(margins.top, axis.labelHeight / 2);
- }
- }
- });
-
- plotOffset.left = Math.ceil(Math.max(margins.left, plotOffset.left));
- plotOffset.right = Math.ceil(Math.max(margins.right, plotOffset.right));
- plotOffset.top = Math.ceil(Math.max(margins.top, plotOffset.top));
- plotOffset.bottom = Math.ceil(Math.max(margins.bottom, plotOffset.bottom));
- }
-
- function setupGrid() {
- var i, axes = allAxes(), showGrid = options.grid.show;
-
- // Initialize the plot's offset from the edge of the canvas
-
- for (var a in plotOffset) {
- var margin = options.grid.margin || 0;
- plotOffset[a] = typeof margin == "number" ? margin : margin[a] || 0;
- }
-
- executeHooks(hooks.processOffset, [plotOffset]);
-
- // If the grid is visible, add its border width to the offset
-
- for (var a in plotOffset) {
- if(typeof(options.grid.borderWidth) == "object") {
- plotOffset[a] += showGrid ? options.grid.borderWidth[a] : 0;
- }
- else {
- plotOffset[a] += showGrid ? options.grid.borderWidth : 0;
- }
- }
-
- $.each(axes, function (_, axis) {
- var axisOpts = axis.options;
- axis.show = axisOpts.show == null ? axis.used : axisOpts.show;
- axis.reserveSpace = axisOpts.reserveSpace == null ? axis.show : axisOpts.reserveSpace;
- setRange(axis);
- });
-
- if (showGrid) {
-
- var allocatedAxes = $.grep(axes, function (axis) {
- return axis.show || axis.reserveSpace;
- });
-
- $.each(allocatedAxes, function (_, axis) {
- // make the ticks
- setupTickGeneration(axis);
- setTicks(axis);
- snapRangeToTicks(axis, axis.ticks);
- // find labelWidth/Height for axis
- measureTickLabels(axis);
- });
-
- // with all dimensions calculated, we can compute the
- // axis bounding boxes, start from the outside
- // (reverse order)
- for (i = allocatedAxes.length - 1; i >= 0; --i)
- allocateAxisBoxFirstPhase(allocatedAxes[i]);
-
- // make sure we've got enough space for things that
- // might stick out
- adjustLayoutForThingsStickingOut();
-
- $.each(allocatedAxes, function (_, axis) {
- allocateAxisBoxSecondPhase(axis);
- });
- }
-
- plotWidth = surface.width - plotOffset.left - plotOffset.right;
- plotHeight = surface.height - plotOffset.bottom - plotOffset.top;
-
- // now we got the proper plot dimensions, we can compute the scaling
- $.each(axes, function (_, axis) {
- setTransformationHelpers(axis);
- });
-
- if (showGrid) {
- drawAxisLabels();
- }
-
- insertLegend();
- }
-
- function setRange(axis) {
- var opts = axis.options,
- min = +(opts.min != null ? opts.min : axis.datamin),
- max = +(opts.max != null ? opts.max : axis.datamax),
- delta = max - min;
-
- if (delta == 0.0) {
- // degenerate case
- var widen = max == 0 ? 1 : 0.01;
-
- if (opts.min == null)
- min -= widen;
- // always widen max if we couldn't widen min to ensure we
- // don't fall into min == max which doesn't work
- if (opts.max == null || opts.min != null)
- max += widen;
- }
- else {
- // consider autoscaling
- var margin = opts.autoscaleMargin;
- if (margin != null) {
- if (opts.min == null) {
- min -= delta * margin;
- // make sure we don't go below zero if all values
- // are positive
- if (min < 0 && axis.datamin != null && axis.datamin >= 0)
- min = 0;
- }
- if (opts.max == null) {
- max += delta * margin;
- if (max > 0 && axis.datamax != null && axis.datamax <= 0)
- max = 0;
- }
- }
- }
- axis.min = min;
- axis.max = max;
- }
-
- function setupTickGeneration(axis) {
- var opts = axis.options;
-
- // estimate number of ticks
- var noTicks;
- if (typeof opts.ticks == "number" && opts.ticks > 0)
- noTicks = opts.ticks;
- else
- // heuristic based on the model a*sqrt(x) fitted to
- // some data points that seemed reasonable
- noTicks = 0.3 * Math.sqrt(axis.direction == "x" ? surface.width : surface.height);
-
- var delta = (axis.max - axis.min) / noTicks,
- dec = -Math.floor(Math.log(delta) / Math.LN10),
- maxDec = opts.tickDecimals;
-
- if (maxDec != null && dec > maxDec) {
- dec = maxDec;
- }
-
- var magn = Math.pow(10, -dec),
- norm = delta / magn, // norm is between 1.0 and 10.0
- size;
-
- if (norm < 1.5) {
- size = 1;
- } else if (norm < 3) {
- size = 2;
- // special case for 2.5, requires an extra decimal
- if (norm > 2.25 && (maxDec == null || dec + 1 <= maxDec)) {
- size = 2.5;
- ++dec;
- }
- } else if (norm < 7.5) {
- size = 5;
- } else {
- size = 10;
- }
-
- size *= magn;
-
- if (opts.minTickSize != null && size < opts.minTickSize) {
- size = opts.minTickSize;
- }
-
- axis.delta = delta;
- axis.tickDecimals = Math.max(0, maxDec != null ? maxDec : dec);
- axis.tickSize = opts.tickSize || size;
-
- // Time mode was moved to a plug-in in 0.8, and since so many people use it
- // we'll add an especially friendly reminder to make sure they included it.
-
- if (opts.mode == "time" && !axis.tickGenerator) {
- throw new Error("Time mode requires the flot.time plugin.");
- }
-
- // Flot supports base-10 axes; any other mode else is handled by a plug-in,
- // like flot.time.js.
-
- if (!axis.tickGenerator) {
-
- axis.tickGenerator = function (axis) {
-
- var ticks = [],
- start = floorInBase(axis.min, axis.tickSize),
- i = 0,
- v = Number.NaN,
- prev;
-
- do {
- prev = v;
- v = start + i * axis.tickSize;
- ticks.push(v);
- ++i;
- } while (v < axis.max && v != prev);
- return ticks;
- };
-
- axis.tickFormatter = function (value, axis) {
-
- var factor = axis.tickDecimals ? Math.pow(10, axis.tickDecimals) : 1;
- var formatted = "" + Math.round(value * factor) / factor;
-
- // If tickDecimals was specified, ensure that we have exactly that
- // much precision; otherwise default to the value's own precision.
-
- if (axis.tickDecimals != null) {
- var decimal = formatted.indexOf(".");
- var precision = decimal == -1 ? 0 : formatted.length - decimal - 1;
- if (precision < axis.tickDecimals) {
- return (precision ? formatted : formatted + ".") + ("" + factor).substr(1, axis.tickDecimals - precision);
- }
- }
-
- return formatted;
- };
- }
-
- if ($.isFunction(opts.tickFormatter))
- axis.tickFormatter = function (v, axis) { return "" + opts.tickFormatter(v, axis); };
-
- if (opts.alignTicksWithAxis != null) {
- var otherAxis = (axis.direction == "x" ? xaxes : yaxes)[opts.alignTicksWithAxis - 1];
- if (otherAxis && otherAxis.used && otherAxis != axis) {
- // consider snapping min/max to outermost nice ticks
- var niceTicks = axis.tickGenerator(axis);
- if (niceTicks.length > 0) {
- if (opts.min == null)
- axis.min = Math.min(axis.min, niceTicks[0]);
- if (opts.max == null && niceTicks.length > 1)
- axis.max = Math.max(axis.max, niceTicks[niceTicks.length - 1]);
- }
-
- axis.tickGenerator = function (axis) {
- // copy ticks, scaled to this axis
- var ticks = [], v, i;
- for (i = 0; i < otherAxis.ticks.length; ++i) {
- v = (otherAxis.ticks[i].v - otherAxis.min) / (otherAxis.max - otherAxis.min);
- v = axis.min + v * (axis.max - axis.min);
- ticks.push(v);
- }
- return ticks;
- };
-
- // we might need an extra decimal since forced
- // ticks don't necessarily fit naturally
- if (!axis.mode && opts.tickDecimals == null) {
- var extraDec = Math.max(0, -Math.floor(Math.log(axis.delta) / Math.LN10) + 1),
- ts = axis.tickGenerator(axis);
-
- // only proceed if the tick interval rounded
- // with an extra decimal doesn't give us a
- // zero at end
- if (!(ts.length > 1 && /\..*0$/.test((ts[1] - ts[0]).toFixed(extraDec))))
- axis.tickDecimals = extraDec;
- }
- }
- }
- }
-
- function setTicks(axis) {
- var oticks = axis.options.ticks, ticks = [];
- if (oticks == null || (typeof oticks == "number" && oticks > 0))
- ticks = axis.tickGenerator(axis);
- else if (oticks) {
- if ($.isFunction(oticks))
- // generate the ticks
- ticks = oticks(axis);
- else
- ticks = oticks;
- }
-
- // clean up/labelify the supplied ticks, copy them over
- var i, v;
- axis.ticks = [];
- for (i = 0; i < ticks.length; ++i) {
- var label = null;
- var t = ticks[i];
- if (typeof t == "object") {
- v = +t[0];
- if (t.length > 1)
- label = t[1];
- }
- else
- v = +t;
- if (label == null)
- label = axis.tickFormatter(v, axis);
- if (!isNaN(v))
- axis.ticks.push({ v: v, label: label });
- }
- }
-
- function snapRangeToTicks(axis, ticks) {
- if (axis.options.autoscaleMargin && ticks.length > 0) {
- // snap to ticks
- if (axis.options.min == null)
- axis.min = Math.min(axis.min, ticks[0].v);
- if (axis.options.max == null && ticks.length > 1)
- axis.max = Math.max(axis.max, ticks[ticks.length - 1].v);
- }
- }
-
- function draw() {
-
- surface.clear();
-
- executeHooks(hooks.drawBackground, [ctx]);
-
- var grid = options.grid;
-
- // draw background, if any
- if (grid.show && grid.backgroundColor)
- drawBackground();
-
- if (grid.show && !grid.aboveData) {
- drawGrid();
- }
-
- for (var i = 0; i < series.length; ++i) {
- executeHooks(hooks.drawSeries, [ctx, series[i]]);
- drawSeries(series[i]);
- }
-
- executeHooks(hooks.draw, [ctx]);
-
- if (grid.show && grid.aboveData) {
- drawGrid();
- }
-
- surface.render();
-
- // A draw implies that either the axes or data have changed, so we
- // should probably update the overlay highlights as well.
-
- triggerRedrawOverlay();
- }
-
- function extractRange(ranges, coord) {
- var axis, from, to, key, axes = allAxes();
-
- for (var i = 0; i < axes.length; ++i) {
- axis = axes[i];
- if (axis.direction == coord) {
- key = coord + axis.n + "axis";
- if (!ranges[key] && axis.n == 1)
- key = coord + "axis"; // support x1axis as xaxis
- if (ranges[key]) {
- from = ranges[key].from;
- to = ranges[key].to;
- break;
- }
- }
- }
-
- // backwards-compat stuff - to be removed in future
- if (!ranges[key]) {
- axis = coord == "x" ? xaxes[0] : yaxes[0];
- from = ranges[coord + "1"];
- to = ranges[coord + "2"];
- }
-
- // auto-reverse as an added bonus
- if (from != null && to != null && from > to) {
- var tmp = from;
- from = to;
- to = tmp;
- }
-
- return { from: from, to: to, axis: axis };
- }
-
- function drawBackground() {
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- ctx.fillStyle = getColorOrGradient(options.grid.backgroundColor, plotHeight, 0, "rgba(255, 255, 255, 0)");
- ctx.fillRect(0, 0, plotWidth, plotHeight);
- ctx.restore();
- }
-
- function drawGrid() {
- var i, axes, bw, bc;
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- // draw markings
- var markings = options.grid.markings;
- if (markings) {
- if ($.isFunction(markings)) {
- axes = plot.getAxes();
- // xmin etc. is backwards compatibility, to be
- // removed in the future
- axes.xmin = axes.xaxis.min;
- axes.xmax = axes.xaxis.max;
- axes.ymin = axes.yaxis.min;
- axes.ymax = axes.yaxis.max;
-
- markings = markings(axes);
- }
-
- for (i = 0; i < markings.length; ++i) {
- var m = markings[i],
- xrange = extractRange(m, "x"),
- yrange = extractRange(m, "y");
-
- // fill in missing
- if (xrange.from == null)
- xrange.from = xrange.axis.min;
- if (xrange.to == null)
- xrange.to = xrange.axis.max;
- if (yrange.from == null)
- yrange.from = yrange.axis.min;
- if (yrange.to == null)
- yrange.to = yrange.axis.max;
-
- // clip
- if (xrange.to < xrange.axis.min || xrange.from > xrange.axis.max ||
- yrange.to < yrange.axis.min || yrange.from > yrange.axis.max)
- continue;
-
- xrange.from = Math.max(xrange.from, xrange.axis.min);
- xrange.to = Math.min(xrange.to, xrange.axis.max);
- yrange.from = Math.max(yrange.from, yrange.axis.min);
- yrange.to = Math.min(yrange.to, yrange.axis.max);
-
- var xequal = xrange.from === xrange.to,
- yequal = yrange.from === yrange.to;
-
- if (xequal && yequal) {
- continue;
- }
-
- // then draw
- xrange.from = Math.floor(xrange.axis.p2c(xrange.from));
- xrange.to = Math.floor(xrange.axis.p2c(xrange.to));
- yrange.from = Math.floor(yrange.axis.p2c(yrange.from));
- yrange.to = Math.floor(yrange.axis.p2c(yrange.to));
-
- if (xequal || yequal) {
- var lineWidth = m.lineWidth || options.grid.markingsLineWidth,
- subPixel = lineWidth % 2 ? 0.5 : 0;
- ctx.beginPath();
- ctx.strokeStyle = m.color || options.grid.markingsColor;
- ctx.lineWidth = lineWidth;
- if (xequal) {
- ctx.moveTo(xrange.to + subPixel, yrange.from);
- ctx.lineTo(xrange.to + subPixel, yrange.to);
- } else {
- ctx.moveTo(xrange.from, yrange.to + subPixel);
- ctx.lineTo(xrange.to, yrange.to + subPixel);
- }
- ctx.stroke();
- } else {
- ctx.fillStyle = m.color || options.grid.markingsColor;
- ctx.fillRect(xrange.from, yrange.to,
- xrange.to - xrange.from,
- yrange.from - yrange.to);
- }
- }
- }
-
- // draw the ticks
- axes = allAxes();
- bw = options.grid.borderWidth;
-
- for (var j = 0; j < axes.length; ++j) {
- var axis = axes[j], box = axis.box,
- t = axis.tickLength, x, y, xoff, yoff;
- if (!axis.show || axis.ticks.length == 0)
- continue;
-
- ctx.lineWidth = 1;
-
- // find the edges
- if (axis.direction == "x") {
- x = 0;
- if (t == "full")
- y = (axis.position == "top" ? 0 : plotHeight);
- else
- y = box.top - plotOffset.top + (axis.position == "top" ? box.height : 0);
- }
- else {
- y = 0;
- if (t == "full")
- x = (axis.position == "left" ? 0 : plotWidth);
- else
- x = box.left - plotOffset.left + (axis.position == "left" ? box.width : 0);
- }
-
- // draw tick bar
- if (!axis.innermost) {
- ctx.strokeStyle = axis.options.color;
- ctx.beginPath();
- xoff = yoff = 0;
- if (axis.direction == "x")
- xoff = plotWidth + 1;
- else
- yoff = plotHeight + 1;
-
- if (ctx.lineWidth == 1) {
- if (axis.direction == "x") {
- y = Math.floor(y) + 0.5;
- } else {
- x = Math.floor(x) + 0.5;
- }
- }
-
- ctx.moveTo(x, y);
- ctx.lineTo(x + xoff, y + yoff);
- ctx.stroke();
- }
-
- // draw ticks
-
- ctx.strokeStyle = axis.options.tickColor;
-
- ctx.beginPath();
- for (i = 0; i < axis.ticks.length; ++i) {
- var v = axis.ticks[i].v;
-
- xoff = yoff = 0;
-
- if (isNaN(v) || v < axis.min || v > axis.max
- // skip those lying on the axes if we got a border
- || (t == "full"
- && ((typeof bw == "object" && bw[axis.position] > 0) || bw > 0)
- && (v == axis.min || v == axis.max)))
- continue;
-
- if (axis.direction == "x") {
- x = axis.p2c(v);
- yoff = t == "full" ? -plotHeight : t;
-
- if (axis.position == "top")
- yoff = -yoff;
- }
- else {
- y = axis.p2c(v);
- xoff = t == "full" ? -plotWidth : t;
-
- if (axis.position == "left")
- xoff = -xoff;
- }
-
- if (ctx.lineWidth == 1) {
- if (axis.direction == "x")
- x = Math.floor(x) + 0.5;
- else
- y = Math.floor(y) + 0.5;
- }
-
- ctx.moveTo(x, y);
- ctx.lineTo(x + xoff, y + yoff);
- }
-
- ctx.stroke();
- }
-
-
- // draw border
- if (bw) {
- // If either borderWidth or borderColor is an object, then draw the border
- // line by line instead of as one rectangle
- bc = options.grid.borderColor;
- if(typeof bw == "object" || typeof bc == "object") {
- if (typeof bw !== "object") {
- bw = {top: bw, right: bw, bottom: bw, left: bw};
- }
- if (typeof bc !== "object") {
- bc = {top: bc, right: bc, bottom: bc, left: bc};
- }
-
- if (bw.top > 0) {
- ctx.strokeStyle = bc.top;
- ctx.lineWidth = bw.top;
- ctx.beginPath();
- ctx.moveTo(0 - bw.left, 0 - bw.top/2);
- ctx.lineTo(plotWidth, 0 - bw.top/2);
- ctx.stroke();
- }
-
- if (bw.right > 0) {
- ctx.strokeStyle = bc.right;
- ctx.lineWidth = bw.right;
- ctx.beginPath();
- ctx.moveTo(plotWidth + bw.right / 2, 0 - bw.top);
- ctx.lineTo(plotWidth + bw.right / 2, plotHeight);
- ctx.stroke();
- }
-
- if (bw.bottom > 0) {
- ctx.strokeStyle = bc.bottom;
- ctx.lineWidth = bw.bottom;
- ctx.beginPath();
- ctx.moveTo(plotWidth + bw.right, plotHeight + bw.bottom / 2);
- ctx.lineTo(0, plotHeight + bw.bottom / 2);
- ctx.stroke();
- }
-
- if (bw.left > 0) {
- ctx.strokeStyle = bc.left;
- ctx.lineWidth = bw.left;
- ctx.beginPath();
- ctx.moveTo(0 - bw.left/2, plotHeight + bw.bottom);
- ctx.lineTo(0- bw.left/2, 0);
- ctx.stroke();
- }
- }
- else {
- ctx.lineWidth = bw;
- ctx.strokeStyle = options.grid.borderColor;
- ctx.strokeRect(-bw/2, -bw/2, plotWidth + bw, plotHeight + bw);
- }
- }
-
- ctx.restore();
- }
-
- function drawAxisLabels() {
-
- $.each(allAxes(), function (_, axis) {
- var box = axis.box,
- legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis",
- layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles,
- font = axis.options.font || "flot-tick-label tickLabel",
- tick, x, y, halign, valign;
-
- // Remove text before checking for axis.show and ticks.length;
- // otherwise plugins, like flot-tickrotor, that draw their own
- // tick labels will end up with both theirs and the defaults.
-
- surface.removeText(layer);
-
- if (!axis.show || axis.ticks.length == 0)
- return;
-
- for (var i = 0; i < axis.ticks.length; ++i) {
-
- tick = axis.ticks[i];
- if (!tick.label || tick.v < axis.min || tick.v > axis.max)
- continue;
-
- if (axis.direction == "x") {
- halign = "center";
- x = plotOffset.left + axis.p2c(tick.v);
- if (axis.position == "bottom") {
- y = box.top + box.padding;
- } else {
- y = box.top + box.height - box.padding;
- valign = "bottom";
- }
- } else {
- valign = "middle";
- y = plotOffset.top + axis.p2c(tick.v);
- if (axis.position == "left") {
- x = box.left + box.width - box.padding;
- halign = "right";
- } else {
- x = box.left + box.padding;
- }
- }
-
- surface.addText(layer, x, y, tick.label, font, null, null, halign, valign);
- }
- });
- }
-
- function drawSeries(series) {
- if (series.lines.show)
- drawSeriesLines(series);
- if (series.bars.show)
- drawSeriesBars(series);
- if (series.points.show)
- drawSeriesPoints(series);
- }
-
- function drawSeriesLines(series) {
- function plotLine(datapoints, xoffset, yoffset, axisx, axisy) {
- var points = datapoints.points,
- ps = datapoints.pointsize,
- prevx = null, prevy = null;
-
- ctx.beginPath();
- for (var i = ps; i < points.length; i += ps) {
- var x1 = points[i - ps], y1 = points[i - ps + 1],
- x2 = points[i], y2 = points[i + 1];
-
- if (x1 == null || x2 == null)
- continue;
-
- // clip with ymin
- if (y1 <= y2 && y1 < axisy.min) {
- if (y2 < axisy.min)
- continue; // line segment is outside
- // compute new intersection point
- x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
- y1 = axisy.min;
- }
- else if (y2 <= y1 && y2 < axisy.min) {
- if (y1 < axisy.min)
- continue;
- x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
- y2 = axisy.min;
- }
-
- // clip with ymax
- if (y1 >= y2 && y1 > axisy.max) {
- if (y2 > axisy.max)
- continue;
- x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
- y1 = axisy.max;
- }
- else if (y2 >= y1 && y2 > axisy.max) {
- if (y1 > axisy.max)
- continue;
- x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
- y2 = axisy.max;
- }
-
- // clip with xmin
- if (x1 <= x2 && x1 < axisx.min) {
- if (x2 < axisx.min)
- continue;
- y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
- x1 = axisx.min;
- }
- else if (x2 <= x1 && x2 < axisx.min) {
- if (x1 < axisx.min)
- continue;
- y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
- x2 = axisx.min;
- }
-
- // clip with xmax
- if (x1 >= x2 && x1 > axisx.max) {
- if (x2 > axisx.max)
- continue;
- y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
- x1 = axisx.max;
- }
- else if (x2 >= x1 && x2 > axisx.max) {
- if (x1 > axisx.max)
- continue;
- y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
- x2 = axisx.max;
- }
-
- if (x1 != prevx || y1 != prevy)
- ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset);
-
- prevx = x2;
- prevy = y2;
- ctx.lineTo(axisx.p2c(x2) + xoffset, axisy.p2c(y2) + yoffset);
- }
- ctx.stroke();
- }
-
- function plotLineArea(datapoints, axisx, axisy) {
- var points = datapoints.points,
- ps = datapoints.pointsize,
- bottom = Math.min(Math.max(0, axisy.min), axisy.max),
- i = 0, top, areaOpen = false,
- ypos = 1, segmentStart = 0, segmentEnd = 0;
-
- // we process each segment in two turns, first forward
- // direction to sketch out top, then once we hit the
- // end we go backwards to sketch the bottom
- while (true) {
- if (ps > 0 && i > points.length + ps)
- break;
-
- i += ps; // ps is negative if going backwards
-
- var x1 = points[i - ps],
- y1 = points[i - ps + ypos],
- x2 = points[i], y2 = points[i + ypos];
-
- if (areaOpen) {
- if (ps > 0 && x1 != null && x2 == null) {
- // at turning point
- segmentEnd = i;
- ps = -ps;
- ypos = 2;
- continue;
- }
-
- if (ps < 0 && i == segmentStart + ps) {
- // done with the reverse sweep
- ctx.fill();
- areaOpen = false;
- ps = -ps;
- ypos = 1;
- i = segmentStart = segmentEnd + ps;
- continue;
- }
- }
-
- if (x1 == null || x2 == null)
- continue;
-
- // clip x values
-
- // clip with xmin
- if (x1 <= x2 && x1 < axisx.min) {
- if (x2 < axisx.min)
- continue;
- y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
- x1 = axisx.min;
- }
- else if (x2 <= x1 && x2 < axisx.min) {
- if (x1 < axisx.min)
- continue;
- y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
- x2 = axisx.min;
- }
-
- // clip with xmax
- if (x1 >= x2 && x1 > axisx.max) {
- if (x2 > axisx.max)
- continue;
- y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
- x1 = axisx.max;
- }
- else if (x2 >= x1 && x2 > axisx.max) {
- if (x1 > axisx.max)
- continue;
- y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
- x2 = axisx.max;
- }
-
- if (!areaOpen) {
- // open area
- ctx.beginPath();
- ctx.moveTo(axisx.p2c(x1), axisy.p2c(bottom));
- areaOpen = true;
- }
-
- // now first check the case where both is outside
- if (y1 >= axisy.max && y2 >= axisy.max) {
- ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.max));
- ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.max));
- continue;
- }
- else if (y1 <= axisy.min && y2 <= axisy.min) {
- ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.min));
- ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.min));
- continue;
- }
-
- // else it's a bit more complicated, there might
- // be a flat maxed out rectangle first, then a
- // triangular cutout or reverse; to find these
- // keep track of the current x values
- var x1old = x1, x2old = x2;
-
- // clip the y values, without shortcutting, we
- // go through all cases in turn
-
- // clip with ymin
- if (y1 <= y2 && y1 < axisy.min && y2 >= axisy.min) {
- x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
- y1 = axisy.min;
- }
- else if (y2 <= y1 && y2 < axisy.min && y1 >= axisy.min) {
- x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
- y2 = axisy.min;
- }
-
- // clip with ymax
- if (y1 >= y2 && y1 > axisy.max && y2 <= axisy.max) {
- x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
- y1 = axisy.max;
- }
- else if (y2 >= y1 && y2 > axisy.max && y1 <= axisy.max) {
- x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
- y2 = axisy.max;
- }
-
- // if the x value was changed we got a rectangle
- // to fill
- if (x1 != x1old) {
- ctx.lineTo(axisx.p2c(x1old), axisy.p2c(y1));
- // it goes to (x1, y1), but we fill that below
- }
-
- // fill triangular section, this sometimes result
- // in redundant points if (x1, y1) hasn't changed
- // from previous line to, but we just ignore that
- ctx.lineTo(axisx.p2c(x1), axisy.p2c(y1));
- ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2));
-
- // fill the other rectangle if it's there
- if (x2 != x2old) {
- ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2));
- ctx.lineTo(axisx.p2c(x2old), axisy.p2c(y2));
- }
- }
- }
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
- ctx.lineJoin = "round";
-
- var lw = series.lines.lineWidth,
- sw = series.shadowSize;
- // FIXME: consider another form of shadow when filling is turned on
- if (lw > 0 && sw > 0) {
- // draw shadow as a thick and thin line with transparency
- ctx.lineWidth = sw;
- ctx.strokeStyle = "rgba(0,0,0,0.1)";
- // position shadow at angle from the mid of line
- var angle = Math.PI/18;
- plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/2), Math.cos(angle) * (lw/2 + sw/2), series.xaxis, series.yaxis);
- ctx.lineWidth = sw/2;
- plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/4), Math.cos(angle) * (lw/2 + sw/4), series.xaxis, series.yaxis);
- }
-
- ctx.lineWidth = lw;
- ctx.strokeStyle = series.color;
- var fillStyle = getFillStyle(series.lines, series.color, 0, plotHeight);
- if (fillStyle) {
- ctx.fillStyle = fillStyle;
- plotLineArea(series.datapoints, series.xaxis, series.yaxis);
- }
-
- if (lw > 0)
- plotLine(series.datapoints, 0, 0, series.xaxis, series.yaxis);
- ctx.restore();
- }
-
- function drawSeriesPoints(series) {
- function plotPoints(datapoints, radius, fillStyle, offset, shadow, axisx, axisy, symbol) {
- var points = datapoints.points, ps = datapoints.pointsize;
-
- for (var i = 0; i < points.length; i += ps) {
- var x = points[i], y = points[i + 1];
- if (x == null || x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max)
- continue;
-
- ctx.beginPath();
- x = axisx.p2c(x);
- y = axisy.p2c(y) + offset;
- if (symbol == "circle")
- ctx.arc(x, y, radius, 0, shadow ? Math.PI : Math.PI * 2, false);
- else
- symbol(ctx, x, y, radius, shadow);
- ctx.closePath();
-
- if (fillStyle) {
- ctx.fillStyle = fillStyle;
- ctx.fill();
- }
- ctx.stroke();
- }
- }
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- var lw = series.points.lineWidth,
- sw = series.shadowSize,
- radius = series.points.radius,
- symbol = series.points.symbol;
-
- // If the user sets the line width to 0, we change it to a very
- // small value. A line width of 0 seems to force the default of 1.
- // Doing the conditional here allows the shadow setting to still be
- // optional even with a lineWidth of 0.
-
- if( lw == 0 )
- lw = 0.0001;
-
- if (lw > 0 && sw > 0) {
- // draw shadow in two steps
- var w = sw / 2;
- ctx.lineWidth = w;
- ctx.strokeStyle = "rgba(0,0,0,0.1)";
- plotPoints(series.datapoints, radius, null, w + w/2, true,
- series.xaxis, series.yaxis, symbol);
-
- ctx.strokeStyle = "rgba(0,0,0,0.2)";
- plotPoints(series.datapoints, radius, null, w/2, true,
- series.xaxis, series.yaxis, symbol);
- }
-
- ctx.lineWidth = lw;
- ctx.strokeStyle = series.color;
- plotPoints(series.datapoints, radius,
- getFillStyle(series.points, series.color), 0, false,
- series.xaxis, series.yaxis, symbol);
- ctx.restore();
- }
-
- function drawBar(x, y, b, barLeft, barRight, fillStyleCallback, axisx, axisy, c, horizontal, lineWidth) {
- var left, right, bottom, top,
- drawLeft, drawRight, drawTop, drawBottom,
- tmp;
-
- // in horizontal mode, we start the bar from the left
- // instead of from the bottom so it appears to be
- // horizontal rather than vertical
- if (horizontal) {
- drawBottom = drawRight = drawTop = true;
- drawLeft = false;
- left = b;
- right = x;
- top = y + barLeft;
- bottom = y + barRight;
-
- // account for negative bars
- if (right < left) {
- tmp = right;
- right = left;
- left = tmp;
- drawLeft = true;
- drawRight = false;
- }
- }
- else {
- drawLeft = drawRight = drawTop = true;
- drawBottom = false;
- left = x + barLeft;
- right = x + barRight;
- bottom = b;
- top = y;
-
- // account for negative bars
- if (top < bottom) {
- tmp = top;
- top = bottom;
- bottom = tmp;
- drawBottom = true;
- drawTop = false;
- }
- }
-
- // clip
- if (right < axisx.min || left > axisx.max ||
- top < axisy.min || bottom > axisy.max)
- return;
-
- if (left < axisx.min) {
- left = axisx.min;
- drawLeft = false;
- }
-
- if (right > axisx.max) {
- right = axisx.max;
- drawRight = false;
- }
-
- if (bottom < axisy.min) {
- bottom = axisy.min;
- drawBottom = false;
- }
-
- if (top > axisy.max) {
- top = axisy.max;
- drawTop = false;
- }
-
- left = axisx.p2c(left);
- bottom = axisy.p2c(bottom);
- right = axisx.p2c(right);
- top = axisy.p2c(top);
-
- // fill the bar
- if (fillStyleCallback) {
- c.fillStyle = fillStyleCallback(bottom, top);
- c.fillRect(left, top, right - left, bottom - top)
- }
-
- // draw outline
- if (lineWidth > 0 && (drawLeft || drawRight || drawTop || drawBottom)) {
- c.beginPath();
-
- // FIXME: inline moveTo is buggy with excanvas
- c.moveTo(left, bottom);
- if (drawLeft)
- c.lineTo(left, top);
- else
- c.moveTo(left, top);
- if (drawTop)
- c.lineTo(right, top);
- else
- c.moveTo(right, top);
- if (drawRight)
- c.lineTo(right, bottom);
- else
- c.moveTo(right, bottom);
- if (drawBottom)
- c.lineTo(left, bottom);
- else
- c.moveTo(left, bottom);
- c.stroke();
- }
- }
-
- function drawSeriesBars(series) {
- function plotBars(datapoints, barLeft, barRight, fillStyleCallback, axisx, axisy) {
- var points = datapoints.points, ps = datapoints.pointsize;
-
- for (var i = 0; i < points.length; i += ps) {
- if (points[i] == null)
- continue;
- drawBar(points[i], points[i + 1], points[i + 2], barLeft, barRight, fillStyleCallback, axisx, axisy, ctx, series.bars.horizontal, series.bars.lineWidth);
- }
- }
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- // FIXME: figure out a way to add shadows (for instance along the right edge)
- ctx.lineWidth = series.bars.lineWidth;
- ctx.strokeStyle = series.color;
-
- var barLeft;
-
- switch (series.bars.align) {
- case "left":
- barLeft = 0;
- break;
- case "right":
- barLeft = -series.bars.barWidth;
- break;
- default:
- barLeft = -series.bars.barWidth / 2;
- }
-
- var fillStyleCallback = series.bars.fill ? function (bottom, top) { return getFillStyle(series.bars, series.color, bottom, top); } : null;
- plotBars(series.datapoints, barLeft, barLeft + series.bars.barWidth, fillStyleCallback, series.xaxis, series.yaxis);
- ctx.restore();
- }
-
- function getFillStyle(filloptions, seriesColor, bottom, top) {
- var fill = filloptions.fill;
- if (!fill)
- return null;
-
- if (filloptions.fillColor)
- return getColorOrGradient(filloptions.fillColor, bottom, top, seriesColor);
-
- var c = $.color.parse(seriesColor);
- c.a = typeof fill == "number" ? fill : 0.4;
- c.normalize();
- return c.toString();
- }
-
- function insertLegend() {
-
- if (options.legend.container != null) {
- $(options.legend.container).html("");
- } else {
- placeholder.find(".legend").remove();
- }
-
- if (!options.legend.show) {
- return;
- }
-
- var fragments = [], entries = [], rowStarted = false,
- lf = options.legend.labelFormatter, s, label;
-
- // Build a list of legend entries, with each having a label and a color
-
- for (var i = 0; i < series.length; ++i) {
- s = series[i];
- if (s.label) {
- label = lf ? lf(s.label, s) : s.label;
- if (label) {
- entries.push({
- label: label,
- color: s.color
- });
- }
- }
- }
-
- // Sort the legend using either the default or a custom comparator
-
- if (options.legend.sorted) {
- if ($.isFunction(options.legend.sorted)) {
- entries.sort(options.legend.sorted);
- } else if (options.legend.sorted == "reverse") {
- entries.reverse();
- } else {
- var ascending = options.legend.sorted != "descending";
- entries.sort(function(a, b) {
- return a.label == b.label ? 0 : (
- (a.label < b.label) != ascending ? 1 : -1 // Logical XOR
- );
- });
- }
- }
-
- // Generate markup for the list of entries, in their final order
-
- for (var i = 0; i < entries.length; ++i) {
-
- var entry = entries[i];
-
- if (i % options.legend.noColumns == 0) {
- if (rowStarted)
- fragments.push('');
- fragments.push('');
- rowStarted = true;
- }
-
- fragments.push(
- ' ' +
- '' + entry.label + ' '
- );
- }
-
- if (rowStarted)
- fragments.push(' ');
-
- if (fragments.length == 0)
- return;
-
- var table = '' + fragments.join("") + '
';
- if (options.legend.container != null)
- $(options.legend.container).html(table);
- else {
- var pos = "",
- p = options.legend.position,
- m = options.legend.margin;
- if (m[0] == null)
- m = [m, m];
- if (p.charAt(0) == "n")
- pos += 'top:' + (m[1] + plotOffset.top) + 'px;';
- else if (p.charAt(0) == "s")
- pos += 'bottom:' + (m[1] + plotOffset.bottom) + 'px;';
- if (p.charAt(1) == "e")
- pos += 'right:' + (m[0] + plotOffset.right) + 'px;';
- else if (p.charAt(1) == "w")
- pos += 'left:' + (m[0] + plotOffset.left) + 'px;';
- var legend = $('' + table.replace('style="', 'style="position:absolute;' + pos +';') + '
').appendTo(placeholder);
- if (options.legend.backgroundOpacity != 0.0) {
- // put in the transparent background
- // separately to avoid blended labels and
- // label boxes
- var c = options.legend.backgroundColor;
- if (c == null) {
- c = options.grid.backgroundColor;
- if (c && typeof c == "string")
- c = $.color.parse(c);
- else
- c = $.color.extract(legend, 'background-color');
- c.a = 1;
- c = c.toString();
- }
- var div = legend.children();
- $('
').prependTo(legend).css('opacity', options.legend.backgroundOpacity);
- }
- }
- }
-
-
- // interactive features
-
- var highlights = [],
- redrawTimeout = null;
-
- // returns the data item the mouse is over, or null if none is found
- function findNearbyItem(mouseX, mouseY, seriesFilter) {
- var maxDistance = options.grid.mouseActiveRadius,
- smallestDistance = maxDistance * maxDistance + 1,
- item = null, foundPoint = false, i, j, ps;
-
- for (i = series.length - 1; i >= 0; --i) {
- if (!seriesFilter(series[i]))
- continue;
-
- var s = series[i],
- axisx = s.xaxis,
- axisy = s.yaxis,
- points = s.datapoints.points,
- mx = axisx.c2p(mouseX), // precompute some stuff to make the loop faster
- my = axisy.c2p(mouseY),
- maxx = maxDistance / axisx.scale,
- maxy = maxDistance / axisy.scale;
-
- ps = s.datapoints.pointsize;
- // with inverse transforms, we can't use the maxx/maxy
- // optimization, sadly
- if (axisx.options.inverseTransform)
- maxx = Number.MAX_VALUE;
- if (axisy.options.inverseTransform)
- maxy = Number.MAX_VALUE;
-
- if (s.lines.show || s.points.show) {
- for (j = 0; j < points.length; j += ps) {
- var x = points[j], y = points[j + 1];
- if (x == null)
- continue;
-
- // For points and lines, the cursor must be within a
- // certain distance to the data point
- if (x - mx > maxx || x - mx < -maxx ||
- y - my > maxy || y - my < -maxy)
- continue;
-
- // We have to calculate distances in pixels, not in
- // data units, because the scales of the axes may be different
- var dx = Math.abs(axisx.p2c(x) - mouseX),
- dy = Math.abs(axisy.p2c(y) - mouseY),
- dist = dx * dx + dy * dy; // we save the sqrt
-
- // use <= to ensure last point takes precedence
- // (last generally means on top of)
- if (dist < smallestDistance) {
- smallestDistance = dist;
- item = [i, j / ps];
- }
- }
- }
-
- if (s.bars.show && !item) { // no other point can be nearby
-
- var barLeft, barRight;
-
- switch (s.bars.align) {
- case "left":
- barLeft = 0;
- break;
- case "right":
- barLeft = -s.bars.barWidth;
- break;
- default:
- barLeft = -s.bars.barWidth / 2;
- }
-
- barRight = barLeft + s.bars.barWidth;
-
- for (j = 0; j < points.length; j += ps) {
- var x = points[j], y = points[j + 1], b = points[j + 2];
- if (x == null)
- continue;
-
- // for a bar graph, the cursor must be inside the bar
- if (series[i].bars.horizontal ?
- (mx <= Math.max(b, x) && mx >= Math.min(b, x) &&
- my >= y + barLeft && my <= y + barRight) :
- (mx >= x + barLeft && mx <= x + barRight &&
- my >= Math.min(b, y) && my <= Math.max(b, y)))
- item = [i, j / ps];
- }
- }
- }
-
- if (item) {
- i = item[0];
- j = item[1];
- ps = series[i].datapoints.pointsize;
-
- return { datapoint: series[i].datapoints.points.slice(j * ps, (j + 1) * ps),
- dataIndex: j,
- series: series[i],
- seriesIndex: i };
- }
-
- return null;
- }
-
- function onMouseMove(e) {
- if (options.grid.hoverable)
- triggerClickHoverEvent("plothover", e,
- function (s) { return s["hoverable"] != false; });
- }
-
- function onMouseLeave(e) {
- if (options.grid.hoverable)
- triggerClickHoverEvent("plothover", e,
- function (s) { return false; });
- }
-
- function onClick(e) {
- triggerClickHoverEvent("plotclick", e,
- function (s) { return s["clickable"] != false; });
- }
-
- // trigger click or hover event (they send the same parameters
- // so we share their code)
- function triggerClickHoverEvent(eventname, event, seriesFilter) {
- var offset = eventHolder.offset(),
- canvasX = event.pageX - offset.left - plotOffset.left,
- canvasY = event.pageY - offset.top - plotOffset.top,
- pos = canvasToAxisCoords({ left: canvasX, top: canvasY });
-
- pos.pageX = event.pageX;
- pos.pageY = event.pageY;
-
- var item = findNearbyItem(canvasX, canvasY, seriesFilter);
-
- if (item) {
- // fill in mouse pos for any listeners out there
- item.pageX = parseInt(item.series.xaxis.p2c(item.datapoint[0]) + offset.left + plotOffset.left, 10);
- item.pageY = parseInt(item.series.yaxis.p2c(item.datapoint[1]) + offset.top + plotOffset.top, 10);
- }
-
- if (options.grid.autoHighlight) {
- // clear auto-highlights
- for (var i = 0; i < highlights.length; ++i) {
- var h = highlights[i];
- if (h.auto == eventname &&
- !(item && h.series == item.series &&
- h.point[0] == item.datapoint[0] &&
- h.point[1] == item.datapoint[1]))
- unhighlight(h.series, h.point);
- }
-
- if (item)
- highlight(item.series, item.datapoint, eventname);
- }
-
- placeholder.trigger(eventname, [ pos, item ]);
- }
-
- function triggerRedrawOverlay() {
- var t = options.interaction.redrawOverlayInterval;
- if (t == -1) { // skip event queue
- drawOverlay();
- return;
- }
-
- if (!redrawTimeout)
- redrawTimeout = setTimeout(drawOverlay, t);
- }
-
- function drawOverlay() {
- redrawTimeout = null;
-
- // draw highlights
- octx.save();
- overlay.clear();
- octx.translate(plotOffset.left, plotOffset.top);
-
- var i, hi;
- for (i = 0; i < highlights.length; ++i) {
- hi = highlights[i];
-
- if (hi.series.bars.show)
- drawBarHighlight(hi.series, hi.point);
- else
- drawPointHighlight(hi.series, hi.point);
- }
- octx.restore();
-
- executeHooks(hooks.drawOverlay, [octx]);
- }
-
- function highlight(s, point, auto) {
- if (typeof s == "number")
- s = series[s];
-
- if (typeof point == "number") {
- var ps = s.datapoints.pointsize;
- point = s.datapoints.points.slice(ps * point, ps * (point + 1));
- }
-
- var i = indexOfHighlight(s, point);
- if (i == -1) {
- highlights.push({ series: s, point: point, auto: auto });
-
- triggerRedrawOverlay();
- }
- else if (!auto)
- highlights[i].auto = false;
- }
-
- function unhighlight(s, point) {
- if (s == null && point == null) {
- highlights = [];
- triggerRedrawOverlay();
- return;
- }
-
- if (typeof s == "number")
- s = series[s];
-
- if (typeof point == "number") {
- var ps = s.datapoints.pointsize;
- point = s.datapoints.points.slice(ps * point, ps * (point + 1));
- }
-
- var i = indexOfHighlight(s, point);
- if (i != -1) {
- highlights.splice(i, 1);
-
- triggerRedrawOverlay();
- }
- }
-
- function indexOfHighlight(s, p) {
- for (var i = 0; i < highlights.length; ++i) {
- var h = highlights[i];
- if (h.series == s && h.point[0] == p[0]
- && h.point[1] == p[1])
- return i;
- }
- return -1;
- }
-
- function drawPointHighlight(series, point) {
- var x = point[0], y = point[1],
- axisx = series.xaxis, axisy = series.yaxis,
- highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString();
-
- if (x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max)
- return;
-
- var pointRadius = series.points.radius + series.points.lineWidth / 2;
- octx.lineWidth = pointRadius;
- octx.strokeStyle = highlightColor;
- var radius = 1.5 * pointRadius;
- x = axisx.p2c(x);
- y = axisy.p2c(y);
-
- octx.beginPath();
- if (series.points.symbol == "circle")
- octx.arc(x, y, radius, 0, 2 * Math.PI, false);
- else
- series.points.symbol(octx, x, y, radius, false);
- octx.closePath();
- octx.stroke();
- }
-
- function drawBarHighlight(series, point) {
- var highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString(),
- fillStyle = highlightColor,
- barLeft;
-
- switch (series.bars.align) {
- case "left":
- barLeft = 0;
- break;
- case "right":
- barLeft = -series.bars.barWidth;
- break;
- default:
- barLeft = -series.bars.barWidth / 2;
- }
-
- octx.lineWidth = series.bars.lineWidth;
- octx.strokeStyle = highlightColor;
-
- drawBar(point[0], point[1], point[2] || 0, barLeft, barLeft + series.bars.barWidth,
- function () { return fillStyle; }, series.xaxis, series.yaxis, octx, series.bars.horizontal, series.bars.lineWidth);
- }
-
- function getColorOrGradient(spec, bottom, top, defaultColor) {
- if (typeof spec == "string")
- return spec;
- else {
- // assume this is a gradient spec; IE currently only
- // supports a simple vertical gradient properly, so that's
- // what we support too
- var gradient = ctx.createLinearGradient(0, top, 0, bottom);
-
- for (var i = 0, l = spec.colors.length; i < l; ++i) {
- var c = spec.colors[i];
- if (typeof c != "string") {
- var co = $.color.parse(defaultColor);
- if (c.brightness != null)
- co = co.scale('rgb', c.brightness);
- if (c.opacity != null)
- co.a *= c.opacity;
- c = co.toString();
- }
- gradient.addColorStop(i / (l - 1), c);
- }
-
- return gradient;
- }
- }
- }
-
- // Add the plot function to the top level of the jQuery object
-
- $.plot = function(placeholder, data, options) {
- //var t0 = new Date();
- var plot = new Plot($(placeholder), data, options, $.plot.plugins);
- //(window.console ? console.log : alert)("time used (msecs): " + ((new Date()).getTime() - t0.getTime()));
- return plot;
- };
-
- $.plot.version = "0.8.3";
-
- $.plot.plugins = [];
-
- // Also add the plot function as a chainable property
-
- $.fn.plot = function(data, options) {
- return this.each(function() {
- $.plot(this, data, options);
- });
- };
-
- // round to nearby lower multiple of base
- function floorInBase(n, base) {
- return base * Math.floor(n / base);
- }
-
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.navigate.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.navigate.js
deleted file mode 100755
index 13fb7f17d..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.navigate.js
+++ /dev/null
@@ -1,346 +0,0 @@
-/* Flot plugin for adding the ability to pan and zoom the plot.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The default behaviour is double click and scrollwheel up/down to zoom in, drag
-to pan. The plugin defines plot.zoom({ center }), plot.zoomOut() and
-plot.pan( offset ) so you easily can add custom controls. It also fires
-"plotpan" and "plotzoom" events, useful for synchronizing plots.
-
-The plugin supports these options:
-
- zoom: {
- interactive: false
- trigger: "dblclick" // or "click" for single click
- amount: 1.5 // 2 = 200% (zoom in), 0.5 = 50% (zoom out)
- }
-
- pan: {
- interactive: false
- cursor: "move" // CSS mouse cursor value used when dragging, e.g. "pointer"
- frameRate: 20
- }
-
- xaxis, yaxis, x2axis, y2axis: {
- zoomRange: null // or [ number, number ] (min range, max range) or false
- panRange: null // or [ number, number ] (min, max) or false
- }
-
-"interactive" enables the built-in drag/click behaviour. If you enable
-interactive for pan, then you'll have a basic plot that supports moving
-around; the same for zoom.
-
-"amount" specifies the default amount to zoom in (so 1.5 = 150%) relative to
-the current viewport.
-
-"cursor" is a standard CSS mouse cursor string used for visual feedback to the
-user when dragging.
-
-"frameRate" specifies the maximum number of times per second the plot will
-update itself while the user is panning around on it (set to null to disable
-intermediate pans, the plot will then not update until the mouse button is
-released).
-
-"zoomRange" is the interval in which zooming can happen, e.g. with zoomRange:
-[1, 100] the zoom will never scale the axis so that the difference between min
-and max is smaller than 1 or larger than 100. You can set either end to null
-to ignore, e.g. [1, null]. If you set zoomRange to false, zooming on that axis
-will be disabled.
-
-"panRange" confines the panning to stay within a range, e.g. with panRange:
-[-10, 20] panning stops at -10 in one end and at 20 in the other. Either can
-be null, e.g. [-10, null]. If you set panRange to false, panning on that axis
-will be disabled.
-
-Example API usage:
-
- plot = $.plot(...);
-
- // zoom default amount in on the pixel ( 10, 20 )
- plot.zoom({ center: { left: 10, top: 20 } });
-
- // zoom out again
- plot.zoomOut({ center: { left: 10, top: 20 } });
-
- // zoom 200% in on the pixel (10, 20)
- plot.zoom({ amount: 2, center: { left: 10, top: 20 } });
-
- // pan 100 pixels to the left and 20 down
- plot.pan({ left: -100, top: 20 })
-
-Here, "center" specifies where the center of the zooming should happen. Note
-that this is defined in pixel space, not the space of the data points (you can
-use the p2c helpers on the axes in Flot to help you convert between these).
-
-"amount" is the amount to zoom the viewport relative to the current range, so
-1 is 100% (i.e. no change), 1.5 is 150% (zoom in), 0.7 is 70% (zoom out). You
-can set the default in the options.
-
-*/
-
-// First two dependencies, jquery.event.drag.js and
-// jquery.mousewheel.js, we put them inline here to save people the
-// effort of downloading them.
-
-/*
-jquery.event.drag.js ~ v1.5 ~ Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
-Licensed under the MIT License ~ http://threedubmedia.googlecode.com/files/MIT-LICENSE.txt
-*/
-(function(a){function e(h){var k,j=this,l=h.data||{};if(l.elem)j=h.dragTarget=l.elem,h.dragProxy=d.proxy||j,h.cursorOffsetX=l.pageX-l.left,h.cursorOffsetY=l.pageY-l.top,h.offsetX=h.pageX-h.cursorOffsetX,h.offsetY=h.pageY-h.cursorOffsetY;else if(d.dragging||l.which>0&&h.which!=l.which||a(h.target).is(l.not))return;switch(h.type){case"mousedown":return a.extend(l,a(j).offset(),{elem:j,target:h.target,pageX:h.pageX,pageY:h.pageY}),b.add(document,"mousemove mouseup",e,l),i(j,!1),d.dragging=null,!1;case!d.dragging&&"mousemove":if(g(h.pageX-l.pageX)+g(h.pageY-l.pageY) max) {
- // make sure min < max
- var tmp = min;
- min = max;
- max = tmp;
- }
-
- //Check that we are in panRange
- if (pr) {
- if (pr[0] != null && min < pr[0]) {
- min = pr[0];
- }
- if (pr[1] != null && max > pr[1]) {
- max = pr[1];
- }
- }
-
- var range = max - min;
- if (zr &&
- ((zr[0] != null && range < zr[0] && amount >1) ||
- (zr[1] != null && range > zr[1] && amount <1)))
- return;
-
- opts.min = min;
- opts.max = max;
- });
-
- plot.setupGrid();
- plot.draw();
-
- if (!args.preventEvent)
- plot.getPlaceholder().trigger("plotzoom", [ plot, args ]);
- };
-
- plot.pan = function (args) {
- var delta = {
- x: +args.left,
- y: +args.top
- };
-
- if (isNaN(delta.x))
- delta.x = 0;
- if (isNaN(delta.y))
- delta.y = 0;
-
- $.each(plot.getAxes(), function (_, axis) {
- var opts = axis.options,
- min, max, d = delta[axis.direction];
-
- min = axis.c2p(axis.p2c(axis.min) + d),
- max = axis.c2p(axis.p2c(axis.max) + d);
-
- var pr = opts.panRange;
- if (pr === false) // no panning on this axis
- return;
-
- if (pr) {
- // check whether we hit the wall
- if (pr[0] != null && pr[0] > min) {
- d = pr[0] - min;
- min += d;
- max += d;
- }
-
- if (pr[1] != null && pr[1] < max) {
- d = pr[1] - max;
- min += d;
- max += d;
- }
- }
-
- opts.min = min;
- opts.max = max;
- });
-
- plot.setupGrid();
- plot.draw();
-
- if (!args.preventEvent)
- plot.getPlaceholder().trigger("plotpan", [ plot, args ]);
- };
-
- function shutdown(plot, eventHolder) {
- eventHolder.unbind(plot.getOptions().zoom.trigger, onZoomClick);
- eventHolder.unbind("mousewheel", onMouseWheel);
- eventHolder.unbind("dragstart", onDragStart);
- eventHolder.unbind("drag", onDrag);
- eventHolder.unbind("dragend", onDragEnd);
- if (panTimeout)
- clearTimeout(panTimeout);
- }
-
- plot.hooks.bindEvents.push(bindEvents);
- plot.hooks.shutdown.push(shutdown);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'navigate',
- version: '1.3'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.pie.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.pie.js
deleted file mode 100755
index 9c19db998..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.pie.js
+++ /dev/null
@@ -1,820 +0,0 @@
-/* Flot plugin for rendering pie charts.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin assumes that each series has a single data value, and that each
-value is a positive integer or zero. Negative numbers don't make sense for a
-pie chart, and have unpredictable results. The values do NOT need to be
-passed in as percentages; the plugin will calculate the total and per-slice
-percentages internally.
-
-* Created by Brian Medendorp
-
-* Updated with contributions from btburnett3, Anthony Aragues and Xavi Ivars
-
-The plugin supports these options:
-
- series: {
- pie: {
- show: true/false
- radius: 0-1 for percentage of fullsize, or a specified pixel length, or 'auto'
- innerRadius: 0-1 for percentage of fullsize or a specified pixel length, for creating a donut effect
- startAngle: 0-2 factor of PI used for starting angle (in radians) i.e 3/2 starts at the top, 0 and 2 have the same result
- tilt: 0-1 for percentage to tilt the pie, where 1 is no tilt, and 0 is completely flat (nothing will show)
- offset: {
- top: integer value to move the pie up or down
- left: integer value to move the pie left or right, or 'auto'
- },
- stroke: {
- color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#FFF')
- width: integer pixel width of the stroke
- },
- label: {
- show: true/false, or 'auto'
- formatter: a user-defined function that modifies the text/style of the label text
- radius: 0-1 for percentage of fullsize, or a specified pixel length
- background: {
- color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#000')
- opacity: 0-1
- },
- threshold: 0-1 for the percentage value at which to hide labels (if they're too small)
- },
- combine: {
- threshold: 0-1 for the percentage value at which to combine slices (if they're too small)
- color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#CCC'), if null, the plugin will automatically use the color of the first slice to be combined
- label: any text value of what the combined slice should be labeled
- }
- highlight: {
- opacity: 0-1
- }
- }
- }
-
-More detail and specific examples can be found in the included HTML file.
-
-*/
-
-(function($) {
-
- // Maximum redraw attempts when fitting labels within the plot
-
- var REDRAW_ATTEMPTS = 10;
-
- // Factor by which to shrink the pie when fitting labels within the plot
-
- var REDRAW_SHRINK = 0.95;
-
- function init(plot) {
-
- var canvas = null,
- target = null,
- options = null,
- maxRadius = null,
- centerLeft = null,
- centerTop = null,
- processed = false,
- ctx = null;
-
- // interactive variables
-
- var highlights = [];
-
- // add hook to determine if pie plugin in enabled, and then perform necessary operations
-
- plot.hooks.processOptions.push(function(plot, options) {
- if (options.series.pie.show) {
-
- options.grid.show = false;
-
- // set labels.show
-
- if (options.series.pie.label.show == "auto") {
- if (options.legend.show) {
- options.series.pie.label.show = false;
- } else {
- options.series.pie.label.show = true;
- }
- }
-
- // set radius
-
- if (options.series.pie.radius == "auto") {
- if (options.series.pie.label.show) {
- options.series.pie.radius = 3/4;
- } else {
- options.series.pie.radius = 1;
- }
- }
-
- // ensure sane tilt
-
- if (options.series.pie.tilt > 1) {
- options.series.pie.tilt = 1;
- } else if (options.series.pie.tilt < 0) {
- options.series.pie.tilt = 0;
- }
- }
- });
-
- plot.hooks.bindEvents.push(function(plot, eventHolder) {
- var options = plot.getOptions();
- if (options.series.pie.show) {
- if (options.grid.hoverable) {
- eventHolder.unbind("mousemove").mousemove(onMouseMove);
- }
- if (options.grid.clickable) {
- eventHolder.unbind("click").click(onClick);
- }
- }
- });
-
- plot.hooks.processDatapoints.push(function(plot, series, data, datapoints) {
- var options = plot.getOptions();
- if (options.series.pie.show) {
- processDatapoints(plot, series, data, datapoints);
- }
- });
-
- plot.hooks.drawOverlay.push(function(plot, octx) {
- var options = plot.getOptions();
- if (options.series.pie.show) {
- drawOverlay(plot, octx);
- }
- });
-
- plot.hooks.draw.push(function(plot, newCtx) {
- var options = plot.getOptions();
- if (options.series.pie.show) {
- draw(plot, newCtx);
- }
- });
-
- function processDatapoints(plot, series, datapoints) {
- if (!processed) {
- processed = true;
- canvas = plot.getCanvas();
- target = $(canvas).parent();
- options = plot.getOptions();
- plot.setData(combine(plot.getData()));
- }
- }
-
- function combine(data) {
-
- var total = 0,
- combined = 0,
- numCombined = 0,
- color = options.series.pie.combine.color,
- newdata = [];
-
- // Fix up the raw data from Flot, ensuring the data is numeric
-
- for (var i = 0; i < data.length; ++i) {
-
- var value = data[i].data;
-
- // If the data is an array, we'll assume that it's a standard
- // Flot x-y pair, and are concerned only with the second value.
-
- // Note how we use the original array, rather than creating a
- // new one; this is more efficient and preserves any extra data
- // that the user may have stored in higher indexes.
-
- if ($.isArray(value) && value.length == 1) {
- value = value[0];
- }
-
- if ($.isArray(value)) {
- // Equivalent to $.isNumeric() but compatible with jQuery < 1.7
- if (!isNaN(parseFloat(value[1])) && isFinite(value[1])) {
- value[1] = +value[1];
- } else {
- value[1] = 0;
- }
- } else if (!isNaN(parseFloat(value)) && isFinite(value)) {
- value = [1, +value];
- } else {
- value = [1, 0];
- }
-
- data[i].data = [value];
- }
-
- // Sum up all the slices, so we can calculate percentages for each
-
- for (var i = 0; i < data.length; ++i) {
- total += data[i].data[0][1];
- }
-
- // Count the number of slices with percentages below the combine
- // threshold; if it turns out to be just one, we won't combine.
-
- for (var i = 0; i < data.length; ++i) {
- var value = data[i].data[0][1];
- if (value / total <= options.series.pie.combine.threshold) {
- combined += value;
- numCombined++;
- if (!color) {
- color = data[i].color;
- }
- }
- }
-
- for (var i = 0; i < data.length; ++i) {
- var value = data[i].data[0][1];
- if (numCombined < 2 || value / total > options.series.pie.combine.threshold) {
- newdata.push(
- $.extend(data[i], { /* extend to allow keeping all other original data values
- and using them e.g. in labelFormatter. */
- data: [[1, value]],
- color: data[i].color,
- label: data[i].label,
- angle: value * Math.PI * 2 / total,
- percent: value / (total / 100)
- })
- );
- }
- }
-
- if (numCombined > 1) {
- newdata.push({
- data: [[1, combined]],
- color: color,
- label: options.series.pie.combine.label,
- angle: combined * Math.PI * 2 / total,
- percent: combined / (total / 100)
- });
- }
-
- return newdata;
- }
-
- function draw(plot, newCtx) {
-
- if (!target) {
- return; // if no series were passed
- }
-
- var canvasWidth = plot.getPlaceholder().width(),
- canvasHeight = plot.getPlaceholder().height(),
- legendWidth = target.children().filter(".legend").children().width() || 0;
-
- ctx = newCtx;
-
- // WARNING: HACK! REWRITE THIS CODE AS SOON AS POSSIBLE!
-
- // When combining smaller slices into an 'other' slice, we need to
- // add a new series. Since Flot gives plugins no way to modify the
- // list of series, the pie plugin uses a hack where the first call
- // to processDatapoints results in a call to setData with the new
- // list of series, then subsequent processDatapoints do nothing.
-
- // The plugin-global 'processed' flag is used to control this hack;
- // it starts out false, and is set to true after the first call to
- // processDatapoints.
-
- // Unfortunately this turns future setData calls into no-ops; they
- // call processDatapoints, the flag is true, and nothing happens.
-
- // To fix this we'll set the flag back to false here in draw, when
- // all series have been processed, so the next sequence of calls to
- // processDatapoints once again starts out with a slice-combine.
- // This is really a hack; in 0.9 we need to give plugins a proper
- // way to modify series before any processing begins.
-
- processed = false;
-
- // calculate maximum radius and center point
-
- maxRadius = Math.min(canvasWidth, canvasHeight / options.series.pie.tilt) / 2;
- centerTop = canvasHeight / 2 + options.series.pie.offset.top;
- centerLeft = canvasWidth / 2;
-
- if (options.series.pie.offset.left == "auto") {
- if (options.legend.position.match("w")) {
- centerLeft += legendWidth / 2;
- } else {
- centerLeft -= legendWidth / 2;
- }
- if (centerLeft < maxRadius) {
- centerLeft = maxRadius;
- } else if (centerLeft > canvasWidth - maxRadius) {
- centerLeft = canvasWidth - maxRadius;
- }
- } else {
- centerLeft += options.series.pie.offset.left;
- }
-
- var slices = plot.getData(),
- attempts = 0;
-
- // Keep shrinking the pie's radius until drawPie returns true,
- // indicating that all the labels fit, or we try too many times.
-
- do {
- if (attempts > 0) {
- maxRadius *= REDRAW_SHRINK;
- }
- attempts += 1;
- clear();
- if (options.series.pie.tilt <= 0.8) {
- drawShadow();
- }
- } while (!drawPie() && attempts < REDRAW_ATTEMPTS)
-
- if (attempts >= REDRAW_ATTEMPTS) {
- clear();
- target.prepend("Could not draw pie with labels contained inside canvas
");
- }
-
- if (plot.setSeries && plot.insertLegend) {
- plot.setSeries(slices);
- plot.insertLegend();
- }
-
- // we're actually done at this point, just defining internal functions at this point
-
- function clear() {
- ctx.clearRect(0, 0, canvasWidth, canvasHeight);
- target.children().filter(".pieLabel, .pieLabelBackground").remove();
- }
-
- function drawShadow() {
-
- var shadowLeft = options.series.pie.shadow.left;
- var shadowTop = options.series.pie.shadow.top;
- var edge = 10;
- var alpha = options.series.pie.shadow.alpha;
- var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius;
-
- if (radius >= canvasWidth / 2 - shadowLeft || radius * options.series.pie.tilt >= canvasHeight / 2 - shadowTop || radius <= edge) {
- return; // shadow would be outside canvas, so don't draw it
- }
-
- ctx.save();
- ctx.translate(shadowLeft,shadowTop);
- ctx.globalAlpha = alpha;
- ctx.fillStyle = "#000";
-
- // center and rotate to starting position
-
- ctx.translate(centerLeft,centerTop);
- ctx.scale(1, options.series.pie.tilt);
-
- //radius -= edge;
-
- for (var i = 1; i <= edge; i++) {
- ctx.beginPath();
- ctx.arc(0, 0, radius, 0, Math.PI * 2, false);
- ctx.fill();
- radius -= i;
- }
-
- ctx.restore();
- }
-
- function drawPie() {
-
- var startAngle = Math.PI * options.series.pie.startAngle;
- var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius;
-
- // center and rotate to starting position
-
- ctx.save();
- ctx.translate(centerLeft,centerTop);
- ctx.scale(1, options.series.pie.tilt);
- //ctx.rotate(startAngle); // start at top; -- This doesn't work properly in Opera
-
- // draw slices
-
- ctx.save();
- var currentAngle = startAngle;
- for (var i = 0; i < slices.length; ++i) {
- slices[i].startAngle = currentAngle;
- drawSlice(slices[i].angle, slices[i].color, true);
- }
- ctx.restore();
-
- // draw slice outlines
-
- if (options.series.pie.stroke.width > 0) {
- ctx.save();
- ctx.lineWidth = options.series.pie.stroke.width;
- currentAngle = startAngle;
- for (var i = 0; i < slices.length; ++i) {
- drawSlice(slices[i].angle, options.series.pie.stroke.color, false);
- }
- ctx.restore();
- }
-
- // draw donut hole
-
- drawDonutHole(ctx);
-
- ctx.restore();
-
- // Draw the labels, returning true if they fit within the plot
-
- if (options.series.pie.label.show) {
- return drawLabels();
- } else return true;
-
- function drawSlice(angle, color, fill) {
-
- if (angle <= 0 || isNaN(angle)) {
- return;
- }
-
- if (fill) {
- ctx.fillStyle = color;
- } else {
- ctx.strokeStyle = color;
- ctx.lineJoin = "round";
- }
-
- ctx.beginPath();
- if (Math.abs(angle - Math.PI * 2) > 0.000000001) {
- ctx.moveTo(0, 0); // Center of the pie
- }
-
- //ctx.arc(0, 0, radius, 0, angle, false); // This doesn't work properly in Opera
- ctx.arc(0, 0, radius,currentAngle, currentAngle + angle / 2, false);
- ctx.arc(0, 0, radius,currentAngle + angle / 2, currentAngle + angle, false);
- ctx.closePath();
- //ctx.rotate(angle); // This doesn't work properly in Opera
- currentAngle += angle;
-
- if (fill) {
- ctx.fill();
- } else {
- ctx.stroke();
- }
- }
-
- function drawLabels() {
-
- var currentAngle = startAngle;
- var radius = options.series.pie.label.radius > 1 ? options.series.pie.label.radius : maxRadius * options.series.pie.label.radius;
-
- for (var i = 0; i < slices.length; ++i) {
- if (slices[i].percent >= options.series.pie.label.threshold * 100) {
- if (!drawLabel(slices[i], currentAngle, i)) {
- return false;
- }
- }
- currentAngle += slices[i].angle;
- }
-
- return true;
-
- function drawLabel(slice, startAngle, index) {
-
- if (slice.data[0][1] == 0) {
- return true;
- }
-
- // format label text
-
- var lf = options.legend.labelFormatter, text, plf = options.series.pie.label.formatter;
-
- if (lf) {
- text = lf(slice.label, slice);
- } else {
- text = slice.label;
- }
-
- if (plf) {
- text = plf(text, slice);
- }
-
- var halfAngle = ((startAngle + slice.angle) + startAngle) / 2;
- var x = centerLeft + Math.round(Math.cos(halfAngle) * radius);
- var y = centerTop + Math.round(Math.sin(halfAngle) * radius) * options.series.pie.tilt;
-
- var html = "" + text + " ";
- target.append(html);
-
- var label = target.children("#pieLabel" + index);
- var labelTop = (y - label.height() / 2);
- var labelLeft = (x - label.width() / 2);
-
- label.css("top", labelTop);
- label.css("left", labelLeft);
-
- // check to make sure that the label is not outside the canvas
-
- if (0 - labelTop > 0 || 0 - labelLeft > 0 || canvasHeight - (labelTop + label.height()) < 0 || canvasWidth - (labelLeft + label.width()) < 0) {
- return false;
- }
-
- if (options.series.pie.label.background.opacity != 0) {
-
- // put in the transparent background separately to avoid blended labels and label boxes
-
- var c = options.series.pie.label.background.color;
-
- if (c == null) {
- c = slice.color;
- }
-
- var pos = "top:" + labelTop + "px;left:" + labelLeft + "px;";
- $("
")
- .css("opacity", options.series.pie.label.background.opacity)
- .insertBefore(label);
- }
-
- return true;
- } // end individual label function
- } // end drawLabels function
- } // end drawPie function
- } // end draw function
-
- // Placed here because it needs to be accessed from multiple locations
-
- function drawDonutHole(layer) {
- if (options.series.pie.innerRadius > 0) {
-
- // subtract the center
-
- layer.save();
- var innerRadius = options.series.pie.innerRadius > 1 ? options.series.pie.innerRadius : maxRadius * options.series.pie.innerRadius;
- layer.globalCompositeOperation = "destination-out"; // this does not work with excanvas, but it will fall back to using the stroke color
- layer.beginPath();
- layer.fillStyle = options.series.pie.stroke.color;
- layer.arc(0, 0, innerRadius, 0, Math.PI * 2, false);
- layer.fill();
- layer.closePath();
- layer.restore();
-
- // add inner stroke
-
- layer.save();
- layer.beginPath();
- layer.strokeStyle = options.series.pie.stroke.color;
- layer.arc(0, 0, innerRadius, 0, Math.PI * 2, false);
- layer.stroke();
- layer.closePath();
- layer.restore();
-
- // TODO: add extra shadow inside hole (with a mask) if the pie is tilted.
- }
- }
-
- //-- Additional Interactive related functions --
-
- function isPointInPoly(poly, pt) {
- for(var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i)
- ((poly[i][1] <= pt[1] && pt[1] < poly[j][1]) || (poly[j][1] <= pt[1] && pt[1]< poly[i][1]))
- && (pt[0] < (poly[j][0] - poly[i][0]) * (pt[1] - poly[i][1]) / (poly[j][1] - poly[i][1]) + poly[i][0])
- && (c = !c);
- return c;
- }
-
- function findNearbySlice(mouseX, mouseY) {
-
- var slices = plot.getData(),
- options = plot.getOptions(),
- radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius,
- x, y;
-
- for (var i = 0; i < slices.length; ++i) {
-
- var s = slices[i];
-
- if (s.pie.show) {
-
- ctx.save();
- ctx.beginPath();
- ctx.moveTo(0, 0); // Center of the pie
- //ctx.scale(1, options.series.pie.tilt); // this actually seems to break everything when here.
- ctx.arc(0, 0, radius, s.startAngle, s.startAngle + s.angle / 2, false);
- ctx.arc(0, 0, radius, s.startAngle + s.angle / 2, s.startAngle + s.angle, false);
- ctx.closePath();
- x = mouseX - centerLeft;
- y = mouseY - centerTop;
-
- if (ctx.isPointInPath) {
- if (ctx.isPointInPath(mouseX - centerLeft, mouseY - centerTop)) {
- ctx.restore();
- return {
- datapoint: [s.percent, s.data],
- dataIndex: 0,
- series: s,
- seriesIndex: i
- };
- }
- } else {
-
- // excanvas for IE doesn;t support isPointInPath, this is a workaround.
-
- var p1X = radius * Math.cos(s.startAngle),
- p1Y = radius * Math.sin(s.startAngle),
- p2X = radius * Math.cos(s.startAngle + s.angle / 4),
- p2Y = radius * Math.sin(s.startAngle + s.angle / 4),
- p3X = radius * Math.cos(s.startAngle + s.angle / 2),
- p3Y = radius * Math.sin(s.startAngle + s.angle / 2),
- p4X = radius * Math.cos(s.startAngle + s.angle / 1.5),
- p4Y = radius * Math.sin(s.startAngle + s.angle / 1.5),
- p5X = radius * Math.cos(s.startAngle + s.angle),
- p5Y = radius * Math.sin(s.startAngle + s.angle),
- arrPoly = [[0, 0], [p1X, p1Y], [p2X, p2Y], [p3X, p3Y], [p4X, p4Y], [p5X, p5Y]],
- arrPoint = [x, y];
-
- // TODO: perhaps do some mathmatical trickery here with the Y-coordinate to compensate for pie tilt?
-
- if (isPointInPoly(arrPoly, arrPoint)) {
- ctx.restore();
- return {
- datapoint: [s.percent, s.data],
- dataIndex: 0,
- series: s,
- seriesIndex: i
- };
- }
- }
-
- ctx.restore();
- }
- }
-
- return null;
- }
-
- function onMouseMove(e) {
- triggerClickHoverEvent("plothover", e);
- }
-
- function onClick(e) {
- triggerClickHoverEvent("plotclick", e);
- }
-
- // trigger click or hover event (they send the same parameters so we share their code)
-
- function triggerClickHoverEvent(eventname, e) {
-
- var offset = plot.offset();
- var canvasX = parseInt(e.pageX - offset.left);
- var canvasY = parseInt(e.pageY - offset.top);
- var item = findNearbySlice(canvasX, canvasY);
-
- if (options.grid.autoHighlight) {
-
- // clear auto-highlights
-
- for (var i = 0; i < highlights.length; ++i) {
- var h = highlights[i];
- if (h.auto == eventname && !(item && h.series == item.series)) {
- unhighlight(h.series);
- }
- }
- }
-
- // highlight the slice
-
- if (item) {
- highlight(item.series, eventname);
- }
-
- // trigger any hover bind events
-
- var pos = { pageX: e.pageX, pageY: e.pageY };
- target.trigger(eventname, [pos, item]);
- }
-
- function highlight(s, auto) {
- //if (typeof s == "number") {
- // s = series[s];
- //}
-
- var i = indexOfHighlight(s);
-
- if (i == -1) {
- highlights.push({ series: s, auto: auto });
- plot.triggerRedrawOverlay();
- } else if (!auto) {
- highlights[i].auto = false;
- }
- }
-
- function unhighlight(s) {
- if (s == null) {
- highlights = [];
- plot.triggerRedrawOverlay();
- }
-
- //if (typeof s == "number") {
- // s = series[s];
- //}
-
- var i = indexOfHighlight(s);
-
- if (i != -1) {
- highlights.splice(i, 1);
- plot.triggerRedrawOverlay();
- }
- }
-
- function indexOfHighlight(s) {
- for (var i = 0; i < highlights.length; ++i) {
- var h = highlights[i];
- if (h.series == s)
- return i;
- }
- return -1;
- }
-
- function drawOverlay(plot, octx) {
-
- var options = plot.getOptions();
-
- var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius;
-
- octx.save();
- octx.translate(centerLeft, centerTop);
- octx.scale(1, options.series.pie.tilt);
-
- for (var i = 0; i < highlights.length; ++i) {
- drawHighlight(highlights[i].series);
- }
-
- drawDonutHole(octx);
-
- octx.restore();
-
- function drawHighlight(series) {
-
- if (series.angle <= 0 || isNaN(series.angle)) {
- return;
- }
-
- //octx.fillStyle = parseColor(options.series.pie.highlight.color).scale(null, null, null, options.series.pie.highlight.opacity).toString();
- octx.fillStyle = "rgba(255, 255, 255, " + options.series.pie.highlight.opacity + ")"; // this is temporary until we have access to parseColor
- octx.beginPath();
- if (Math.abs(series.angle - Math.PI * 2) > 0.000000001) {
- octx.moveTo(0, 0); // Center of the pie
- }
- octx.arc(0, 0, radius, series.startAngle, series.startAngle + series.angle / 2, false);
- octx.arc(0, 0, radius, series.startAngle + series.angle / 2, series.startAngle + series.angle, false);
- octx.closePath();
- octx.fill();
- }
- }
- } // end init (plugin body)
-
- // define pie specific options and their default values
-
- var options = {
- series: {
- pie: {
- show: false,
- radius: "auto", // actual radius of the visible pie (based on full calculated radius if <=1, or hard pixel value)
- innerRadius: 0, /* for donut */
- startAngle: 3/2,
- tilt: 1,
- shadow: {
- left: 5, // shadow left offset
- top: 15, // shadow top offset
- alpha: 0.02 // shadow alpha
- },
- offset: {
- top: 0,
- left: "auto"
- },
- stroke: {
- color: "#fff",
- width: 1
- },
- label: {
- show: "auto",
- formatter: function(label, slice) {
- return "" + label + " " + Math.round(slice.percent) + "%
";
- }, // formatter function
- radius: 1, // radius at which to place the labels (based on full calculated radius if <=1, or hard pixel value)
- background: {
- color: null,
- opacity: 0
- },
- threshold: 0 // percentage at which to hide the label (i.e. the slice is too narrow)
- },
- combine: {
- threshold: -1, // percentage at which to combine little slices into one larger slice
- color: null, // color to give the new slice (auto-generated if null)
- label: "Other" // label to give the new slice
- },
- highlight: {
- //color: "#fff", // will add this functionality once parseColor is available
- opacity: 0.5
- }
- }
- }
- };
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: "pie",
- version: "1.1"
- });
-
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.resize.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.resize.js
deleted file mode 100755
index 8a626dda0..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.resize.js
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Flot plugin for automatically redrawing plots as the placeholder resizes.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-It works by listening for changes on the placeholder div (through the jQuery
-resize event plugin) - if the size changes, it will redraw the plot.
-
-There are no options. If you need to disable the plugin for some plots, you
-can just fix the size of their placeholders.
-
-*/
-
-/* Inline dependency:
- * jQuery resize event - v1.1 - 3/14/2010
- * http://benalman.com/projects/jquery-resize-plugin/
- *
- * Copyright (c) 2010 "Cowboy" Ben Alman
- * Dual licensed under the MIT and GPL licenses.
- * http://benalman.com/about/license/
- */
-(function($,e,t){"$:nomunge";var i=[],n=$.resize=$.extend($.resize,{}),a,r=false,s="setTimeout",u="resize",m=u+"-special-event",o="pendingDelay",l="activeDelay",f="throttleWindow";n[o]=200;n[l]=20;n[f]=true;$.event.special[u]={setup:function(){if(!n[f]&&this[s]){return false}var e=$(this);i.push(this);e.data(m,{w:e.width(),h:e.height()});if(i.length===1){a=t;h()}},teardown:function(){if(!n[f]&&this[s]){return false}var e=$(this);for(var t=i.length-1;t>=0;t--){if(i[t]==this){i.splice(t,1);break}}e.removeData(m);if(!i.length){if(r){cancelAnimationFrame(a)}else{clearTimeout(a)}a=null}},add:function(e){if(!n[f]&&this[s]){return false}var i;function a(e,n,a){var r=$(this),s=r.data(m)||{};s.w=n!==t?n:r.width();s.h=a!==t?a:r.height();i.apply(this,arguments)}if($.isFunction(e)){i=e;return a}else{i=e.handler;e.handler=a}}};function h(t){if(r===true){r=t||1}for(var s=i.length-1;s>=0;s--){var l=$(i[s]);if(l[0]==e||l.is(":visible")){var f=l.width(),c=l.height(),d=l.data(m);if(d&&(f!==d.w||c!==d.h)){l.trigger(u,[d.w=f,d.h=c]);r=t||true}}else{d=l.data(m);d.w=0;d.h=0}}if(a!==null){if(r&&(t==null||t-r<1e3)){a=e.requestAnimationFrame(h)}else{a=setTimeout(h,n[o]);r=false}}}if(!e.requestAnimationFrame){e.requestAnimationFrame=function(){return e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(t,i){return e.setTimeout(function(){t((new Date).getTime())},n[l])}}()}if(!e.cancelAnimationFrame){e.cancelAnimationFrame=function(){return e.webkitCancelRequestAnimationFrame||e.mozCancelRequestAnimationFrame||e.oCancelRequestAnimationFrame||e.msCancelRequestAnimationFrame||clearTimeout}()}})(jQuery,this);
-
-(function ($) {
- var options = { }; // no options
-
- function init(plot) {
- function onResize() {
- var placeholder = plot.getPlaceholder();
-
- // somebody might have hidden us and we can't plot
- // when we don't have the dimensions
- if (placeholder.width() == 0 || placeholder.height() == 0)
- return;
-
- plot.resize();
- plot.setupGrid();
- plot.draw();
- }
-
- function bindEvents(plot, eventHolder) {
- plot.getPlaceholder().resize(onResize);
- }
-
- function shutdown(plot, eventHolder) {
- plot.getPlaceholder().unbind("resize", onResize);
- }
-
- plot.hooks.bindEvents.push(bindEvents);
- plot.hooks.shutdown.push(shutdown);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'resize',
- version: '1.0'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.selection.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.selection.js
deleted file mode 100755
index d3c20fa4e..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.selection.js
+++ /dev/null
@@ -1,360 +0,0 @@
-/* Flot plugin for selecting regions of a plot.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin supports these options:
-
-selection: {
- mode: null or "x" or "y" or "xy",
- color: color,
- shape: "round" or "miter" or "bevel",
- minSize: number of pixels
-}
-
-Selection support is enabled by setting the mode to one of "x", "y" or "xy".
-In "x" mode, the user will only be able to specify the x range, similarly for
-"y" mode. For "xy", the selection becomes a rectangle where both ranges can be
-specified. "color" is color of the selection (if you need to change the color
-later on, you can get to it with plot.getOptions().selection.color). "shape"
-is the shape of the corners of the selection.
-
-"minSize" is the minimum size a selection can be in pixels. This value can
-be customized to determine the smallest size a selection can be and still
-have the selection rectangle be displayed. When customizing this value, the
-fact that it refers to pixels, not axis units must be taken into account.
-Thus, for example, if there is a bar graph in time mode with BarWidth set to 1
-minute, setting "minSize" to 1 will not make the minimum selection size 1
-minute, but rather 1 pixel. Note also that setting "minSize" to 0 will prevent
-"plotunselected" events from being fired when the user clicks the mouse without
-dragging.
-
-When selection support is enabled, a "plotselected" event will be emitted on
-the DOM element you passed into the plot function. The event handler gets a
-parameter with the ranges selected on the axes, like this:
-
- placeholder.bind( "plotselected", function( event, ranges ) {
- alert("You selected " + ranges.xaxis.from + " to " + ranges.xaxis.to)
- // similar for yaxis - with multiple axes, the extra ones are in
- // x2axis, x3axis, ...
- });
-
-The "plotselected" event is only fired when the user has finished making the
-selection. A "plotselecting" event is fired during the process with the same
-parameters as the "plotselected" event, in case you want to know what's
-happening while it's happening,
-
-A "plotunselected" event with no arguments is emitted when the user clicks the
-mouse to remove the selection. As stated above, setting "minSize" to 0 will
-destroy this behavior.
-
-The plugin allso adds the following methods to the plot object:
-
-- setSelection( ranges, preventEvent )
-
- Set the selection rectangle. The passed in ranges is on the same form as
- returned in the "plotselected" event. If the selection mode is "x", you
- should put in either an xaxis range, if the mode is "y" you need to put in
- an yaxis range and both xaxis and yaxis if the selection mode is "xy", like
- this:
-
- setSelection({ xaxis: { from: 0, to: 10 }, yaxis: { from: 40, to: 60 } });
-
- setSelection will trigger the "plotselected" event when called. If you don't
- want that to happen, e.g. if you're inside a "plotselected" handler, pass
- true as the second parameter. If you are using multiple axes, you can
- specify the ranges on any of those, e.g. as x2axis/x3axis/... instead of
- xaxis, the plugin picks the first one it sees.
-
-- clearSelection( preventEvent )
-
- Clear the selection rectangle. Pass in true to avoid getting a
- "plotunselected" event.
-
-- getSelection()
-
- Returns the current selection in the same format as the "plotselected"
- event. If there's currently no selection, the function returns null.
-
-*/
-
-(function ($) {
- function init(plot) {
- var selection = {
- first: { x: -1, y: -1}, second: { x: -1, y: -1},
- show: false,
- active: false
- };
-
- // FIXME: The drag handling implemented here should be
- // abstracted out, there's some similar code from a library in
- // the navigation plugin, this should be massaged a bit to fit
- // the Flot cases here better and reused. Doing this would
- // make this plugin much slimmer.
- var savedhandlers = {};
-
- var mouseUpHandler = null;
-
- function onMouseMove(e) {
- if (selection.active) {
- updateSelection(e);
-
- plot.getPlaceholder().trigger("plotselecting", [ getSelection() ]);
- }
- }
-
- function onMouseDown(e) {
- if (e.which != 1) // only accept left-click
- return;
-
- // cancel out any text selections
- document.body.focus();
-
- // prevent text selection and drag in old-school browsers
- if (document.onselectstart !== undefined && savedhandlers.onselectstart == null) {
- savedhandlers.onselectstart = document.onselectstart;
- document.onselectstart = function () { return false; };
- }
- if (document.ondrag !== undefined && savedhandlers.ondrag == null) {
- savedhandlers.ondrag = document.ondrag;
- document.ondrag = function () { return false; };
- }
-
- setSelectionPos(selection.first, e);
-
- selection.active = true;
-
- // this is a bit silly, but we have to use a closure to be
- // able to whack the same handler again
- mouseUpHandler = function (e) { onMouseUp(e); };
-
- $(document).one("mouseup", mouseUpHandler);
- }
-
- function onMouseUp(e) {
- mouseUpHandler = null;
-
- // revert drag stuff for old-school browsers
- if (document.onselectstart !== undefined)
- document.onselectstart = savedhandlers.onselectstart;
- if (document.ondrag !== undefined)
- document.ondrag = savedhandlers.ondrag;
-
- // no more dragging
- selection.active = false;
- updateSelection(e);
-
- if (selectionIsSane())
- triggerSelectedEvent();
- else {
- // this counts as a clear
- plot.getPlaceholder().trigger("plotunselected", [ ]);
- plot.getPlaceholder().trigger("plotselecting", [ null ]);
- }
-
- return false;
- }
-
- function getSelection() {
- if (!selectionIsSane())
- return null;
-
- if (!selection.show) return null;
-
- var r = {}, c1 = selection.first, c2 = selection.second;
- $.each(plot.getAxes(), function (name, axis) {
- if (axis.used) {
- var p1 = axis.c2p(c1[axis.direction]), p2 = axis.c2p(c2[axis.direction]);
- r[name] = { from: Math.min(p1, p2), to: Math.max(p1, p2) };
- }
- });
- return r;
- }
-
- function triggerSelectedEvent() {
- var r = getSelection();
-
- plot.getPlaceholder().trigger("plotselected", [ r ]);
-
- // backwards-compat stuff, to be removed in future
- if (r.xaxis && r.yaxis)
- plot.getPlaceholder().trigger("selected", [ { x1: r.xaxis.from, y1: r.yaxis.from, x2: r.xaxis.to, y2: r.yaxis.to } ]);
- }
-
- function clamp(min, value, max) {
- return value < min ? min: (value > max ? max: value);
- }
-
- function setSelectionPos(pos, e) {
- var o = plot.getOptions();
- var offset = plot.getPlaceholder().offset();
- var plotOffset = plot.getPlotOffset();
- pos.x = clamp(0, e.pageX - offset.left - plotOffset.left, plot.width());
- pos.y = clamp(0, e.pageY - offset.top - plotOffset.top, plot.height());
-
- if (o.selection.mode == "y")
- pos.x = pos == selection.first ? 0 : plot.width();
-
- if (o.selection.mode == "x")
- pos.y = pos == selection.first ? 0 : plot.height();
- }
-
- function updateSelection(pos) {
- if (pos.pageX == null)
- return;
-
- setSelectionPos(selection.second, pos);
- if (selectionIsSane()) {
- selection.show = true;
- plot.triggerRedrawOverlay();
- }
- else
- clearSelection(true);
- }
-
- function clearSelection(preventEvent) {
- if (selection.show) {
- selection.show = false;
- plot.triggerRedrawOverlay();
- if (!preventEvent)
- plot.getPlaceholder().trigger("plotunselected", [ ]);
- }
- }
-
- // function taken from markings support in Flot
- function extractRange(ranges, coord) {
- var axis, from, to, key, axes = plot.getAxes();
-
- for (var k in axes) {
- axis = axes[k];
- if (axis.direction == coord) {
- key = coord + axis.n + "axis";
- if (!ranges[key] && axis.n == 1)
- key = coord + "axis"; // support x1axis as xaxis
- if (ranges[key]) {
- from = ranges[key].from;
- to = ranges[key].to;
- break;
- }
- }
- }
-
- // backwards-compat stuff - to be removed in future
- if (!ranges[key]) {
- axis = coord == "x" ? plot.getXAxes()[0] : plot.getYAxes()[0];
- from = ranges[coord + "1"];
- to = ranges[coord + "2"];
- }
-
- // auto-reverse as an added bonus
- if (from != null && to != null && from > to) {
- var tmp = from;
- from = to;
- to = tmp;
- }
-
- return { from: from, to: to, axis: axis };
- }
-
- function setSelection(ranges, preventEvent) {
- var axis, range, o = plot.getOptions();
-
- if (o.selection.mode == "y") {
- selection.first.x = 0;
- selection.second.x = plot.width();
- }
- else {
- range = extractRange(ranges, "x");
-
- selection.first.x = range.axis.p2c(range.from);
- selection.second.x = range.axis.p2c(range.to);
- }
-
- if (o.selection.mode == "x") {
- selection.first.y = 0;
- selection.second.y = plot.height();
- }
- else {
- range = extractRange(ranges, "y");
-
- selection.first.y = range.axis.p2c(range.from);
- selection.second.y = range.axis.p2c(range.to);
- }
-
- selection.show = true;
- plot.triggerRedrawOverlay();
- if (!preventEvent && selectionIsSane())
- triggerSelectedEvent();
- }
-
- function selectionIsSane() {
- var minSize = plot.getOptions().selection.minSize;
- return Math.abs(selection.second.x - selection.first.x) >= minSize &&
- Math.abs(selection.second.y - selection.first.y) >= minSize;
- }
-
- plot.clearSelection = clearSelection;
- plot.setSelection = setSelection;
- plot.getSelection = getSelection;
-
- plot.hooks.bindEvents.push(function(plot, eventHolder) {
- var o = plot.getOptions();
- if (o.selection.mode != null) {
- eventHolder.mousemove(onMouseMove);
- eventHolder.mousedown(onMouseDown);
- }
- });
-
-
- plot.hooks.drawOverlay.push(function (plot, ctx) {
- // draw selection
- if (selection.show && selectionIsSane()) {
- var plotOffset = plot.getPlotOffset();
- var o = plot.getOptions();
-
- ctx.save();
- ctx.translate(plotOffset.left, plotOffset.top);
-
- var c = $.color.parse(o.selection.color);
-
- ctx.strokeStyle = c.scale('a', 0.8).toString();
- ctx.lineWidth = 1;
- ctx.lineJoin = o.selection.shape;
- ctx.fillStyle = c.scale('a', 0.4).toString();
-
- var x = Math.min(selection.first.x, selection.second.x) + 0.5,
- y = Math.min(selection.first.y, selection.second.y) + 0.5,
- w = Math.abs(selection.second.x - selection.first.x) - 1,
- h = Math.abs(selection.second.y - selection.first.y) - 1;
-
- ctx.fillRect(x, y, w, h);
- ctx.strokeRect(x, y, w, h);
-
- ctx.restore();
- }
- });
-
- plot.hooks.shutdown.push(function (plot, eventHolder) {
- eventHolder.unbind("mousemove", onMouseMove);
- eventHolder.unbind("mousedown", onMouseDown);
-
- if (mouseUpHandler)
- $(document).unbind("mouseup", mouseUpHandler);
- });
-
- }
-
- $.plot.plugins.push({
- init: init,
- options: {
- selection: {
- mode: null, // one of null, "x", "y" or "xy"
- color: "#e8cfac",
- shape: "round", // one of "round", "miter", or "bevel"
- minSize: 5 // minimum number of pixels
- }
- },
- name: 'selection',
- version: '1.1'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.stack.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.stack.js
deleted file mode 100755
index e75a7dfc0..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.stack.js
+++ /dev/null
@@ -1,188 +0,0 @@
-/* Flot plugin for stacking data sets rather than overlyaing them.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin assumes the data is sorted on x (or y if stacking horizontally).
-For line charts, it is assumed that if a line has an undefined gap (from a
-null point), then the line above it should have the same gap - insert zeros
-instead of "null" if you want another behaviour. This also holds for the start
-and end of the chart. Note that stacking a mix of positive and negative values
-in most instances doesn't make sense (so it looks weird).
-
-Two or more series are stacked when their "stack" attribute is set to the same
-key (which can be any number or string or just "true"). To specify the default
-stack, you can set the stack option like this:
-
- series: {
- stack: null/false, true, or a key (number/string)
- }
-
-You can also specify it for a single series, like this:
-
- $.plot( $("#placeholder"), [{
- data: [ ... ],
- stack: true
- }])
-
-The stacking order is determined by the order of the data series in the array
-(later series end up on top of the previous).
-
-Internally, the plugin modifies the datapoints in each series, adding an
-offset to the y value. For line series, extra data points are inserted through
-interpolation. If there's a second y value, it's also adjusted (e.g for bar
-charts or filled areas).
-
-*/
-
-(function ($) {
- var options = {
- series: { stack: null } // or number/string
- };
-
- function init(plot) {
- function findMatchingSeries(s, allseries) {
- var res = null;
- for (var i = 0; i < allseries.length; ++i) {
- if (s == allseries[i])
- break;
-
- if (allseries[i].stack == s.stack)
- res = allseries[i];
- }
-
- return res;
- }
-
- function stackData(plot, s, datapoints) {
- if (s.stack == null || s.stack === false)
- return;
-
- var other = findMatchingSeries(s, plot.getData());
- if (!other)
- return;
-
- var ps = datapoints.pointsize,
- points = datapoints.points,
- otherps = other.datapoints.pointsize,
- otherpoints = other.datapoints.points,
- newpoints = [],
- px, py, intery, qx, qy, bottom,
- withlines = s.lines.show,
- horizontal = s.bars.horizontal,
- withbottom = ps > 2 && (horizontal ? datapoints.format[2].x : datapoints.format[2].y),
- withsteps = withlines && s.lines.steps,
- fromgap = true,
- keyOffset = horizontal ? 1 : 0,
- accumulateOffset = horizontal ? 0 : 1,
- i = 0, j = 0, l, m;
-
- while (true) {
- if (i >= points.length)
- break;
-
- l = newpoints.length;
-
- if (points[i] == null) {
- // copy gaps
- for (m = 0; m < ps; ++m)
- newpoints.push(points[i + m]);
- i += ps;
- }
- else if (j >= otherpoints.length) {
- // for lines, we can't use the rest of the points
- if (!withlines) {
- for (m = 0; m < ps; ++m)
- newpoints.push(points[i + m]);
- }
- i += ps;
- }
- else if (otherpoints[j] == null) {
- // oops, got a gap
- for (m = 0; m < ps; ++m)
- newpoints.push(null);
- fromgap = true;
- j += otherps;
- }
- else {
- // cases where we actually got two points
- px = points[i + keyOffset];
- py = points[i + accumulateOffset];
- qx = otherpoints[j + keyOffset];
- qy = otherpoints[j + accumulateOffset];
- bottom = 0;
-
- if (px == qx) {
- for (m = 0; m < ps; ++m)
- newpoints.push(points[i + m]);
-
- newpoints[l + accumulateOffset] += qy;
- bottom = qy;
-
- i += ps;
- j += otherps;
- }
- else if (px > qx) {
- // we got past point below, might need to
- // insert interpolated extra point
- if (withlines && i > 0 && points[i - ps] != null) {
- intery = py + (points[i - ps + accumulateOffset] - py) * (qx - px) / (points[i - ps + keyOffset] - px);
- newpoints.push(qx);
- newpoints.push(intery + qy);
- for (m = 2; m < ps; ++m)
- newpoints.push(points[i + m]);
- bottom = qy;
- }
-
- j += otherps;
- }
- else { // px < qx
- if (fromgap && withlines) {
- // if we come from a gap, we just skip this point
- i += ps;
- continue;
- }
-
- for (m = 0; m < ps; ++m)
- newpoints.push(points[i + m]);
-
- // we might be able to interpolate a point below,
- // this can give us a better y
- if (withlines && j > 0 && otherpoints[j - otherps] != null)
- bottom = qy + (otherpoints[j - otherps + accumulateOffset] - qy) * (px - qx) / (otherpoints[j - otherps + keyOffset] - qx);
-
- newpoints[l + accumulateOffset] += bottom;
-
- i += ps;
- }
-
- fromgap = false;
-
- if (l != newpoints.length && withbottom)
- newpoints[l + 2] += bottom;
- }
-
- // maintain the line steps invariant
- if (withsteps && l != newpoints.length && l > 0
- && newpoints[l] != null
- && newpoints[l] != newpoints[l - ps]
- && newpoints[l + 1] != newpoints[l - ps + 1]) {
- for (m = 0; m < ps; ++m)
- newpoints[l + ps + m] = newpoints[l + m];
- newpoints[l + 1] = newpoints[l - ps + 1];
- }
- }
-
- datapoints.points = newpoints;
- }
-
- plot.hooks.processDatapoints.push(stackData);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'stack',
- version: '1.2'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.symbol.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.symbol.js
deleted file mode 100755
index 79f634971..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.symbol.js
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Flot plugin that adds some extra symbols for plotting points.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The symbols are accessed as strings through the standard symbol options:
-
- series: {
- points: {
- symbol: "square" // or "diamond", "triangle", "cross"
- }
- }
-
-*/
-
-(function ($) {
- function processRawData(plot, series, datapoints) {
- // we normalize the area of each symbol so it is approximately the
- // same as a circle of the given radius
-
- var handlers = {
- square: function (ctx, x, y, radius, shadow) {
- // pi * r^2 = (2s)^2 => s = r * sqrt(pi)/2
- var size = radius * Math.sqrt(Math.PI) / 2;
- ctx.rect(x - size, y - size, size + size, size + size);
- },
- diamond: function (ctx, x, y, radius, shadow) {
- // pi * r^2 = 2s^2 => s = r * sqrt(pi/2)
- var size = radius * Math.sqrt(Math.PI / 2);
- ctx.moveTo(x - size, y);
- ctx.lineTo(x, y - size);
- ctx.lineTo(x + size, y);
- ctx.lineTo(x, y + size);
- ctx.lineTo(x - size, y);
- },
- triangle: function (ctx, x, y, radius, shadow) {
- // pi * r^2 = 1/2 * s^2 * sin (pi / 3) => s = r * sqrt(2 * pi / sin(pi / 3))
- var size = radius * Math.sqrt(2 * Math.PI / Math.sin(Math.PI / 3));
- var height = size * Math.sin(Math.PI / 3);
- ctx.moveTo(x - size/2, y + height/2);
- ctx.lineTo(x + size/2, y + height/2);
- if (!shadow) {
- ctx.lineTo(x, y - height/2);
- ctx.lineTo(x - size/2, y + height/2);
- }
- },
- cross: function (ctx, x, y, radius, shadow) {
- // pi * r^2 = (2s)^2 => s = r * sqrt(pi)/2
- var size = radius * Math.sqrt(Math.PI) / 2;
- ctx.moveTo(x - size, y - size);
- ctx.lineTo(x + size, y + size);
- ctx.moveTo(x - size, y + size);
- ctx.lineTo(x + size, y - size);
- }
- };
-
- var s = series.points.symbol;
- if (handlers[s])
- series.points.symbol = handlers[s];
- }
-
- function init(plot) {
- plot.hooks.processDatapoints.push(processRawData);
- }
-
- $.plot.plugins.push({
- init: init,
- name: 'symbols',
- version: '1.0'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.threshold.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.threshold.js
deleted file mode 100755
index 8c99c401d..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.threshold.js
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Flot plugin for thresholding data.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin supports these options:
-
- series: {
- threshold: {
- below: number
- color: colorspec
- }
- }
-
-It can also be applied to a single series, like this:
-
- $.plot( $("#placeholder"), [{
- data: [ ... ],
- threshold: { ... }
- }])
-
-An array can be passed for multiple thresholding, like this:
-
- threshold: [{
- below: number1
- color: color1
- },{
- below: number2
- color: color2
- }]
-
-These multiple threshold objects can be passed in any order since they are
-sorted by the processing function.
-
-The data points below "below" are drawn with the specified color. This makes
-it easy to mark points below 0, e.g. for budget data.
-
-Internally, the plugin works by splitting the data into two series, above and
-below the threshold. The extra series below the threshold will have its label
-cleared and the special "originSeries" attribute set to the original series.
-You may need to check for this in hover events.
-
-*/
-
-(function ($) {
- var options = {
- series: { threshold: null } // or { below: number, color: color spec}
- };
-
- function init(plot) {
- function thresholdData(plot, s, datapoints, below, color) {
- var ps = datapoints.pointsize, i, x, y, p, prevp,
- thresholded = $.extend({}, s); // note: shallow copy
-
- thresholded.datapoints = { points: [], pointsize: ps, format: datapoints.format };
- thresholded.label = null;
- thresholded.color = color;
- thresholded.threshold = null;
- thresholded.originSeries = s;
- thresholded.data = [];
-
- var origpoints = datapoints.points,
- addCrossingPoints = s.lines.show;
-
- var threspoints = [];
- var newpoints = [];
- var m;
-
- for (i = 0; i < origpoints.length; i += ps) {
- x = origpoints[i];
- y = origpoints[i + 1];
-
- prevp = p;
- if (y < below)
- p = threspoints;
- else
- p = newpoints;
-
- if (addCrossingPoints && prevp != p && x != null
- && i > 0 && origpoints[i - ps] != null) {
- var interx = x + (below - y) * (x - origpoints[i - ps]) / (y - origpoints[i - ps + 1]);
- prevp.push(interx);
- prevp.push(below);
- for (m = 2; m < ps; ++m)
- prevp.push(origpoints[i + m]);
-
- p.push(null); // start new segment
- p.push(null);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- p.push(interx);
- p.push(below);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- }
-
- p.push(x);
- p.push(y);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- }
-
- datapoints.points = newpoints;
- thresholded.datapoints.points = threspoints;
-
- if (thresholded.datapoints.points.length > 0) {
- var origIndex = $.inArray(s, plot.getData());
- // Insert newly-generated series right after original one (to prevent it from becoming top-most)
- plot.getData().splice(origIndex + 1, 0, thresholded);
- }
-
- // FIXME: there are probably some edge cases left in bars
- }
-
- function processThresholds(plot, s, datapoints) {
- if (!s.threshold)
- return;
-
- if (s.threshold instanceof Array) {
- s.threshold.sort(function(a, b) {
- return a.below - b.below;
- });
-
- $(s.threshold).each(function(i, th) {
- thresholdData(plot, s, datapoints, th.below, th.color);
- });
- }
- else {
- thresholdData(plot, s, datapoints, s.threshold.below, s.threshold.color);
- }
- }
-
- plot.hooks.processDatapoints.push(processThresholds);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'threshold',
- version: '1.2'
- });
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.time.js b/front/lib/AdminLTE/bower_components/Flot/jquery.flot.time.js
deleted file mode 100755
index 34c1d1212..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.flot.time.js
+++ /dev/null
@@ -1,432 +0,0 @@
-/* Pretty handling of time axes.
-
-Copyright (c) 2007-2014 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-Set axis.mode to "time" to enable. See the section "Time series data" in
-API.txt for details.
-
-*/
-
-(function($) {
-
- var options = {
- xaxis: {
- timezone: null, // "browser" for local to the client or timezone for timezone-js
- timeformat: null, // format string to use
- twelveHourClock: false, // 12 or 24 time in time mode
- monthNames: null // list of names of months
- }
- };
-
- // round to nearby lower multiple of base
-
- function floorInBase(n, base) {
- return base * Math.floor(n / base);
- }
-
- // Returns a string with the date d formatted according to fmt.
- // A subset of the Open Group's strftime format is supported.
-
- function formatDate(d, fmt, monthNames, dayNames) {
-
- if (typeof d.strftime == "function") {
- return d.strftime(fmt);
- }
-
- var leftPad = function(n, pad) {
- n = "" + n;
- pad = "" + (pad == null ? "0" : pad);
- return n.length == 1 ? pad + n : n;
- };
-
- var r = [];
- var escape = false;
- var hours = d.getHours();
- var isAM = hours < 12;
-
- if (monthNames == null) {
- monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
- }
-
- if (dayNames == null) {
- dayNames = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
- }
-
- var hours12;
-
- if (hours > 12) {
- hours12 = hours - 12;
- } else if (hours == 0) {
- hours12 = 12;
- } else {
- hours12 = hours;
- }
-
- for (var i = 0; i < fmt.length; ++i) {
-
- var c = fmt.charAt(i);
-
- if (escape) {
- switch (c) {
- case 'a': c = "" + dayNames[d.getDay()]; break;
- case 'b': c = "" + monthNames[d.getMonth()]; break;
- case 'd': c = leftPad(d.getDate()); break;
- case 'e': c = leftPad(d.getDate(), " "); break;
- case 'h': // For back-compat with 0.7; remove in 1.0
- case 'H': c = leftPad(hours); break;
- case 'I': c = leftPad(hours12); break;
- case 'l': c = leftPad(hours12, " "); break;
- case 'm': c = leftPad(d.getMonth() + 1); break;
- case 'M': c = leftPad(d.getMinutes()); break;
- // quarters not in Open Group's strftime specification
- case 'q':
- c = "" + (Math.floor(d.getMonth() / 3) + 1); break;
- case 'S': c = leftPad(d.getSeconds()); break;
- case 'y': c = leftPad(d.getFullYear() % 100); break;
- case 'Y': c = "" + d.getFullYear(); break;
- case 'p': c = (isAM) ? ("" + "am") : ("" + "pm"); break;
- case 'P': c = (isAM) ? ("" + "AM") : ("" + "PM"); break;
- case 'w': c = "" + d.getDay(); break;
- }
- r.push(c);
- escape = false;
- } else {
- if (c == "%") {
- escape = true;
- } else {
- r.push(c);
- }
- }
- }
-
- return r.join("");
- }
-
- // To have a consistent view of time-based data independent of which time
- // zone the client happens to be in we need a date-like object independent
- // of time zones. This is done through a wrapper that only calls the UTC
- // versions of the accessor methods.
-
- function makeUtcWrapper(d) {
-
- function addProxyMethod(sourceObj, sourceMethod, targetObj, targetMethod) {
- sourceObj[sourceMethod] = function() {
- return targetObj[targetMethod].apply(targetObj, arguments);
- };
- };
-
- var utc = {
- date: d
- };
-
- // support strftime, if found
-
- if (d.strftime != undefined) {
- addProxyMethod(utc, "strftime", d, "strftime");
- }
-
- addProxyMethod(utc, "getTime", d, "getTime");
- addProxyMethod(utc, "setTime", d, "setTime");
-
- var props = ["Date", "Day", "FullYear", "Hours", "Milliseconds", "Minutes", "Month", "Seconds"];
-
- for (var p = 0; p < props.length; p++) {
- addProxyMethod(utc, "get" + props[p], d, "getUTC" + props[p]);
- addProxyMethod(utc, "set" + props[p], d, "setUTC" + props[p]);
- }
-
- return utc;
- };
-
- // select time zone strategy. This returns a date-like object tied to the
- // desired timezone
-
- function dateGenerator(ts, opts) {
- if (opts.timezone == "browser") {
- return new Date(ts);
- } else if (!opts.timezone || opts.timezone == "utc") {
- return makeUtcWrapper(new Date(ts));
- } else if (typeof timezoneJS != "undefined" && typeof timezoneJS.Date != "undefined") {
- var d = new timezoneJS.Date();
- // timezone-js is fickle, so be sure to set the time zone before
- // setting the time.
- d.setTimezone(opts.timezone);
- d.setTime(ts);
- return d;
- } else {
- return makeUtcWrapper(new Date(ts));
- }
- }
-
- // map of app. size of time units in milliseconds
-
- var timeUnitSize = {
- "second": 1000,
- "minute": 60 * 1000,
- "hour": 60 * 60 * 1000,
- "day": 24 * 60 * 60 * 1000,
- "month": 30 * 24 * 60 * 60 * 1000,
- "quarter": 3 * 30 * 24 * 60 * 60 * 1000,
- "year": 365.2425 * 24 * 60 * 60 * 1000
- };
-
- // the allowed tick sizes, after 1 year we use
- // an integer algorithm
-
- var baseSpec = [
- [1, "second"], [2, "second"], [5, "second"], [10, "second"],
- [30, "second"],
- [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"],
- [30, "minute"],
- [1, "hour"], [2, "hour"], [4, "hour"],
- [8, "hour"], [12, "hour"],
- [1, "day"], [2, "day"], [3, "day"],
- [0.25, "month"], [0.5, "month"], [1, "month"],
- [2, "month"]
- ];
-
- // we don't know which variant(s) we'll need yet, but generating both is
- // cheap
-
- var specMonths = baseSpec.concat([[3, "month"], [6, "month"],
- [1, "year"]]);
- var specQuarters = baseSpec.concat([[1, "quarter"], [2, "quarter"],
- [1, "year"]]);
-
- function init(plot) {
- plot.hooks.processOptions.push(function (plot, options) {
- $.each(plot.getAxes(), function(axisName, axis) {
-
- var opts = axis.options;
-
- if (opts.mode == "time") {
- axis.tickGenerator = function(axis) {
-
- var ticks = [];
- var d = dateGenerator(axis.min, opts);
- var minSize = 0;
-
- // make quarter use a possibility if quarters are
- // mentioned in either of these options
-
- var spec = (opts.tickSize && opts.tickSize[1] ===
- "quarter") ||
- (opts.minTickSize && opts.minTickSize[1] ===
- "quarter") ? specQuarters : specMonths;
-
- if (opts.minTickSize != null) {
- if (typeof opts.tickSize == "number") {
- minSize = opts.tickSize;
- } else {
- minSize = opts.minTickSize[0] * timeUnitSize[opts.minTickSize[1]];
- }
- }
-
- for (var i = 0; i < spec.length - 1; ++i) {
- if (axis.delta < (spec[i][0] * timeUnitSize[spec[i][1]]
- + spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2
- && spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) {
- break;
- }
- }
-
- var size = spec[i][0];
- var unit = spec[i][1];
-
- // special-case the possibility of several years
-
- if (unit == "year") {
-
- // if given a minTickSize in years, just use it,
- // ensuring that it's an integer
-
- if (opts.minTickSize != null && opts.minTickSize[1] == "year") {
- size = Math.floor(opts.minTickSize[0]);
- } else {
-
- var magn = Math.pow(10, Math.floor(Math.log(axis.delta / timeUnitSize.year) / Math.LN10));
- var norm = (axis.delta / timeUnitSize.year) / magn;
-
- if (norm < 1.5) {
- size = 1;
- } else if (norm < 3) {
- size = 2;
- } else if (norm < 7.5) {
- size = 5;
- } else {
- size = 10;
- }
-
- size *= magn;
- }
-
- // minimum size for years is 1
-
- if (size < 1) {
- size = 1;
- }
- }
-
- axis.tickSize = opts.tickSize || [size, unit];
- var tickSize = axis.tickSize[0];
- unit = axis.tickSize[1];
-
- var step = tickSize * timeUnitSize[unit];
-
- if (unit == "second") {
- d.setSeconds(floorInBase(d.getSeconds(), tickSize));
- } else if (unit == "minute") {
- d.setMinutes(floorInBase(d.getMinutes(), tickSize));
- } else if (unit == "hour") {
- d.setHours(floorInBase(d.getHours(), tickSize));
- } else if (unit == "month") {
- d.setMonth(floorInBase(d.getMonth(), tickSize));
- } else if (unit == "quarter") {
- d.setMonth(3 * floorInBase(d.getMonth() / 3,
- tickSize));
- } else if (unit == "year") {
- d.setFullYear(floorInBase(d.getFullYear(), tickSize));
- }
-
- // reset smaller components
-
- d.setMilliseconds(0);
-
- if (step >= timeUnitSize.minute) {
- d.setSeconds(0);
- }
- if (step >= timeUnitSize.hour) {
- d.setMinutes(0);
- }
- if (step >= timeUnitSize.day) {
- d.setHours(0);
- }
- if (step >= timeUnitSize.day * 4) {
- d.setDate(1);
- }
- if (step >= timeUnitSize.month * 2) {
- d.setMonth(floorInBase(d.getMonth(), 3));
- }
- if (step >= timeUnitSize.quarter * 2) {
- d.setMonth(floorInBase(d.getMonth(), 6));
- }
- if (step >= timeUnitSize.year) {
- d.setMonth(0);
- }
-
- var carry = 0;
- var v = Number.NaN;
- var prev;
-
- do {
-
- prev = v;
- v = d.getTime();
- ticks.push(v);
-
- if (unit == "month" || unit == "quarter") {
- if (tickSize < 1) {
-
- // a bit complicated - we'll divide the
- // month/quarter up but we need to take
- // care of fractions so we don't end up in
- // the middle of a day
-
- d.setDate(1);
- var start = d.getTime();
- d.setMonth(d.getMonth() +
- (unit == "quarter" ? 3 : 1));
- var end = d.getTime();
- d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize);
- carry = d.getHours();
- d.setHours(0);
- } else {
- d.setMonth(d.getMonth() +
- tickSize * (unit == "quarter" ? 3 : 1));
- }
- } else if (unit == "year") {
- d.setFullYear(d.getFullYear() + tickSize);
- } else {
- d.setTime(v + step);
- }
- } while (v < axis.max && v != prev);
-
- return ticks;
- };
-
- axis.tickFormatter = function (v, axis) {
-
- var d = dateGenerator(v, axis.options);
-
- // first check global format
-
- if (opts.timeformat != null) {
- return formatDate(d, opts.timeformat, opts.monthNames, opts.dayNames);
- }
-
- // possibly use quarters if quarters are mentioned in
- // any of these places
-
- var useQuarters = (axis.options.tickSize &&
- axis.options.tickSize[1] == "quarter") ||
- (axis.options.minTickSize &&
- axis.options.minTickSize[1] == "quarter");
-
- var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]];
- var span = axis.max - axis.min;
- var suffix = (opts.twelveHourClock) ? " %p" : "";
- var hourCode = (opts.twelveHourClock) ? "%I" : "%H";
- var fmt;
-
- if (t < timeUnitSize.minute) {
- fmt = hourCode + ":%M:%S" + suffix;
- } else if (t < timeUnitSize.day) {
- if (span < 2 * timeUnitSize.day) {
- fmt = hourCode + ":%M" + suffix;
- } else {
- fmt = "%b %d " + hourCode + ":%M" + suffix;
- }
- } else if (t < timeUnitSize.month) {
- fmt = "%b %d";
- } else if ((useQuarters && t < timeUnitSize.quarter) ||
- (!useQuarters && t < timeUnitSize.year)) {
- if (span < timeUnitSize.year) {
- fmt = "%b";
- } else {
- fmt = "%b %Y";
- }
- } else if (useQuarters && t < timeUnitSize.year) {
- if (span < timeUnitSize.year) {
- fmt = "Q%q";
- } else {
- fmt = "Q%q %Y";
- }
- } else {
- fmt = "%Y";
- }
-
- var rt = formatDate(d, fmt, opts.monthNames, opts.dayNames);
-
- return rt;
- };
- }
- });
- });
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'time',
- version: '1.0'
- });
-
- // Time-axis support used to be in Flot core, which exposed the
- // formatDate function on the plot object. Various plugins depend
- // on the function, so we need to re-expose it here.
-
- $.plot.formatDate = formatDate;
- $.plot.dateGenerator = dateGenerator;
-
-})(jQuery);
diff --git a/front/lib/AdminLTE/bower_components/Flot/jquery.js b/front/lib/AdminLTE/bower_components/Flot/jquery.js
deleted file mode 100755
index 8c24ffc61..000000000
--- a/front/lib/AdminLTE/bower_components/Flot/jquery.js
+++ /dev/null
@@ -1,9472 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.8.3
- * http://jquery.com/
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- *
- * Copyright 2012 jQuery Foundation and other contributors
- * Released under the MIT license
- * http://jquery.org/license
- *
- * Date: Tue Nov 13 2012 08:20:33 GMT-0500 (Eastern Standard Time)
- */
-(function( window, undefined ) {
-var
- // A central reference to the root jQuery(document)
- rootjQuery,
-
- // The deferred used on DOM ready
- readyList,
-
- // Use the correct document accordingly with window argument (sandbox)
- document = window.document,
- location = window.location,
- navigator = window.navigator,
-
- // Map over jQuery in case of overwrite
- _jQuery = window.jQuery,
-
- // Map over the $ in case of overwrite
- _$ = window.$,
-
- // Save a reference to some core methods
- core_push = Array.prototype.push,
- core_slice = Array.prototype.slice,
- core_indexOf = Array.prototype.indexOf,
- core_toString = Object.prototype.toString,
- core_hasOwn = Object.prototype.hasOwnProperty,
- core_trim = String.prototype.trim,
-
- // Define a local copy of jQuery
- jQuery = function( selector, context ) {
- // The jQuery object is actually just the init constructor 'enhanced'
- return new jQuery.fn.init( selector, context, rootjQuery );
- },
-
- // Used for matching numbers
- core_pnum = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,
-
- // Used for detecting and trimming whitespace
- core_rnotwhite = /\S/,
- core_rspace = /\s+/,
-
- // Make sure we trim BOM and NBSP (here's looking at you, Safari 5.0 and IE)
- rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
-
- // A simple way to check for HTML strings
- // Prioritize #id over to avoid XSS via location.hash (#9521)
- rquickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
-
- // Match a standalone tag
- rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
-
- // JSON RegExp
- rvalidchars = /^[\],:{}\s]*$/,
- rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,
- rvalidescape = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
- rvalidtokens = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,
-
- // Matches dashed string for camelizing
- rmsPrefix = /^-ms-/,
- rdashAlpha = /-([\da-z])/gi,
-
- // Used by jQuery.camelCase as callback to replace()
- fcamelCase = function( all, letter ) {
- return ( letter + "" ).toUpperCase();
- },
-
- // The ready event handler and self cleanup method
- DOMContentLoaded = function() {
- if ( document.addEventListener ) {
- document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
- jQuery.ready();
- } else if ( document.readyState === "complete" ) {
- // we're here because readyState === "complete" in oldIE
- // which is good enough for us to call the dom ready!
- document.detachEvent( "onreadystatechange", DOMContentLoaded );
- jQuery.ready();
- }
- },
-
- // [[Class]] -> type pairs
- class2type = {};
-
-jQuery.fn = jQuery.prototype = {
- constructor: jQuery,
- init: function( selector, context, rootjQuery ) {
- var match, elem, ret, doc;
-
- // Handle $(""), $(null), $(undefined), $(false)
- if ( !selector ) {
- return this;
- }
-
- // Handle $(DOMElement)
- if ( selector.nodeType ) {
- this.context = this[0] = selector;
- this.length = 1;
- return this;
- }
-
- // Handle HTML strings
- if ( typeof selector === "string" ) {
- 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 = rquickExpr.exec( selector );
- }
-
- // Match html or make sure no context is specified for #id
- if ( match && (match[1] || !context) ) {
-
- // HANDLE: $(html) -> $(array)
- if ( match[1] ) {
- context = context instanceof jQuery ? context[0] : context;
- doc = ( context && context.nodeType ? context.ownerDocument || context : document );
-
- // scripts is true for back-compat
- selector = jQuery.parseHTML( match[1], doc, true );
- if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {
- this.attr.call( selector, context, true );
- }
-
- 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.8.3",
-
- // 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 core_slice.call( this );
- },
-
- // 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 = jQuery.merge( this.constructor(), 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 ) {
- // Add the callback
- jQuery.ready.promise().done( fn );
-
- return this;
- },
-
- eq: function( i ) {
- i = +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( core_slice.apply( this, arguments ),
- "slice", core_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: core_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 ) {
-
- // Abort if there are pending holds or we're already ready
- if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
- return;
- }
-
- // 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").off("ready");
- }
- },
-
- // 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";
- },
-
- isWindow: function( obj ) {
- return obj != null && obj == obj.window;
- },
-
- isNumeric: function( obj ) {
- return !isNaN( parseFloat(obj) ) && isFinite( obj );
- },
-
- type: function( obj ) {
- return obj == null ?
- String( obj ) :
- class2type[ core_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 &&
- !core_hasOwn.call(obj, "constructor") &&
- !core_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 || core_hasOwn.call( obj, key );
- },
-
- isEmptyObject: function( obj ) {
- var name;
- for ( name in obj ) {
- return false;
- }
- return true;
- },
-
- error: function( msg ) {
- throw new Error( msg );
- },
-
- // data: string of html
- // context (optional): If specified, the fragment will be created in this context, defaults to document
- // scripts (optional): If true, will include scripts passed in the html string
- parseHTML: function( data, context, scripts ) {
- var parsed;
- if ( !data || typeof data !== "string" ) {
- return null;
- }
- if ( typeof context === "boolean" ) {
- scripts = context;
- context = 0;
- }
- context = context || document;
-
- // Single tag
- if ( (parsed = rsingleTag.exec( data )) ) {
- return [ context.createElement( parsed[1] ) ];
- }
-
- parsed = jQuery.buildFragment( [ data ], context, scripts ? null : [] );
- return jQuery.merge( [],
- (parsed.cacheable ? jQuery.clone( parsed.fragment ) : parsed.fragment).childNodes );
- },
-
- parseJSON: function( data ) {
- if ( !data || typeof data !== "string") {
- 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;
- if ( !data || typeof data !== "string" ) {
- return null;
- }
- 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 && core_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.toLowerCase() === name.toLowerCase();
- },
-
- // args is for internal usage only
- each: function( obj, callback, args ) {
- var name,
- i = 0,
- length = obj.length,
- isObj = length === undefined || jQuery.isFunction( obj );
-
- if ( args ) {
- if ( isObj ) {
- for ( name in obj ) {
- if ( callback.apply( obj[ name ], args ) === false ) {
- break;
- }
- }
- } else {
- for ( ; i < length; ) {
- if ( callback.apply( obj[ i++ ], args ) === false ) {
- break;
- }
- }
- }
-
- // A special, fast, case for the most common use of each
- } else {
- if ( isObj ) {
- for ( name in obj ) {
- if ( callback.call( obj[ name ], name, obj[ name ] ) === false ) {
- break;
- }
- }
- } else {
- for ( ; i < length; ) {
- if ( callback.call( obj[ i ], i, obj[ i++ ] ) === false ) {
- break;
- }
- }
- }
- }
-
- return obj;
- },
-
- // Use native String.trim function wherever possible
- trim: core_trim && !core_trim.call("\uFEFF\xA0") ?
- function( text ) {
- return text == null ?
- "" :
- core_trim.call( text );
- } :
-
- // Otherwise use our own trimming functionality
- function( text ) {
- return text == null ?
- "" :
- ( text + "" ).replace( rtrim, "" );
- },
-
- // results is for internal usage only
- makeArray: function( arr, results ) {
- var type,
- ret = results || [];
-
- if ( arr != null ) {
- // The window, strings (and functions) also have 'length'
- // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
- type = jQuery.type( arr );
-
- if ( arr.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( arr ) ) {
- core_push.call( ret, arr );
- } else {
- jQuery.merge( ret, arr );
- }
- }
-
- return ret;
- },
-
- inArray: function( elem, arr, i ) {
- var len;
-
- if ( arr ) {
- if ( core_indexOf ) {
- return core_indexOf.call( arr, elem, i );
- }
-
- len = arr.length;
- i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0;
-
- for ( ; i < len; i++ ) {
- // Skip accessing in sparse arrays
- if ( i in arr && arr[ i ] === elem ) {
- return i;
- }
- }
- }
-
- return -1;
- },
-
- merge: function( first, second ) {
- var l = second.length,
- i = first.length,
- j = 0;
-
- if ( typeof l === "number" ) {
- for ( ; 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 retVal,
- ret = [],
- i = 0,
- length = elems.length;
- inv = !!inv;
-
- // Go through the array, only saving the items
- // that pass the validator function
- for ( ; 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 ) {
- var tmp, args, proxy;
-
- if ( typeof context === "string" ) {
- 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
- args = core_slice.call( arguments, 2 );
- proxy = function() {
- return fn.apply( context, args.concat( core_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 || jQuery.guid++;
-
- return proxy;
- },
-
- // Multifunctional method to get and set values of a collection
- // The value/s can optionally be executed if it's a function
- access: function( elems, fn, key, value, chainable, emptyGet, pass ) {
- var exec,
- bulk = key == null,
- i = 0,
- length = elems.length;
-
- // Sets many values
- if ( key && typeof key === "object" ) {
- for ( i in key ) {
- jQuery.access( elems, fn, i, key[i], 1, emptyGet, value );
- }
- chainable = 1;
-
- // Sets one value
- } else if ( value !== undefined ) {
- // Optionally, function values get executed if exec is true
- exec = pass === undefined && jQuery.isFunction( value );
-
- if ( bulk ) {
- // Bulk operations only iterate when executing function values
- if ( exec ) {
- exec = fn;
- fn = function( elem, key, value ) {
- return exec.call( jQuery( elem ), value );
- };
-
- // Otherwise they run against the entire set
- } else {
- fn.call( elems, value );
- fn = null;
- }
- }
-
- if ( fn ) {
- for (; i < length; i++ ) {
- fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
- }
- }
-
- chainable = 1;
- }
-
- return chainable ?
- elems :
-
- // Gets
- bulk ?
- fn.call( elems ) :
- length ? fn( elems[0], key ) : emptyGet;
- },
-
- now: function() {
- return ( new Date() ).getTime();
- }
-});
-
-jQuery.ready.promise = function( obj ) {
- if ( !readyList ) {
-
- readyList = jQuery.Deferred();
-
- // Catch cases where $(document).ready() is called after the browser event has already occurred.
- // we once tried to use readyState "interactive" here, but it caused issues like the one
- // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15
- if ( document.readyState === "complete" ) {
- // Handle it asynchronously to allow scripts the opportunity to delay ready
- setTimeout( jQuery.ready, 1 );
-
- // Standards-based browsers support DOMContentLoaded
- } else 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 {
- // 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 top = false;
-
- try {
- top = window.frameElement == null && document.documentElement;
- } catch(e) {}
-
- if ( top && top.doScroll ) {
- (function doScrollCheck() {
- if ( !jQuery.isReady ) {
-
- try {
- // Use the trick by Diego Perini
- // http://javascript.nwbox.com/IEContentLoaded/
- top.doScroll("left");
- } catch(e) {
- return setTimeout( doScrollCheck, 50 );
- }
-
- // and execute any waiting functions
- jQuery.ready();
- }
- })();
- }
- }
- }
- return readyList.promise( obj );
-};
-
-// Populate the class2type map
-jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
- class2type[ "[object " + name + "]" ] = name.toLowerCase();
-});
-
-// All jQuery objects should point back to these
-rootjQuery = jQuery(document);
-// String to Object options format cache
-var optionsCache = {};
-
-// Convert String-formatted options into Object-formatted ones and store in cache
-function createOptions( options ) {
- var object = optionsCache[ options ] = {};
- jQuery.each( options.split( core_rspace ), function( _, flag ) {
- object[ flag ] = true;
- });
- return object;
-}
-
-/*
- * Create a callback list using the following parameters:
- *
- * options: an optional list of space-separated options that will change how
- * the callback list behaves or a more traditional option object
- *
- * By default a callback list will act like an event callback list and can be
- * "fired" multiple times.
- *
- * Possible options:
- *
- * once: will ensure the callback list can only be fired once (like a Deferred)
- *
- * memory: will keep track of previous values and will call any callback added
- * after the list has been fired right away with the latest "memorized"
- * values (like a Deferred)
- *
- * unique: will ensure a callback can only be added once (no duplicate in the list)
- *
- * stopOnFalse: interrupt callings when a callback returns false
- *
- */
-jQuery.Callbacks = function( options ) {
-
- // Convert options from String-formatted to Object-formatted if needed
- // (we check in cache first)
- options = typeof options === "string" ?
- ( optionsCache[ options ] || createOptions( options ) ) :
- jQuery.extend( {}, options );
-
- var // Last fire value (for non-forgettable lists)
- memory,
- // Flag to know if list was already fired
- fired,
- // Flag to know if list is currently firing
- firing,
- // First callback to fire (used internally by add and fireWith)
- firingStart,
- // End of the loop when firing
- firingLength,
- // Index of currently firing callback (modified by remove if needed)
- firingIndex,
- // Actual callback list
- list = [],
- // Stack of fire calls for repeatable lists
- stack = !options.once && [],
- // Fire callbacks
- fire = function( data ) {
- memory = options.memory && data;
- fired = true;
- firingIndex = firingStart || 0;
- firingStart = 0;
- firingLength = list.length;
- firing = true;
- for ( ; list && firingIndex < firingLength; firingIndex++ ) {
- if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {
- memory = false; // To prevent further calls using add
- break;
- }
- }
- firing = false;
- if ( list ) {
- if ( stack ) {
- if ( stack.length ) {
- fire( stack.shift() );
- }
- } else if ( memory ) {
- list = [];
- } else {
- self.disable();
- }
- }
- },
- // Actual Callbacks object
- self = {
- // Add a callback or a collection of callbacks to the list
- add: function() {
- if ( list ) {
- // First, we save the current length
- var start = list.length;
- (function add( args ) {
- jQuery.each( args, function( _, arg ) {
- var type = jQuery.type( arg );
- if ( type === "function" ) {
- if ( !options.unique || !self.has( arg ) ) {
- list.push( arg );
- }
- } else if ( arg && arg.length && type !== "string" ) {
- // Inspect recursively
- add( arg );
- }
- });
- })( arguments );
- // Do we need to add the callbacks to the
- // current firing batch?
- if ( firing ) {
- firingLength = list.length;
- // With memory, if we're not firing then
- // we should call right away
- } else if ( memory ) {
- firingStart = start;
- fire( memory );
- }
- }
- return this;
- },
- // Remove a callback from the list
- remove: function() {
- if ( list ) {
- jQuery.each( arguments, function( _, arg ) {
- var index;
- while( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
- list.splice( index, 1 );
- // Handle firing indexes
- if ( firing ) {
- if ( index <= firingLength ) {
- firingLength--;
- }
- if ( index <= firingIndex ) {
- firingIndex--;
- }
- }
- }
- });
- }
- return this;
- },
- // Control if a given callback is in the list
- has: function( fn ) {
- return jQuery.inArray( fn, list ) > -1;
- },
- // Remove all callbacks from the list
- empty: function() {
- list = [];
- return this;
- },
- // Have the list do nothing anymore
- disable: function() {
- list = stack = memory = undefined;
- return this;
- },
- // Is it disabled?
- disabled: function() {
- return !list;
- },
- // Lock the list in its current state
- lock: function() {
- stack = undefined;
- if ( !memory ) {
- self.disable();
- }
- return this;
- },
- // Is it locked?
- locked: function() {
- return !stack;
- },
- // Call all callbacks with the given context and arguments
- fireWith: function( context, args ) {
- args = args || [];
- args = [ context, args.slice ? args.slice() : args ];
- if ( list && ( !fired || stack ) ) {
- if ( firing ) {
- stack.push( args );
- } else {
- fire( args );
- }
- }
- return this;
- },
- // Call all the callbacks with the given arguments
- fire: function() {
- self.fireWith( this, arguments );
- return this;
- },
- // To know if the callbacks have already been called at least once
- fired: function() {
- return !!fired;
- }
- };
-
- return self;
-};
-jQuery.extend({
-
- Deferred: function( func ) {
- var tuples = [
- // action, add listener, listener list, final state
- [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],
- [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],
- [ "notify", "progress", jQuery.Callbacks("memory") ]
- ],
- state = "pending",
- promise = {
- state: function() {
- return state;
- },
- always: function() {
- deferred.done( arguments ).fail( arguments );
- return this;
- },
- then: function( /* fnDone, fnFail, fnProgress */ ) {
- var fns = arguments;
- return jQuery.Deferred(function( newDefer ) {
- jQuery.each( tuples, function( i, tuple ) {
- var action = tuple[ 0 ],
- fn = fns[ i ];
- // deferred[ done | fail | progress ] for forwarding actions to newDefer
- deferred[ tuple[1] ]( jQuery.isFunction( fn ) ?
- function() {
- var returned = fn.apply( this, arguments );
- if ( returned && jQuery.isFunction( returned.promise ) ) {
- returned.promise()
- .done( newDefer.resolve )
- .fail( newDefer.reject )
- .progress( newDefer.notify );
- } else {
- newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] );
- }
- } :
- newDefer[ action ]
- );
- });
- fns = null;
- }).promise();
- },
- // Get a promise for this deferred
- // If obj is provided, the promise aspect is added to the object
- promise: function( obj ) {
- return obj != null ? jQuery.extend( obj, promise ) : promise;
- }
- },
- deferred = {};
-
- // Keep pipe for back-compat
- promise.pipe = promise.then;
-
- // Add list-specific methods
- jQuery.each( tuples, function( i, tuple ) {
- var list = tuple[ 2 ],
- stateString = tuple[ 3 ];
-
- // promise[ done | fail | progress ] = list.add
- promise[ tuple[1] ] = list.add;
-
- // Handle state
- if ( stateString ) {
- list.add(function() {
- // state = [ resolved | rejected ]
- state = stateString;
-
- // [ reject_list | resolve_list ].disable; progress_list.lock
- }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );
- }
-
- // deferred[ resolve | reject | notify ] = list.fire
- deferred[ tuple[0] ] = list.fire;
- deferred[ tuple[0] + "With" ] = list.fireWith;
- });
-
- // Make the deferred a promise
- promise.promise( deferred );
-
- // Call given func if any
- if ( func ) {
- func.call( deferred, deferred );
- }
-
- // All done!
- return deferred;
- },
-
- // Deferred helper
- when: function( subordinate /* , ..., subordinateN */ ) {
- var i = 0,
- resolveValues = core_slice.call( arguments ),
- length = resolveValues.length,
-
- // the count of uncompleted subordinates
- remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,
-
- // the master Deferred. If resolveValues consist of only a single Deferred, just use that.
- deferred = remaining === 1 ? subordinate : jQuery.Deferred(),
-
- // Update function for both resolve and progress values
- updateFunc = function( i, contexts, values ) {
- return function( value ) {
- contexts[ i ] = this;
- values[ i ] = arguments.length > 1 ? core_slice.call( arguments ) : value;
- if( values === progressValues ) {
- deferred.notifyWith( contexts, values );
- } else if ( !( --remaining ) ) {
- deferred.resolveWith( contexts, values );
- }
- };
- },
-
- progressValues, progressContexts, resolveContexts;
-
- // add listeners to Deferred subordinates; treat others as resolved
- if ( length > 1 ) {
- progressValues = new Array( length );
- progressContexts = new Array( length );
- resolveContexts = new Array( length );
- for ( ; i < length; i++ ) {
- if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {
- resolveValues[ i ].promise()
- .done( updateFunc( i, resolveContexts, resolveValues ) )
- .fail( deferred.reject )
- .progress( updateFunc( i, progressContexts, progressValues ) );
- } else {
- --remaining;
- }
- }
- }
-
- // if we're not waiting on anything, resolve the master
- if ( !remaining ) {
- deferred.resolveWith( resolveContexts, resolveValues );
- }
-
- return deferred.promise();
- }
-});
-jQuery.support = (function() {
-
- var support,
- all,
- a,
- select,
- opt,
- input,
- fragment,
- eventName,
- i,
- isSupported,
- clickFn,
- div = document.createElement("div");
-
- // Setup
- div.setAttribute( "className", "t" );
- div.innerHTML = " a ";
-
- // Support tests won't run in some limited or non-browser environments
- all = div.getElementsByTagName("*");
- a = div.getElementsByTagName("a")[ 0 ];
- if ( !all || !a || !all.length ) {
- return {};
- }
-
- // First batch of tests
- select = document.createElement("select");
- opt = select.appendChild( document.createElement("option") );
- input = div.getElementsByTagName("input")[ 0 ];
-
- a.style.cssText = "top:1px;float:left;opacity:.5";
- 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.5/.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",
-
- // Tests for enctype support on a form (#6743)
- enctype: !!document.createElement("form").enctype,
-
- // Makes sure cloning an html5 element does not cause problems
- // Where outerHTML is undefined, this still works
- html5Clone: document.createElement("nav").cloneNode( true ).outerHTML !== "<:nav>",
-
- // jQuery.support.boxModel DEPRECATED in 1.8 since we don't support Quirks Mode
- boxModel: ( document.compatMode === "CSS1Compat" ),
-
- // Will be defined later
- submitBubbles: true,
- changeBubbles: true,
- focusinBubbles: false,
- deleteExpando: true,
- noCloneEvent: true,
- inlineBlockNeedsLayout: false,
- shrinkWrapBlocks: false,
- reliableMarginRight: true,
- boxSizingReliable: true,
- pixelPosition: false
- };
-
- // 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", clickFn = function() {
- // Cloning a node shouldn't copy over any
- // bound event handlers (IE does this)
- support.noCloneEvent = false;
- });
- div.cloneNode( true ).fireEvent("onclick");
- div.detachEvent( "onclick", clickFn );
- }
-
- // Check if a radio maintains its 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" );
-
- // #11217 - WebKit loses check when the name is after the checked attribute
- input.setAttribute( "name", "t" );
-
- div.appendChild( input );
- fragment = document.createDocumentFragment();
- fragment.appendChild( div.lastChild );
-
- // WebKit doesn't clone checked state correctly in fragments
- support.checkClone = fragment.cloneNode( true ).cloneNode( true ).lastChild.checked;
-
- // Check if a disconnected checkbox will retain its checked
- // value of true after appended to the DOM (IE6/7)
- support.appendChecked = input.checked;
-
- fragment.removeChild( input );
- fragment.appendChild( div );
-
- // Technique from Juriy Zaytsev
- // http://perfectionkills.com/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: true,
- change: true,
- focusin: true
- }) {
- eventName = "on" + i;
- isSupported = ( eventName in div );
- if ( !isSupported ) {
- div.setAttribute( eventName, "return;" );
- isSupported = ( typeof div[ eventName ] === "function" );
- }
- support[ i + "Bubbles" ] = isSupported;
- }
- }
-
- // Run tests that need a body at doc ready
- jQuery(function() {
- var container, div, tds, marginDiv,
- divReset = "padding:0;margin:0;border:0;display:block;overflow:hidden;",
- body = document.getElementsByTagName("body")[0];
-
- if ( !body ) {
- // Return for frameset docs that don't have a body
- return;
- }
-
- container = document.createElement("div");
- container.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";
- body.insertBefore( container, body.firstChild );
-
- // Construct the test element
- div = document.createElement("div");
- container.appendChild( div );
-
- // 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)
- div.innerHTML = "";
- tds = div.getElementsByTagName("td");
- tds[ 0 ].style.cssText = "padding:0;margin:0;border:0;display:none";
- 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 );
-
- // Check box-sizing and margin behavior
- div.innerHTML = "";
- div.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";
- support.boxSizing = ( div.offsetWidth === 4 );
- support.doesNotIncludeMarginInBodyOffset = ( body.offsetTop !== 1 );
-
- // NOTE: To any future maintainer, we've window.getComputedStyle
- // because jsdom on node.js will break without it.
- if ( window.getComputedStyle ) {
- support.pixelPosition = ( window.getComputedStyle( div, null ) || {} ).top !== "1%";
- support.boxSizingReliable = ( window.getComputedStyle( div, null ) || { width: "4px" } ).width === "4px";
-
- // 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
- marginDiv = document.createElement("div");
- marginDiv.style.cssText = div.style.cssText = divReset;
- marginDiv.style.marginRight = marginDiv.style.width = "0";
- div.style.width = "1px";
- div.appendChild( marginDiv );
- support.reliableMarginRight =
- !parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} ).marginRight );
- }
-
- if ( typeof div.style.zoom !== "undefined" ) {
- // 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.innerHTML = "";
- div.style.cssText = divReset + "width:1px;padding:1px;display:inline;zoom:1";
- support.inlineBlockNeedsLayout = ( div.offsetWidth === 3 );
-
- // Check if elements with layout shrink-wrap their children
- // (IE 6 does this)
- div.style.display = "block";
- div.style.overflow = "visible";
- div.innerHTML = "
";
- div.firstChild.style.width = "5px";
- support.shrinkWrapBlocks = ( div.offsetWidth !== 3 );
-
- container.style.zoom = 1;
- }
-
- // Null elements to avoid leaks in IE
- body.removeChild( container );
- container = div = tds = marginDiv = null;
- });
-
- // Null elements to avoid leaks in IE
- fragment.removeChild( div );
- all = a = select = opt = input = fragment = div = null;
-
- return support;
-})();
-var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
- rmultiDash = /([A-Z])/g;
-
-jQuery.extend({
- cache: {},
-
- deletedIds: [],
-
- // Remove at next major release (1.9/2.0)
- 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[ internalKey ] : elem[ internalKey ] && internalKey;
-
- // 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 || !cache[id] || (!pvt && !cache[id].data)) && 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[ internalKey ] = id = jQuery.deletedIds.pop() || jQuery.guid++;
- } else {
- id = internalKey;
- }
- }
-
- if ( !cache[ id ] ) {
- cache[ id ] = {};
-
- // 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 ] = jQuery.extend( cache[ id ], name );
- } else {
- cache[ id ].data = jQuery.extend( cache[ id ].data, name );
- }
- }
-
- thisCache = cache[ id ];
-
- // jQuery data() is stored in a separate object inside the object's internal data
- // cache in order to avoid key collisions between internal data and user-defined
- // data.
- if ( !pvt ) {
- if ( !thisCache.data ) {
- thisCache.data = {};
- }
-
- thisCache = thisCache.data;
- }
-
- if ( data !== undefined ) {
- thisCache[ jQuery.camelCase( name ) ] = data;
- }
-
- // 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, i, l,
-
- isNode = elem.nodeType,
-
- // See jQuery.data for more information
- cache = isNode ? jQuery.cache : elem,
- 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 ] : cache[ id ].data;
-
- if ( thisCache ) {
-
- // Support array or space separated string names for data keys
- if ( !jQuery.isArray( name ) ) {
-
- // try the string as a key before any manipulation
- if ( name in thisCache ) {
- name = [ name ];
- } else {
-
- // split the camel cased version by spaces unless a key with the spaces exists
- name = jQuery.camelCase( name );
- if ( name in thisCache ) {
- name = [ name ];
- } else {
- name = name.split(" ");
- }
- }
- }
-
- for ( i = 0, l = name.length; i < l; i++ ) {
- delete thisCache[ name[i] ];
- }
-
- // If there is no data left in the cache, we want to continue
- // and let the cache object itself get destroyed
- if ( !( pvt ? isEmptyDataObject : jQuery.isEmptyObject )( thisCache ) ) {
- return;
- }
- }
- }
-
- // See jQuery.data for more information
- if ( !pvt ) {
- delete cache[ id ].data;
-
- // Don't destroy the parent cache unless the internal data object
- // had been the only thing left in it
- if ( !isEmptyDataObject( cache[ id ] ) ) {
- return;
- }
- }
-
- // Destroy the cache
- if ( isNode ) {
- jQuery.cleanData( [ elem ], true );
-
- // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080)
- } else if ( jQuery.support.deleteExpando || cache != cache.window ) {
- delete cache[ id ];
-
- // When all else fails, null
- } else {
- cache[ id ] = 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 ) {
- var noData = elem.nodeName && jQuery.noData[ elem.nodeName.toLowerCase() ];
-
- // nodes accept data unless otherwise specified; rejection can be conditional
- return !noData || noData !== true && elem.getAttribute("classid") === noData;
- }
-});
-
-jQuery.fn.extend({
- data: function( key, value ) {
- var parts, part, attr, name, l,
- elem = this[0],
- i = 0,
- data = null;
-
- // Gets all values
- if ( key === undefined ) {
- if ( this.length ) {
- data = jQuery.data( elem );
-
- if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) {
- attr = elem.attributes;
- for ( l = attr.length; i < l; i++ ) {
- name = attr[i].name;
-
- if ( !name.indexOf( "data-" ) ) {
- name = jQuery.camelCase( name.substring(5) );
-
- dataAttr( elem, name, data[ name ] );
- }
- }
- jQuery._data( elem, "parsedAttrs", true );
- }
- }
-
- return data;
- }
-
- // Sets multiple values
- if ( typeof key === "object" ) {
- return this.each(function() {
- jQuery.data( this, key );
- });
- }
-
- parts = key.split( ".", 2 );
- parts[1] = parts[1] ? "." + parts[1] : "";
- part = parts[1] + "!";
-
- return jQuery.access( this, function( value ) {
-
- if ( value === undefined ) {
- data = this.triggerHandler( "getData" + part, [ parts[0] ] );
-
- // Try to fetch any internally stored data first
- if ( data === undefined && elem ) {
- data = jQuery.data( elem, key );
- data = dataAttr( elem, key, data );
- }
-
- return data === undefined && parts[1] ?
- this.data( parts[0] ) :
- data;
- }
-
- parts[1] = value;
- this.each(function() {
- var self = jQuery( this );
-
- self.triggerHandler( "setData" + part, parts );
- jQuery.data( this, key, value );
- self.triggerHandler( "changeData" + part, parts );
- });
- }, null, value, arguments.length > 1, null, false );
- },
-
- 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 :
- // Only convert to a number if it doesn't change the string
- +data + "" === data ? +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;
-}
-
-// checks a cache object for emptiness
-function isEmptyDataObject( obj ) {
- var name;
- for ( name in obj ) {
-
- // if the public data object is empty, the private is still empty
- if ( name === "data" && jQuery.isEmptyObject( obj[name] ) ) {
- continue;
- }
- if ( name !== "toJSON" ) {
- return false;
- }
- }
-
- return true;
-}
-jQuery.extend({
- queue: function( elem, type, data ) {
- var queue;
-
- if ( elem ) {
- type = ( type || "fx" ) + "queue";
- queue = jQuery._data( elem, type );
-
- // Speed up dequeue by getting out quickly if this is just a lookup
- if ( data ) {
- if ( !queue || jQuery.isArray(data) ) {
- queue = jQuery._data( elem, type, jQuery.makeArray(data) );
- } else {
- queue.push( data );
- }
- }
- return queue || [];
- }
- },
-
- dequeue: function( elem, type ) {
- type = type || "fx";
-
- var queue = jQuery.queue( elem, type ),
- startLength = queue.length,
- fn = queue.shift(),
- hooks = jQuery._queueHooks( elem, type ),
- next = function() {
- jQuery.dequeue( elem, type );
- };
-
- // If the fx queue is dequeued, always remove the progress sentinel
- if ( fn === "inprogress" ) {
- fn = queue.shift();
- startLength--;
- }
-
- if ( fn ) {
-
- // Add a progress sentinel to prevent the fx queue from being
- // automatically dequeued
- if ( type === "fx" ) {
- queue.unshift( "inprogress" );
- }
-
- // clear up the last queue stop function
- delete hooks.stop;
- fn.call( elem, next, hooks );
- }
-
- if ( !startLength && hooks ) {
- hooks.empty.fire();
- }
- },
-
- // not intended for public consumption - generates a queueHooks object, or returns the current one
- _queueHooks: function( elem, type ) {
- var key = type + "queueHooks";
- return jQuery._data( elem, key ) || jQuery._data( elem, key, {
- empty: jQuery.Callbacks("once memory").add(function() {
- jQuery.removeData( elem, type + "queue", true );
- jQuery.removeData( elem, key, true );
- })
- });
- }
-});
-
-jQuery.fn.extend({
- queue: function( type, data ) {
- var setter = 2;
-
- if ( typeof type !== "string" ) {
- data = type;
- type = "fx";
- setter--;
- }
-
- if ( arguments.length < setter ) {
- return jQuery.queue( this[0], type );
- }
-
- return data === undefined ?
- this :
- this.each(function() {
- var queue = jQuery.queue( this, type, data );
-
- // ensure a hooks for this queue
- jQuery._queueHooks( this, type );
-
- 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( next, hooks ) {
- var timeout = setTimeout( next, time );
- hooks.stop = function() {
- clearTimeout( timeout );
- };
- });
- },
- 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, obj ) {
- var tmp,
- count = 1,
- defer = jQuery.Deferred(),
- elements = this,
- i = this.length,
- resolve = function() {
- if ( !( --count ) ) {
- defer.resolveWith( elements, [ elements ] );
- }
- };
-
- if ( typeof type !== "string" ) {
- obj = type;
- type = undefined;
- }
- type = type || "fx";
-
- while( i-- ) {
- tmp = jQuery._data( elements[ i ], type + "queueHooks" );
- if ( tmp && tmp.empty ) {
- count++;
- tmp.empty.add( resolve );
- }
- }
- resolve();
- return defer.promise( obj );
- }
-});
-var nodeHook, boolHook, fixSpecified,
- rclass = /[\t\r\n]/g,
- 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,
- getSetAttribute = jQuery.support.getSetAttribute;
-
-jQuery.fn.extend({
- attr: function( name, value ) {
- return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 );
- },
-
- removeAttr: function( name ) {
- return this.each(function() {
- jQuery.removeAttr( this, name );
- });
- },
-
- prop: function( name, value ) {
- return jQuery.access( this, jQuery.prop, name, value, arguments.length > 1 );
- },
-
- 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( core_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 ] + " " ) < 0 ) {
- setClass += classNames[ c ] + " ";
- }
- }
- elem.className = jQuery.trim( setClass );
- }
- }
- }
- }
-
- return this;
- },
-
- removeClass: function( value ) {
- var removes, className, elem, c, cl, i, l;
-
- 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 ) {
- removes = ( value || "" ).split( core_rspace );
-
- for ( i = 0, l = this.length; i < l; i++ ) {
- elem = this[ i ];
- if ( elem.nodeType === 1 && elem.className ) {
-
- className = (" " + elem.className + " ").replace( rclass, " " );
-
- // loop over each item in the removal list
- for ( c = 0, cl = removes.length; c < cl; c++ ) {
- // Remove until there is nothing to remove,
- while ( className.indexOf(" " + removes[ c ] + " ") >= 0 ) {
- className = className.replace( " " + removes[ c ] + " " , " " );
- }
- }
- elem.className = value ? jQuery.trim( 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( core_rspace );
-
- while ( (className = classNames[ i++ ]) ) {
- // check each className given, space separated 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 + " ",
- i = 0,
- l = this.length;
- for ( ; i < l; i++ ) {
- if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
- return true;
- }
- }
-
- return false;
- },
-
- val: function( value ) {
- var hooks, ret, isFunction,
- elem = this[0];
-
- if ( !arguments.length ) {
- if ( elem ) {
- hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
-
- 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;
- }
-
- isFunction = jQuery.isFunction( value );
-
- return this.each(function( i ) {
- var val,
- self = jQuery(this);
-
- 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.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
-
- // 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, option,
- options = elem.options,
- index = elem.selectedIndex,
- one = elem.type === "select-one" || index < 0,
- values = one ? null : [],
- max = one ? index + 1 : options.length,
- i = index < 0 ?
- max :
- one ? index : 0;
-
- // Loop through all the selected options
- for ( ; i < max; i++ ) {
- option = options[ i ];
-
- // oldIE doesn't update selected after form reset (#2551)
- if ( ( option.selected || i === index ) &&
- // Don't return options that are disabled or in a disabled optgroup
- ( 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 );
- }
- }
-
- 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;
- }
- }
- },
-
- // Unused in 1.8, left in so attrFn-stabbers won't die; remove in 1.9
- attrFn: {},
-
- attr: function( elem, name, value, pass ) {
- var ret, hooks, notxml,
- nType = elem.nodeType;
-
- // don't get/set attributes on text, comment and attribute nodes
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
- return;
- }
-
- if ( pass && jQuery.isFunction( jQuery.fn[ name ] ) ) {
- return jQuery( elem )[ name ]( value );
- }
-
- // Fallback to prop when attributes are not supported
- if ( typeof elem.getAttribute === "undefined" ) {
- return jQuery.prop( elem, name, value );
- }
-
- notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
-
- // All attributes are lowercase
- // Grab necessary hook if one is defined
- if ( notxml ) {
- name = name.toLowerCase();
- hooks = jQuery.attrHooks[ name ] || ( rboolean.test( name ) ? boolHook : nodeHook );
- }
-
- if ( value !== undefined ) {
-
- if ( value === null ) {
- jQuery.removeAttr( elem, name );
- return;
-
- } 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, value ) {
- var propName, attrNames, name, isBool,
- i = 0;
-
- if ( value && elem.nodeType === 1 ) {
-
- attrNames = value.split( core_rspace );
-
- for ( ; i < attrNames.length; i++ ) {
- name = attrNames[ i ];
-
- if ( name ) {
- propName = jQuery.propFix[ name ] || name;
- isBool = rboolean.test( name );
-
- // See #9699 for explanation of this approach (setting first, then removal)
- // Do not do this for boolean attributes (see #10870)
- if ( !isBool ) {
- jQuery.attr( elem, name, "" );
- }
- elem.removeAttribute( getSetAttribute ? name : propName );
-
- // Set corresponding property to false for boolean attributes
- if ( isBool && propName 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 ret, hooks, notxml,
- nType = elem.nodeType;
-
- // don't get/set properties on text, comment and attribute nodes
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
- return;
- }
-
- 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;
- }
- }
- }
-});
-
-// 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,
- property = jQuery.prop( elem, name );
- return property === true || typeof property !== "boolean" && ( 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 ( !getSetAttribute ) {
-
- fixSpecified = {
- name: true,
- id: true,
- coords: true
- };
-
- // 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 ret && ( fixSpecified[ name ] ? ret.value !== "" : ret.specified ) ?
- ret.value :
- 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.value = 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;
- }
- }
- });
- });
-
- // Set contenteditable to false on removals(#10429)
- // Setting to empty string throws an error as an invalid value
- jQuery.attrHooks.contenteditable = {
- get: nodeHook.get,
- set: function( elem, value, name ) {
- if ( value === "" ) {
- value = "false";
- }
- nodeHook.set( elem, value, name );
- }
- };
-}
-
-
-// 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;
- }
- });
-}
-
-// IE6/7 call enctype encoding
-if ( !jQuery.support.enctype ) {
- jQuery.propFix.enctype = "encoding";
-}
-
-// 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 rformElems = /^(?:textarea|input|select)$/i,
- rtypenamespace = /^([^\.]*|)(?:\.(.+)|)$/,
- rhoverHack = /(?:^|\s)hover(\.\S+|)\b/,
- rkeyEvent = /^key/,
- rmouseEvent = /^(?:mouse|contextmenu)|click/,
- rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
- hoverHack = function( events ) {
- return jQuery.event.special.hover ? events : events.replace( rhoverHack, "mouseenter$1 mouseleave$1" );
- };
-
-/*
- * Helper functions for managing events -- not part of the public interface.
- * Props to Dean Edwards' addEvent library for many of the ideas.
- */
-jQuery.event = {
-
- add: function( elem, types, handler, data, selector ) {
-
- var elemData, eventHandle, events,
- t, tns, type, namespaces, handleObj,
- handleObjIn, handlers, special;
-
- // Don't attach events to noData or text/comment nodes (allow plain objects tho)
- if ( elem.nodeType === 3 || elem.nodeType === 8 || !types || !handler || !(elemData = jQuery._data( elem )) ) {
- return;
- }
-
- // Caller can pass in an object of custom data in lieu of the handler
- if ( handler.handler ) {
- handleObjIn = handler;
- handler = handleObjIn.handler;
- selector = handleObjIn.selector;
- }
-
- // Make sure that the handler has a unique ID, used to find/remove it later
- if ( !handler.guid ) {
- handler.guid = jQuery.guid++;
- }
-
- // Init the element's event structure and main handler, if this is the first
- events = elemData.events;
- if ( !events ) {
- elemData.events = events = {};
- }
- eventHandle = elemData.handle;
- 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.dispatch.apply( eventHandle.elem, arguments ) :
- undefined;
- };
- // Add elem as a property of the handle fn to prevent a memory leak with IE non-native events
- eventHandle.elem = elem;
- }
-
- // Handle multiple events separated by a space
- // jQuery(...).bind("mouseover mouseout", fn);
- types = jQuery.trim( hoverHack(types) ).split( " " );
- for ( t = 0; t < types.length; t++ ) {
-
- tns = rtypenamespace.exec( types[t] ) || [];
- type = tns[1];
- namespaces = ( tns[2] || "" ).split( "." ).sort();
-
- // If event changes its type, use the special event handlers for the changed type
- special = jQuery.event.special[ type ] || {};
-
- // If selector defined, determine special event api type, otherwise given type
- type = ( selector ? special.delegateType : special.bindType ) || type;
-
- // Update special based on newly reset type
- special = jQuery.event.special[ type ] || {};
-
- // handleObj is passed to all event handlers
- handleObj = jQuery.extend({
- type: type,
- origType: tns[1],
- data: data,
- handler: handler,
- guid: handler.guid,
- selector: selector,
- needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
- namespace: namespaces.join(".")
- }, handleObjIn );
-
- // Init the event handler queue if we're the first
- handlers = events[ type ];
- if ( !handlers ) {
- handlers = events[ type ] = [];
- handlers.delegateCount = 0;
-
- // 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 to the element's handler list, delegates in front
- if ( selector ) {
- handlers.splice( handlers.delegateCount++, 0, handleObj );
- } else {
- handlers.push( handleObj );
- }
-
- // Keep track of which events have ever 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, selector, mappedTypes ) {
-
- var t, tns, type, origType, namespaces, origCount,
- j, events, special, eventType, handleObj,
- elemData = jQuery.hasData( elem ) && jQuery._data( elem );
-
- if ( !elemData || !(events = elemData.events) ) {
- return;
- }
-
- // Once for each type.namespace in types; type may be omitted
- types = jQuery.trim( hoverHack( types || "" ) ).split(" ");
- for ( t = 0; t < types.length; t++ ) {
- tns = rtypenamespace.exec( types[t] ) || [];
- type = origType = tns[1];
- namespaces = tns[2];
-
- // Unbind all events (on this namespace, if provided) for the element
- if ( !type ) {
- for ( type in events ) {
- jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
- }
- continue;
- }
-
- special = jQuery.event.special[ type ] || {};
- type = ( selector? special.delegateType : special.bindType ) || type;
- eventType = events[ type ] || [];
- origCount = eventType.length;
- namespaces = namespaces ? new RegExp("(^|\\.)" + namespaces.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
-
- // Remove matching events
- for ( j = 0; j < eventType.length; j++ ) {
- handleObj = eventType[ j ];
-
- if ( ( mappedTypes || origType === handleObj.origType ) &&
- ( !handler || handler.guid === handleObj.guid ) &&
- ( !namespaces || namespaces.test( handleObj.namespace ) ) &&
- ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) {
- eventType.splice( j--, 1 );
-
- if ( handleObj.selector ) {
- eventType.delegateCount--;
- }
- if ( special.remove ) {
- special.remove.call( elem, handleObj );
- }
- }
- }
-
- // Remove generic event handler if we removed something and no more handlers exist
- // (avoids potential for endless recursion during removal of special event handlers)
- if ( eventType.length === 0 && origCount !== eventType.length ) {
- if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
- jQuery.removeEvent( elem, type, elemData.handle );
- }
-
- delete events[ type ];
- }
- }
-
- // Remove the expando if it's no longer used
- if ( jQuery.isEmptyObject( events ) ) {
- delete elemData.handle;
-
- // removeData also checks for emptiness and clears the expando if empty
- // so use it instead of delete
- jQuery.removeData( elem, "events", 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 ) {
- // Don't do events on text and comment nodes
- if ( elem && (elem.nodeType === 3 || elem.nodeType === 8) ) {
- return;
- }
-
- // Event object or event type
- var cache, exclusive, i, cur, old, ontype, special, handle, eventPath, bubbleType,
- type = event.type || event,
- namespaces = [];
-
- // focus/blur morphs to focusin/out; ensure we're not firing them right now
- if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
- return;
- }
-
- 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.isTrigger = true;
- event.exclusive = exclusive;
- event.namespace = namespaces.join( "." );
- event.namespace_re = event.namespace? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
- ontype = type.indexOf( ":" ) < 0 ? "on" + type : "";
-
- // Handle a global trigger
- if ( !elem ) {
-
- // TODO: Stop taunting the data cache; remove global events and always attach to document
- cache = jQuery.cache;
- for ( i in cache ) {
- if ( cache[ i ].events && cache[ i ].events[ type ] ) {
- jQuery.event.trigger( event, data, cache[ i ].handle.elem, true );
- }
- }
- return;
- }
-
- // Clean up the event in case it is being reused
- event.result = undefined;
- if ( !event.target ) {
- 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 );
-
- // Allow special events to draw outside the lines
- special = jQuery.event.special[ type ] || {};
- if ( special.trigger && special.trigger.apply( elem, data ) === false ) {
- return;
- }
-
- // Determine event propagation path in advance, per W3C events spec (#9951)
- // Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
- eventPath = [[ elem, special.bindType || type ]];
- if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {
-
- bubbleType = special.delegateType || type;
- cur = rfocusMorph.test( bubbleType + type ) ? elem : elem.parentNode;
- for ( old = elem; cur; cur = cur.parentNode ) {
- eventPath.push([ cur, bubbleType ]);
- old = cur;
- }
-
- // Only add window if we got to document (e.g., not plain obj or detached DOM)
- if ( old === (elem.ownerDocument || document) ) {
- eventPath.push([ old.defaultView || old.parentWindow || window, bubbleType ]);
- }
- }
-
- // Fire handlers on the event path
- for ( i = 0; i < eventPath.length && !event.isPropagationStopped(); i++ ) {
-
- cur = eventPath[i][0];
- event.type = eventPath[i][1];
-
- handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && jQuery._data( cur, "handle" );
- if ( handle ) {
- handle.apply( cur, data );
- }
- // Note that this is a bare JS function and not a jQuery handler
- handle = ontype && cur[ ontype ];
- if ( handle && jQuery.acceptData( cur ) && handle.apply && handle.apply( cur, data ) === false ) {
- event.preventDefault();
- }
- }
- event.type = type;
-
- // If nobody prevented the default action, do it now
- if ( !onlyHandlers && !event.isDefaultPrevented() ) {
-
- if ( (!special._default || special._default.apply( elem.ownerDocument, data ) === 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.
- // Don't do default actions on window, that's where global variables be (#6170)
- // IE<9 dies on focus/blur to hidden element (#1486)
- if ( ontype && elem[ type ] && ((type !== "focus" && type !== "blur") || event.target.offsetWidth !== 0) && !jQuery.isWindow( elem ) ) {
-
- // Don't re-trigger an onFOO event when we call its FOO() method
- old = elem[ ontype ];
-
- if ( old ) {
- elem[ ontype ] = null;
- }
-
- // Prevent re-triggering of the same event, since we already bubbled it above
- jQuery.event.triggered = type;
- elem[ type ]();
- jQuery.event.triggered = undefined;
-
- if ( old ) {
- elem[ ontype ] = old;
- }
- }
- }
- }
-
- return event.result;
- },
-
- dispatch: function( event ) {
-
- // Make a writable jQuery.Event from the native event object
- event = jQuery.event.fix( event || window.event );
-
- var i, j, cur, ret, selMatch, matched, matches, handleObj, sel, related,
- handlers = ( (jQuery._data( this, "events" ) || {} )[ event.type ] || []),
- delegateCount = handlers.delegateCount,
- args = core_slice.call( arguments ),
- run_all = !event.exclusive && !event.namespace,
- special = jQuery.event.special[ event.type ] || {},
- handlerQueue = [];
-
- // Use the fix-ed jQuery.Event rather than the (read-only) native event
- args[0] = event;
- event.delegateTarget = this;
-
- // Call the preDispatch hook for the mapped type, and let it bail if desired
- if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
- return;
- }
-
- // Determine handlers that should run if there are delegated events
- // Avoid non-left-click bubbling in Firefox (#3861)
- if ( delegateCount && !(event.button && event.type === "click") ) {
-
- for ( cur = event.target; cur != this; cur = cur.parentNode || this ) {
-
- // Don't process clicks (ONLY) on disabled elements (#6911, #8165, #11382, #11764)
- if ( cur.disabled !== true || event.type !== "click" ) {
- selMatch = {};
- matches = [];
- for ( i = 0; i < delegateCount; i++ ) {
- handleObj = handlers[ i ];
- sel = handleObj.selector;
-
- if ( selMatch[ sel ] === undefined ) {
- selMatch[ sel ] = handleObj.needsContext ?
- jQuery( sel, this ).index( cur ) >= 0 :
- jQuery.find( sel, this, null, [ cur ] ).length;
- }
- if ( selMatch[ sel ] ) {
- matches.push( handleObj );
- }
- }
- if ( matches.length ) {
- handlerQueue.push({ elem: cur, matches: matches });
- }
- }
- }
- }
-
- // Add the remaining (directly-bound) handlers
- if ( handlers.length > delegateCount ) {
- handlerQueue.push({ elem: this, matches: handlers.slice( delegateCount ) });
- }
-
- // Run delegates first; they may want to stop propagation beneath us
- for ( i = 0; i < handlerQueue.length && !event.isPropagationStopped(); i++ ) {
- matched = handlerQueue[ i ];
- event.currentTarget = matched.elem;
-
- for ( j = 0; j < matched.matches.length && !event.isImmediatePropagationStopped(); j++ ) {
- handleObj = matched.matches[ j ];
-
- // Triggered event must either 1) be non-exclusive and have no namespace, or
- // 2) have namespace(s) a subset or equal to those in the bound event (both can have no namespace).
- if ( run_all || (!event.namespace && !handleObj.namespace) || event.namespace_re && event.namespace_re.test( handleObj.namespace ) ) {
-
- event.data = handleObj.data;
- event.handleObj = handleObj;
-
- ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler )
- .apply( matched.elem, args );
-
- if ( ret !== undefined ) {
- event.result = ret;
- if ( ret === false ) {
- event.preventDefault();
- event.stopPropagation();
- }
- }
- }
- }
- }
-
- // Call the postDispatch hook for the mapped type
- if ( special.postDispatch ) {
- special.postDispatch.call( this, event );
- }
-
- return event.result;
- },
-
- // Includes some event props shared by KeyEvent and MouseEvent
- // *** attrChange attrName relatedNode srcElement are not normalized, non-W3C, deprecated, will be removed in 1.8 ***
- props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
-
- fixHooks: {},
-
- keyHooks: {
- props: "char charCode key keyCode".split(" "),
- filter: function( event, original ) {
-
- // Add which for key events
- if ( event.which == null ) {
- event.which = original.charCode != null ? original.charCode : original.keyCode;
- }
-
- return event;
- }
- },
-
- mouseHooks: {
- props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
- filter: function( event, original ) {
- var eventDoc, doc, body,
- button = original.button,
- fromElement = original.fromElement;
-
- // Calculate pageX/Y if missing and clientX/Y available
- if ( event.pageX == null && original.clientX != null ) {
- eventDoc = event.target.ownerDocument || document;
- doc = eventDoc.documentElement;
- body = eventDoc.body;
-
- event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 );
- event.pageY = original.clientY + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - ( doc && doc.clientTop || body && body.clientTop || 0 );
- }
-
- // Add relatedTarget, if necessary
- if ( !event.relatedTarget && fromElement ) {
- event.relatedTarget = fromElement === event.target ? original.toElement : fromElement;
- }
-
- // Add which for click: 1 === left; 2 === middle; 3 === right
- // Note: button is not normalized, so don't use it
- if ( !event.which && button !== undefined ) {
- event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
- }
-
- return event;
- }
- },
-
- fix: function( event ) {
- if ( event[ jQuery.expando ] ) {
- return event;
- }
-
- // Create a writable copy of the event object and normalize some properties
- var i, prop,
- originalEvent = event,
- fixHook = jQuery.event.fixHooks[ event.type ] || {},
- copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;
-
- event = jQuery.Event( originalEvent );
-
- for ( i = copy.length; i; ) {
- prop = copy[ --i ];
- event[ prop ] = originalEvent[ prop ];
- }
-
- // Fix target property, if necessary (#1925, IE 6/7/8 & Safari2)
- if ( !event.target ) {
- event.target = originalEvent.srcElement || document;
- }
-
- // Target should not be a text node (#504, Safari)
- if ( event.target.nodeType === 3 ) {
- event.target = event.target.parentNode;
- }
-
- // For mouse/key events, metaKey==false if it's undefined (#3368, #11328; IE6/7/8)
- event.metaKey = !!event.metaKey;
-
- return fixHook.filter? fixHook.filter( event, originalEvent ) : event;
- },
-
- special: {
- load: {
- // Prevent triggered image.load events from bubbling to window.load
- noBubble: true
- },
-
- focus: {
- delegateType: "focusin"
- },
- blur: {
- delegateType: "focusout"
- },
-
- 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;
- }
- }
- }
- },
-
- simulate: function( type, elem, event, bubble ) {
- // 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.
- var e = jQuery.extend(
- new jQuery.Event(),
- event,
- { type: type,
- isSimulated: true,
- originalEvent: {}
- }
- );
- if ( bubble ) {
- jQuery.event.trigger( e, null, elem );
- } else {
- jQuery.event.dispatch.call( elem, e );
- }
- if ( e.isDefaultPrevented() ) {
- event.preventDefault();
- }
- }
-};
-
-// Some plugins are using, but it's undocumented/deprecated and will be removed.
-// The 1.7 special event interface should provide all the hooks needed now.
-jQuery.event.handle = jQuery.event.dispatch;
-
-jQuery.removeEvent = document.removeEventListener ?
- function( elem, type, handle ) {
- if ( elem.removeEventListener ) {
- elem.removeEventListener( type, handle, false );
- }
- } :
- function( elem, type, handle ) {
- var name = "on" + type;
-
- if ( elem.detachEvent ) {
-
- // #8545, #7054, preventing memory leaks for custom events in IE6-8
- // detachEvent needed property on element, by name of that event, to properly expose it to GC
- if ( typeof elem[ name ] === "undefined" ) {
- elem[ name ] = null;
- }
-
- elem.detachEvent( name, handle );
- }
- };
-
-jQuery.Event = function( src, props ) {
- // Allow instantiation without the 'new' keyword
- if ( !(this instanceof jQuery.Event) ) {
- 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 );
- }
-
- // Create a timestamp if incoming event doesn't have one
- this.timeStamp = src && src.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
-};
-
-// Create mouseenter/leave events using mouseover/out and event-time checks
-jQuery.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout"
-}, function( orig, fix ) {
- jQuery.event.special[ orig ] = {
- delegateType: fix,
- bindType: fix,
-
- handle: function( event ) {
- var ret,
- target = this,
- related = event.relatedTarget,
- handleObj = event.handleObj,
- selector = handleObj.selector;
-
- // For mousenter/leave call the handler if related is outside the target.
- // NB: No relatedTarget if the mouse left/entered the browser window
- if ( !related || (related !== target && !jQuery.contains( target, related )) ) {
- event.type = handleObj.origType;
- ret = handleObj.handler.apply( this, arguments );
- event.type = fix;
- }
- return ret;
- }
- };
-});
-
-// IE submit delegation
-if ( !jQuery.support.submitBubbles ) {
-
- jQuery.event.special.submit = {
- setup: function() {
- // Only need this for delegated form submit events
- if ( jQuery.nodeName( this, "form" ) ) {
- return false;
- }
-
- // Lazy-add a submit handler when a descendant form may potentially be submitted
- jQuery.event.add( this, "click._submit keypress._submit", function( e ) {
- // Node name check avoids a VML-related crash in IE (#9807)
- var elem = e.target,
- form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.form : undefined;
- if ( form && !jQuery._data( form, "_submit_attached" ) ) {
- jQuery.event.add( form, "submit._submit", function( event ) {
- event._submit_bubble = true;
- });
- jQuery._data( form, "_submit_attached", true );
- }
- });
- // return undefined since we don't need an event listener
- },
-
- postDispatch: function( event ) {
- // If form was submitted by the user, bubble the event up the tree
- if ( event._submit_bubble ) {
- delete event._submit_bubble;
- if ( this.parentNode && !event.isTrigger ) {
- jQuery.event.simulate( "submit", this.parentNode, event, true );
- }
- }
- },
-
- teardown: function() {
- // Only need this for delegated form submit events
- if ( jQuery.nodeName( this, "form" ) ) {
- return false;
- }
-
- // Remove delegated handlers; cleanData eventually reaps submit handlers attached above
- jQuery.event.remove( this, "._submit" );
- }
- };
-}
-
-// IE change delegation and checkbox/radio fix
-if ( !jQuery.support.changeBubbles ) {
-
- jQuery.event.special.change = {
-
- setup: function() {
-
- if ( rformElems.test( this.nodeName ) ) {
- // IE doesn't fire change on a check/radio until blur; trigger it on click
- // after a propertychange. Eat the blur-change in special.change.handle.
- // This still fires onchange a second time for check/radio after blur.
- if ( this.type === "checkbox" || this.type === "radio" ) {
- jQuery.event.add( this, "propertychange._change", function( event ) {
- if ( event.originalEvent.propertyName === "checked" ) {
- this._just_changed = true;
- }
- });
- jQuery.event.add( this, "click._change", function( event ) {
- if ( this._just_changed && !event.isTrigger ) {
- this._just_changed = false;
- }
- // Allow triggered, simulated change events (#11500)
- jQuery.event.simulate( "change", this, event, true );
- });
- }
- return false;
- }
- // Delegated event; lazy-add a change handler on descendant inputs
- jQuery.event.add( this, "beforeactivate._change", function( e ) {
- var elem = e.target;
-
- if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "_change_attached" ) ) {
- jQuery.event.add( elem, "change._change", function( event ) {
- if ( this.parentNode && !event.isSimulated && !event.isTrigger ) {
- jQuery.event.simulate( "change", this.parentNode, event, true );
- }
- });
- jQuery._data( elem, "_change_attached", true );
- }
- });
- },
-
- handle: function( event ) {
- var elem = event.target;
-
- // Swallow native change events from checkbox/radio, we already triggered them above
- if ( this !== elem || event.isSimulated || event.isTrigger || (elem.type !== "radio" && elem.type !== "checkbox") ) {
- return event.handleObj.handler.apply( this, arguments );
- }
- },
-
- teardown: function() {
- jQuery.event.remove( this, "._change" );
-
- return !rformElems.test( this.nodeName );
- }
- };
-}
-
-// 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,
- handler = function( event ) {
- jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );
- };
-
- jQuery.event.special[ fix ] = {
- setup: function() {
- if ( attaches++ === 0 ) {
- document.addEventListener( orig, handler, true );
- }
- },
- teardown: function() {
- if ( --attaches === 0 ) {
- document.removeEventListener( orig, handler, true );
- }
- }
- };
- });
-}
-
-jQuery.fn.extend({
-
- on: function( types, selector, data, fn, /*INTERNAL*/ one ) {
- var origFn, type;
-
- // Types can be a map of types/handlers
- if ( typeof types === "object" ) {
- // ( types-Object, selector, data )
- if ( typeof selector !== "string" ) { // && selector != null
- // ( types-Object, data )
- data = data || selector;
- selector = undefined;
- }
- for ( type in types ) {
- this.on( type, selector, data, types[ type ], one );
- }
- return this;
- }
-
- if ( data == null && fn == null ) {
- // ( types, fn )
- fn = selector;
- data = selector = undefined;
- } else if ( fn == null ) {
- if ( typeof selector === "string" ) {
- // ( types, selector, fn )
- fn = data;
- data = undefined;
- } else {
- // ( types, data, fn )
- fn = data;
- data = selector;
- selector = undefined;
- }
- }
- if ( fn === false ) {
- fn = returnFalse;
- } else if ( !fn ) {
- return this;
- }
-
- if ( one === 1 ) {
- origFn = fn;
- fn = function( event ) {
- // Can use an empty set, since event contains the info
- jQuery().off( event );
- return origFn.apply( this, arguments );
- };
- // Use same guid so caller can remove using origFn
- fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
- }
- return this.each( function() {
- jQuery.event.add( this, types, fn, data, selector );
- });
- },
- one: function( types, selector, data, fn ) {
- return this.on( types, selector, data, fn, 1 );
- },
- off: function( types, selector, fn ) {
- var handleObj, type;
- if ( types && types.preventDefault && types.handleObj ) {
- // ( event ) dispatched jQuery.Event
- handleObj = types.handleObj;
- jQuery( types.delegateTarget ).off(
- handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType,
- handleObj.selector,
- handleObj.handler
- );
- return this;
- }
- if ( typeof types === "object" ) {
- // ( types-object [, selector] )
- for ( type in types ) {
- this.off( type, selector, types[ type ] );
- }
- return this;
- }
- if ( selector === false || typeof selector === "function" ) {
- // ( types [, fn] )
- fn = selector;
- selector = undefined;
- }
- if ( fn === false ) {
- fn = returnFalse;
- }
- return this.each(function() {
- jQuery.event.remove( this, types, fn, selector );
- });
- },
-
- bind: function( types, data, fn ) {
- return this.on( types, null, data, fn );
- },
- unbind: function( types, fn ) {
- return this.off( types, null, fn );
- },
-
- live: function( types, data, fn ) {
- jQuery( this.context ).on( types, this.selector, data, fn );
- return this;
- },
- die: function( types, fn ) {
- jQuery( this.context ).off( types, this.selector || "**", fn );
- return this;
- },
-
- delegate: function( selector, types, data, fn ) {
- return this.on( types, selector, data, fn );
- },
- undelegate: function( selector, types, fn ) {
- // ( namespace ) or ( selector, types [, fn] )
- return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn );
- },
-
- 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 );
- }
-});
-
-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 contextmenu").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.on( name, null, data, fn ) :
- this.trigger( name );
- };
-
- if ( rkeyEvent.test( name ) ) {
- jQuery.event.fixHooks[ name ] = jQuery.event.keyHooks;
- }
-
- if ( rmouseEvent.test( name ) ) {
- jQuery.event.fixHooks[ name ] = jQuery.event.mouseHooks;
- }
-});
-/*!
- * Sizzle CSS Selector Engine
- * Copyright 2012 jQuery Foundation and other contributors
- * Released under the MIT license
- * http://sizzlejs.com/
- */
-(function( window, undefined ) {
-
-var cachedruns,
- assertGetIdNotName,
- Expr,
- getText,
- isXML,
- contains,
- compile,
- sortOrder,
- hasDuplicate,
- outermostContext,
-
- baseHasDuplicate = true,
- strundefined = "undefined",
-
- expando = ( "sizcache" + Math.random() ).replace( ".", "" ),
-
- Token = String,
- document = window.document,
- docElem = document.documentElement,
- dirruns = 0,
- done = 0,
- pop = [].pop,
- push = [].push,
- slice = [].slice,
- // Use a stripped-down indexOf if a native one is unavailable
- indexOf = [].indexOf || function( elem ) {
- var i = 0,
- len = this.length;
- for ( ; i < len; i++ ) {
- if ( this[i] === elem ) {
- return i;
- }
- }
- return -1;
- },
-
- // Augment a function for special use by Sizzle
- markFunction = function( fn, value ) {
- fn[ expando ] = value == null || value;
- return fn;
- },
-
- createCache = function() {
- var cache = {},
- keys = [];
-
- return markFunction(function( key, value ) {
- // Only keep the most recent entries
- if ( keys.push( key ) > Expr.cacheLength ) {
- delete cache[ keys.shift() ];
- }
-
- // Retrieve with (key + " ") to avoid collision with native Object.prototype properties (see Issue #157)
- return (cache[ key + " " ] = value);
- }, cache );
- },
-
- classCache = createCache(),
- tokenCache = createCache(),
- compilerCache = createCache(),
-
- // Regex
-
- // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace
- whitespace = "[\\x20\\t\\r\\n\\f]",
- // http://www.w3.org/TR/css3-syntax/#characters
- characterEncoding = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",
-
- // Loosely modeled on CSS identifier characters
- // An unquoted value should be a CSS identifier (http://www.w3.org/TR/css3-selectors/#attribute-selectors)
- // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
- identifier = characterEncoding.replace( "w", "w#" ),
-
- // Acceptable operators http://www.w3.org/TR/selectors/#attribute-selectors
- operators = "([*^$|!~]?=)",
- attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace +
- "*(?:" + operators + whitespace + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + whitespace + "*\\]",
-
- // Prefer arguments not in parens/brackets,
- // then attribute selectors and non-pseudos (denoted by :),
- // then anything else
- // These preferences are here to reduce the number of selectors
- // needing tokenize in the PSEUDO preFilter
- pseudos = ":(" + characterEncoding + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + attributes + ")|[^:]|\\\\.)*|.*))\\)|)",
-
- // For matchExpr.POS and matchExpr.needsContext
- pos = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace +
- "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)",
-
- // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
- rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
-
- rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
- rcombinators = new RegExp( "^" + whitespace + "*([\\x20\\t\\r\\n\\f>+~])" + whitespace + "*" ),
- rpseudo = new RegExp( pseudos ),
-
- // Easily-parseable/retrievable ID or TAG or CLASS selectors
- rquickExpr = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,
-
- rnot = /^:not/,
- rsibling = /[\x20\t\r\n\f]*[+~]/,
- rendsWithNot = /:not\($/,
-
- rheader = /h\d/i,
- rinputs = /input|select|textarea|button/i,
-
- rbackslash = /\\(?!\\)/g,
-
- matchExpr = {
- "ID": new RegExp( "^#(" + characterEncoding + ")" ),
- "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ),
- "NAME": new RegExp( "^\\[name=['\"]?(" + characterEncoding + ")['\"]?\\]" ),
- "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ),
- "ATTR": new RegExp( "^" + attributes ),
- "PSEUDO": new RegExp( "^" + pseudos ),
- "POS": new RegExp( pos, "i" ),
- "CHILD": new RegExp( "^:(only|nth|first|last)-child(?:\\(" + whitespace +
- "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
- "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
- // For use in libraries implementing .is()
- "needsContext": new RegExp( "^" + whitespace + "*[>+~]|" + pos, "i" )
- },
-
- // Support
-
- // Used for testing something on an element
- assert = function( fn ) {
- var div = document.createElement("div");
-
- try {
- return fn( div );
- } catch (e) {
- return false;
- } finally {
- // release memory in IE
- div = null;
- }
- },
-
- // Check if getElementsByTagName("*") returns only elements
- assertTagNameNoComments = assert(function( div ) {
- div.appendChild( document.createComment("") );
- return !div.getElementsByTagName("*").length;
- }),
-
- // Check if getAttribute returns normalized href attributes
- assertHrefNotNormalized = assert(function( div ) {
- div.innerHTML = " ";
- return div.firstChild && typeof div.firstChild.getAttribute !== strundefined &&
- div.firstChild.getAttribute("href") === "#";
- }),
-
- // Check if attributes should be retrieved by attribute nodes
- assertAttributes = assert(function( div ) {
- div.innerHTML = " ";
- var type = typeof div.lastChild.getAttribute("multiple");
- // IE8 returns a string for some attributes even when not present
- return type !== "boolean" && type !== "string";
- }),
-
- // Check if getElementsByClassName can be trusted
- assertUsableClassName = assert(function( div ) {
- // Opera can't find a second classname (in 9.6)
- div.innerHTML = "
";
- if ( !div.getElementsByClassName || !div.getElementsByClassName("e").length ) {
- return false;
- }
-
- // Safari 3.2 caches class attributes and doesn't catch changes
- div.lastChild.className = "e";
- return div.getElementsByClassName("e").length === 2;
- }),
-
- // Check if getElementById returns elements by name
- // Check if getElementsByName privileges form controls or returns elements by ID
- assertUsableName = assert(function( div ) {
- // Inject content
- div.id = expando + 0;
- div.innerHTML = "
";
- docElem.insertBefore( div, docElem.firstChild );
-
- // Test
- var pass = document.getElementsByName &&
- // buggy browsers will return fewer than the correct 2
- document.getElementsByName( expando ).length === 2 +
- // buggy browsers will return more than the correct 0
- document.getElementsByName( expando + 0 ).length;
- assertGetIdNotName = !document.getElementById( expando );
-
- // Cleanup
- docElem.removeChild( div );
-
- return pass;
- });
-
-// If slice is not available, provide a backup
-try {
- slice.call( docElem.childNodes, 0 )[0].nodeType;
-} catch ( e ) {
- slice = function( i ) {
- var elem,
- results = [];
- for ( ; (elem = this[i]); i++ ) {
- results.push( elem );
- }
- return results;
- };
-}
-
-function Sizzle( selector, context, results, seed ) {
- results = results || [];
- context = context || document;
- var match, elem, xml, m,
- nodeType = context.nodeType;
-
- if ( !selector || typeof selector !== "string" ) {
- return results;
- }
-
- if ( nodeType !== 1 && nodeType !== 9 ) {
- return [];
- }
-
- xml = isXML( context );
-
- if ( !xml && !seed ) {
- if ( (match = rquickExpr.exec( selector )) ) {
- // Speed-up: Sizzle("#ID")
- if ( (m = match[1]) ) {
- if ( nodeType === 9 ) {
- elem = context.getElementById( m );
- // 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, Opera, and Webkit return items
- // by name instead of ID
- if ( elem.id === m ) {
- results.push( elem );
- return results;
- }
- } else {
- return results;
- }
- } else {
- // Context is not a document
- if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&
- contains( context, elem ) && elem.id === m ) {
- results.push( elem );
- return results;
- }
- }
-
- // Speed-up: Sizzle("TAG")
- } else if ( match[2] ) {
- push.apply( results, slice.call(context.getElementsByTagName( selector ), 0) );
- return results;
-
- // Speed-up: Sizzle(".CLASS")
- } else if ( (m = match[3]) && assertUsableClassName && context.getElementsByClassName ) {
- push.apply( results, slice.call(context.getElementsByClassName( m ), 0) );
- return results;
- }
- }
- }
-
- // All others
- return select( selector.replace( rtrim, "$1" ), context, results, seed, xml );
-}
-
-Sizzle.matches = function( expr, elements ) {
- return Sizzle( expr, null, null, elements );
-};
-
-Sizzle.matchesSelector = function( elem, expr ) {
- return Sizzle( expr, null, null, [ elem ] ).length > 0;
-};
-
-// Returns a function to use in pseudos for input types
-function createInputPseudo( type ) {
- return function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return name === "input" && elem.type === type;
- };
-}
-
-// Returns a function to use in pseudos for buttons
-function createButtonPseudo( type ) {
- return function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return (name === "input" || name === "button") && elem.type === type;
- };
-}
-
-// Returns a function to use in pseudos for positionals
-function createPositionalPseudo( fn ) {
- return markFunction(function( argument ) {
- argument = +argument;
- return markFunction(function( seed, matches ) {
- var j,
- matchIndexes = fn( [], seed.length, argument ),
- i = matchIndexes.length;
-
- // Match elements found at the specified indexes
- while ( i-- ) {
- if ( seed[ (j = matchIndexes[i]) ] ) {
- seed[j] = !(matches[j] = seed[j]);
- }
- }
- });
- });
-}
-
-/**
- * Utility function for retrieving the text value of an array of DOM nodes
- * @param {Array|Element} elem
- */
-getText = Sizzle.getText = function( elem ) {
- var node,
- ret = "",
- i = 0,
- nodeType = elem.nodeType;
-
- if ( nodeType ) {
- if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
- // Use textContent for elements
- // innerText usage removed for consistency of new lines (see #11153)
- if ( typeof elem.textContent === "string" ) {
- return elem.textContent;
- } else {
- // Traverse its children
- for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
- ret += getText( elem );
- }
- }
- } else if ( nodeType === 3 || nodeType === 4 ) {
- return elem.nodeValue;
- }
- // Do not include comment or processing instruction nodes
- } else {
-
- // If no nodeType, this is expected to be an array
- for ( ; (node = elem[i]); i++ ) {
- // Do not traverse comment nodes
- ret += getText( node );
- }
- }
- return ret;
-};
-
-isXML = 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).documentElement;
- return documentElement ? documentElement.nodeName !== "HTML" : false;
-};
-
-// Element contains another
-contains = Sizzle.contains = docElem.contains ?
- function( a, b ) {
- var adown = a.nodeType === 9 ? a.documentElement : a,
- bup = b && b.parentNode;
- return a === bup || !!( bup && bup.nodeType === 1 && adown.contains && adown.contains(bup) );
- } :
- docElem.compareDocumentPosition ?
- function( a, b ) {
- return b && !!( a.compareDocumentPosition( b ) & 16 );
- } :
- function( a, b ) {
- while ( (b = b.parentNode) ) {
- if ( b === a ) {
- return true;
- }
- }
- return false;
- };
-
-Sizzle.attr = function( elem, name ) {
- var val,
- xml = isXML( elem );
-
- if ( !xml ) {
- name = name.toLowerCase();
- }
- if ( (val = Expr.attrHandle[ name ]) ) {
- return val( elem );
- }
- if ( xml || assertAttributes ) {
- return elem.getAttribute( name );
- }
- val = elem.getAttributeNode( name );
- return val ?
- typeof elem[ name ] === "boolean" ?
- elem[ name ] ? name : null :
- val.specified ? val.value : null :
- null;
-};
-
-Expr = Sizzle.selectors = {
-
- // Can be adjusted by the user
- cacheLength: 50,
-
- createPseudo: markFunction,
-
- match: matchExpr,
-
- // IE6/7 return a modified href
- attrHandle: assertHrefNotNormalized ?
- {} :
- {
- "href": function( elem ) {
- return elem.getAttribute( "href", 2 );
- },
- "type": function( elem ) {
- return elem.getAttribute("type");
- }
- },
-
- find: {
- "ID": assertGetIdNotName ?
- function( id, context, xml ) {
- if ( typeof context.getElementById !== strundefined && !xml ) {
- var m = context.getElementById( id );
- // Check parentNode to catch when Blackberry 4.6 returns
- // nodes that are no longer in the document #6963
- return m && m.parentNode ? [m] : [];
- }
- } :
- function( id, context, xml ) {
- if ( typeof context.getElementById !== strundefined && !xml ) {
- var m = context.getElementById( id );
-
- return m ?
- m.id === id || typeof m.getAttributeNode !== strundefined && m.getAttributeNode("id").value === id ?
- [m] :
- undefined :
- [];
- }
- },
-
- "TAG": assertTagNameNoComments ?
- function( tag, context ) {
- if ( typeof context.getElementsByTagName !== strundefined ) {
- return context.getElementsByTagName( tag );
- }
- } :
- function( tag, context ) {
- var results = context.getElementsByTagName( tag );
-
- // Filter out possible comments
- if ( tag === "*" ) {
- var elem,
- tmp = [],
- i = 0;
-
- for ( ; (elem = results[i]); i++ ) {
- if ( elem.nodeType === 1 ) {
- tmp.push( elem );
- }
- }
-
- return tmp;
- }
- return results;
- },
-
- "NAME": assertUsableName && function( tag, context ) {
- if ( typeof context.getElementsByName !== strundefined ) {
- return context.getElementsByName( name );
- }
- },
-
- "CLASS": assertUsableClassName && function( className, context, xml ) {
- if ( typeof context.getElementsByClassName !== strundefined && !xml ) {
- return context.getElementsByClassName( className );
- }
- }
- },
-
- relative: {
- ">": { dir: "parentNode", first: true },
- " ": { dir: "parentNode" },
- "+": { dir: "previousSibling", first: true },
- "~": { dir: "previousSibling" }
- },
-
- preFilter: {
- "ATTR": function( match ) {
- match[1] = match[1].replace( rbackslash, "" );
-
- // Move the given value to match[3] whether quoted or unquoted
- match[3] = ( match[4] || match[5] || "" ).replace( rbackslash, "" );
-
- if ( match[2] === "~=" ) {
- match[3] = " " + match[3] + " ";
- }
-
- return match.slice( 0, 4 );
- },
-
- "CHILD": function( match ) {
- /* matches from matchExpr["CHILD"]
- 1 type (only|nth|...)
- 2 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
- 3 xn-component of xn+y argument ([+-]?\d*n|)
- 4 sign of xn-component
- 5 x of xn-component
- 6 sign of y-component
- 7 y of y-component
- */
- match[1] = match[1].toLowerCase();
-
- if ( match[1] === "nth" ) {
- // nth-child requires argument
- if ( !match[2] ) {
- Sizzle.error( match[0] );
- }
-
- // numeric x and y parameters for Expr.filter.CHILD
- // remember that false/true cast respectively to 0/1
- match[3] = +( match[3] ? match[4] + (match[5] || 1) : 2 * ( match[2] === "even" || match[2] === "odd" ) );
- match[4] = +( ( match[6] + match[7] ) || match[2] === "odd" );
-
- // other types prohibit arguments
- } else if ( match[2] ) {
- Sizzle.error( match[0] );
- }
-
- return match;
- },
-
- "PSEUDO": function( match ) {
- var unquoted, excess;
- if ( matchExpr["CHILD"].test( match[0] ) ) {
- return null;
- }
-
- if ( match[3] ) {
- match[2] = match[3];
- } else if ( (unquoted = match[4]) ) {
- // Only check arguments that contain a pseudo
- if ( rpseudo.test(unquoted) &&
- // Get excess from tokenize (recursively)
- (excess = tokenize( unquoted, true )) &&
- // advance to the next closing parenthesis
- (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
-
- // excess is a negative index
- unquoted = unquoted.slice( 0, excess );
- match[0] = match[0].slice( 0, excess );
- }
- match[2] = unquoted;
- }
-
- // Return only captures needed by the pseudo filter method (type and argument)
- return match.slice( 0, 3 );
- }
- },
-
- filter: {
- "ID": assertGetIdNotName ?
- function( id ) {
- id = id.replace( rbackslash, "" );
- return function( elem ) {
- return elem.getAttribute("id") === id;
- };
- } :
- function( id ) {
- id = id.replace( rbackslash, "" );
- return function( elem ) {
- var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id");
- return node && node.value === id;
- };
- },
-
- "TAG": function( nodeName ) {
- if ( nodeName === "*" ) {
- return function() { return true; };
- }
- nodeName = nodeName.replace( rbackslash, "" ).toLowerCase();
-
- return function( elem ) {
- return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
- };
- },
-
- "CLASS": function( className ) {
- var pattern = classCache[ expando ][ className + " " ];
-
- return pattern ||
- (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
- classCache( className, function( elem ) {
- return pattern.test( elem.className || (typeof elem.getAttribute !== strundefined && elem.getAttribute("class")) || "" );
- });
- },
-
- "ATTR": function( name, operator, check ) {
- return function( elem, context ) {
- var result = Sizzle.attr( elem, name );
-
- if ( result == null ) {
- return operator === "!=";
- }
- if ( !operator ) {
- return true;
- }
-
- result += "";
-
- return operator === "=" ? result === check :
- operator === "!=" ? result !== check :
- operator === "^=" ? check && result.indexOf( check ) === 0 :
- operator === "*=" ? check && result.indexOf( check ) > -1 :
- operator === "$=" ? check && result.substr( result.length - check.length ) === check :
- operator === "~=" ? ( " " + result + " " ).indexOf( check ) > -1 :
- operator === "|=" ? result === check || result.substr( 0, check.length + 1 ) === check + "-" :
- false;
- };
- },
-
- "CHILD": function( type, argument, first, last ) {
-
- if ( type === "nth" ) {
- return function( elem ) {
- var node, diff,
- parent = elem.parentNode;
-
- if ( first === 1 && last === 0 ) {
- return true;
- }
-
- if ( parent ) {
- diff = 0;
- for ( node = parent.firstChild; node; node = node.nextSibling ) {
- if ( node.nodeType === 1 ) {
- diff++;
- if ( elem === node ) {
- break;
- }
- }
- }
- }
-
- // Incorporate the offset (or cast to NaN), then check against cycle size
- diff -= last;
- return diff === first || ( diff % first === 0 && diff / first >= 0 );
- };
- }
-
- return function( elem ) {
- var 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;
-
- /* falls through */
- case "last":
- while ( (node = node.nextSibling) ) {
- if ( node.nodeType === 1 ) {
- return false;
- }
- }
-
- return true;
- }
- };
- },
-
- "PSEUDO": function( pseudo, argument ) {
- // pseudo-class names are case-insensitive
- // http://www.w3.org/TR/selectors/#pseudo-classes
- // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
- // Remember that setFilters inherits from pseudos
- var args,
- fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
- Sizzle.error( "unsupported pseudo: " + pseudo );
-
- // The user may use createPseudo to indicate that
- // arguments are needed to create the filter function
- // just as Sizzle does
- if ( fn[ expando ] ) {
- return fn( argument );
- }
-
- // But maintain support for old signatures
- if ( fn.length > 1 ) {
- args = [ pseudo, pseudo, "", argument ];
- return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
- markFunction(function( seed, matches ) {
- var idx,
- matched = fn( seed, argument ),
- i = matched.length;
- while ( i-- ) {
- idx = indexOf.call( seed, matched[i] );
- seed[ idx ] = !( matches[ idx ] = matched[i] );
- }
- }) :
- function( elem ) {
- return fn( elem, 0, args );
- };
- }
-
- return fn;
- }
- },
-
- pseudos: {
- "not": markFunction(function( selector ) {
- // Trim the selector passed to compile
- // to avoid treating leading and trailing
- // spaces as combinators
- var input = [],
- results = [],
- matcher = compile( selector.replace( rtrim, "$1" ) );
-
- return matcher[ expando ] ?
- markFunction(function( seed, matches, context, xml ) {
- var elem,
- unmatched = matcher( seed, null, xml, [] ),
- i = seed.length;
-
- // Match elements unmatched by `matcher`
- while ( i-- ) {
- if ( (elem = unmatched[i]) ) {
- seed[i] = !(matches[i] = elem);
- }
- }
- }) :
- function( elem, context, xml ) {
- input[0] = elem;
- matcher( input, null, xml, results );
- return !results.pop();
- };
- }),
-
- "has": markFunction(function( selector ) {
- return function( elem ) {
- return Sizzle( selector, elem ).length > 0;
- };
- }),
-
- "contains": markFunction(function( text ) {
- return function( elem ) {
- return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
- };
- }),
-
- "enabled": function( elem ) {
- return elem.disabled === false;
- },
-
- "disabled": function( elem ) {
- return elem.disabled === true;
- },
-
- "checked": function( elem ) {
- // In CSS3, :checked should return both checked and selected elements
- // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
- var nodeName = elem.nodeName.toLowerCase();
- return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
- },
-
- "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 !Expr.pseudos["empty"]( elem );
- },
-
- "empty": function( elem ) {
- // http://www.w3.org/TR/selectors/#empty-pseudo
- // :empty is only affected by element nodes and content nodes(including text(3), cdata(4)),
- // not comment, processing instructions, or others
- // Thanks to Diego Perini for the nodeName shortcut
- // Greater than "@" means alpha characters (specifically not starting with "#" or "?")
- var nodeType;
- elem = elem.firstChild;
- while ( elem ) {
- if ( elem.nodeName > "@" || (nodeType = elem.nodeType) === 3 || nodeType === 4 ) {
- return false;
- }
- elem = elem.nextSibling;
- }
- return true;
- },
-
- "header": function( elem ) {
- return rheader.test( elem.nodeName );
- },
-
- "text": function( elem ) {
- var type, attr;
- // 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" &&
- (type = elem.type) === "text" &&
- ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === type );
- },
-
- // Input types
- "radio": createInputPseudo("radio"),
- "checkbox": createInputPseudo("checkbox"),
- "file": createInputPseudo("file"),
- "password": createInputPseudo("password"),
- "image": createInputPseudo("image"),
-
- "submit": createButtonPseudo("submit"),
- "reset": createButtonPseudo("reset"),
-
- "button": function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return name === "input" && elem.type === "button" || name === "button";
- },
-
- "input": function( elem ) {
- return rinputs.test( elem.nodeName );
- },
-
- "focus": function( elem ) {
- var doc = elem.ownerDocument;
- return elem === doc.activeElement && (!doc.hasFocus || doc.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
- },
-
- "active": function( elem ) {
- return elem === elem.ownerDocument.activeElement;
- },
-
- // Positional types
- "first": createPositionalPseudo(function() {
- return [ 0 ];
- }),
-
- "last": createPositionalPseudo(function( matchIndexes, length ) {
- return [ length - 1 ];
- }),
-
- "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
- return [ argument < 0 ? argument + length : argument ];
- }),
-
- "even": createPositionalPseudo(function( matchIndexes, length ) {
- for ( var i = 0; i < length; i += 2 ) {
- matchIndexes.push( i );
- }
- return matchIndexes;
- }),
-
- "odd": createPositionalPseudo(function( matchIndexes, length ) {
- for ( var i = 1; i < length; i += 2 ) {
- matchIndexes.push( i );
- }
- return matchIndexes;
- }),
-
- "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
- for ( var i = argument < 0 ? argument + length : argument; --i >= 0; ) {
- matchIndexes.push( i );
- }
- return matchIndexes;
- }),
-
- "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
- for ( var i = argument < 0 ? argument + length : argument; ++i < length; ) {
- matchIndexes.push( i );
- }
- return matchIndexes;
- })
- }
-};
-
-function siblingCheck( a, b, ret ) {
- if ( a === b ) {
- return ret;
- }
-
- var cur = a.nextSibling;
-
- while ( cur ) {
- if ( cur === b ) {
- return -1;
- }
-
- cur = cur.nextSibling;
- }
-
- return 1;
-}
-
-sortOrder = docElem.compareDocumentPosition ?
- function( a, b ) {
- if ( a === b ) {
- hasDuplicate = true;
- return 0;
- }
-
- return ( !a.compareDocumentPosition || !b.compareDocumentPosition ?
- a.compareDocumentPosition :
- a.compareDocumentPosition(b) & 4
- ) ? -1 : 1;
- } :
- 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 );
- };
-
-// Always assume the presence of duplicates if sort doesn't
-// pass them to our comparison function (as in Google Chrome).
-[0, 0].sort( sortOrder );
-baseHasDuplicate = !hasDuplicate;
-
-// Document sorting and removing duplicates
-Sizzle.uniqueSort = function( results ) {
- var elem,
- duplicates = [],
- i = 1,
- j = 0;
-
- hasDuplicate = baseHasDuplicate;
- results.sort( sortOrder );
-
- if ( hasDuplicate ) {
- for ( ; (elem = results[i]); i++ ) {
- if ( elem === results[ i - 1 ] ) {
- j = duplicates.push( i );
- }
- }
- while ( j-- ) {
- results.splice( duplicates[ j ], 1 );
- }
- }
-
- return results;
-};
-
-Sizzle.error = function( msg ) {
- throw new Error( "Syntax error, unrecognized expression: " + msg );
-};
-
-function tokenize( selector, parseOnly ) {
- var matched, match, tokens, type,
- soFar, groups, preFilters,
- cached = tokenCache[ expando ][ selector + " " ];
-
- if ( cached ) {
- return parseOnly ? 0 : cached.slice( 0 );
- }
-
- soFar = selector;
- groups = [];
- preFilters = Expr.preFilter;
-
- while ( soFar ) {
-
- // Comma and first run
- if ( !matched || (match = rcomma.exec( soFar )) ) {
- if ( match ) {
- // Don't consume trailing commas as valid
- soFar = soFar.slice( match[0].length ) || soFar;
- }
- groups.push( tokens = [] );
- }
-
- matched = false;
-
- // Combinators
- if ( (match = rcombinators.exec( soFar )) ) {
- tokens.push( matched = new Token( match.shift() ) );
- soFar = soFar.slice( matched.length );
-
- // Cast descendant combinators to space
- matched.type = match[0].replace( rtrim, " " );
- }
-
- // Filters
- for ( type in Expr.filter ) {
- if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
- (match = preFilters[ type ]( match ))) ) {
-
- tokens.push( matched = new Token( match.shift() ) );
- soFar = soFar.slice( matched.length );
- matched.type = type;
- matched.matches = match;
- }
- }
-
- if ( !matched ) {
- break;
- }
- }
-
- // Return the length of the invalid excess
- // if we're just parsing
- // Otherwise, throw an error or return tokens
- return parseOnly ?
- soFar.length :
- soFar ?
- Sizzle.error( selector ) :
- // Cache the tokens
- tokenCache( selector, groups ).slice( 0 );
-}
-
-function addCombinator( matcher, combinator, base ) {
- var dir = combinator.dir,
- checkNonElements = base && combinator.dir === "parentNode",
- doneName = done++;
-
- return combinator.first ?
- // Check against closest ancestor/preceding element
- function( elem, context, xml ) {
- while ( (elem = elem[ dir ]) ) {
- if ( checkNonElements || elem.nodeType === 1 ) {
- return matcher( elem, context, xml );
- }
- }
- } :
-
- // Check against all ancestor/preceding elements
- function( elem, context, xml ) {
- // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching
- if ( !xml ) {
- var cache,
- dirkey = dirruns + " " + doneName + " ",
- cachedkey = dirkey + cachedruns;
- while ( (elem = elem[ dir ]) ) {
- if ( checkNonElements || elem.nodeType === 1 ) {
- if ( (cache = elem[ expando ]) === cachedkey ) {
- return elem.sizset;
- } else if ( typeof cache === "string" && cache.indexOf(dirkey) === 0 ) {
- if ( elem.sizset ) {
- return elem;
- }
- } else {
- elem[ expando ] = cachedkey;
- if ( matcher( elem, context, xml ) ) {
- elem.sizset = true;
- return elem;
- }
- elem.sizset = false;
- }
- }
- }
- } else {
- while ( (elem = elem[ dir ]) ) {
- if ( checkNonElements || elem.nodeType === 1 ) {
- if ( matcher( elem, context, xml ) ) {
- return elem;
- }
- }
- }
- }
- };
-}
-
-function elementMatcher( matchers ) {
- return matchers.length > 1 ?
- function( elem, context, xml ) {
- var i = matchers.length;
- while ( i-- ) {
- if ( !matchers[i]( elem, context, xml ) ) {
- return false;
- }
- }
- return true;
- } :
- matchers[0];
-}
-
-function condense( unmatched, map, filter, context, xml ) {
- var elem,
- newUnmatched = [],
- i = 0,
- len = unmatched.length,
- mapped = map != null;
-
- for ( ; i < len; i++ ) {
- if ( (elem = unmatched[i]) ) {
- if ( !filter || filter( elem, context, xml ) ) {
- newUnmatched.push( elem );
- if ( mapped ) {
- map.push( i );
- }
- }
- }
- }
-
- return newUnmatched;
-}
-
-function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
- if ( postFilter && !postFilter[ expando ] ) {
- postFilter = setMatcher( postFilter );
- }
- if ( postFinder && !postFinder[ expando ] ) {
- postFinder = setMatcher( postFinder, postSelector );
- }
- return markFunction(function( seed, results, context, xml ) {
- var temp, i, elem,
- preMap = [],
- postMap = [],
- preexisting = results.length,
-
- // Get initial elements from seed or context
- elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
-
- // Prefilter to get matcher input, preserving a map for seed-results synchronization
- matcherIn = preFilter && ( seed || !selector ) ?
- condense( elems, preMap, preFilter, context, xml ) :
- elems,
-
- matcherOut = matcher ?
- // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
- postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
-
- // ...intermediate processing is necessary
- [] :
-
- // ...otherwise use results directly
- results :
- matcherIn;
-
- // Find primary matches
- if ( matcher ) {
- matcher( matcherIn, matcherOut, context, xml );
- }
-
- // Apply postFilter
- if ( postFilter ) {
- temp = condense( matcherOut, postMap );
- postFilter( temp, [], context, xml );
-
- // Un-match failing elements by moving them back to matcherIn
- i = temp.length;
- while ( i-- ) {
- if ( (elem = temp[i]) ) {
- matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
- }
- }
- }
-
- if ( seed ) {
- if ( postFinder || preFilter ) {
- if ( postFinder ) {
- // Get the final matcherOut by condensing this intermediate into postFinder contexts
- temp = [];
- i = matcherOut.length;
- while ( i-- ) {
- if ( (elem = matcherOut[i]) ) {
- // Restore matcherIn since elem is not yet a final match
- temp.push( (matcherIn[i] = elem) );
- }
- }
- postFinder( null, (matcherOut = []), temp, xml );
- }
-
- // Move matched elements from seed to results to keep them synchronized
- i = matcherOut.length;
- while ( i-- ) {
- if ( (elem = matcherOut[i]) &&
- (temp = postFinder ? indexOf.call( seed, elem ) : preMap[i]) > -1 ) {
-
- seed[temp] = !(results[temp] = elem);
- }
- }
- }
-
- // Add elements to results, through postFinder if defined
- } else {
- matcherOut = condense(
- matcherOut === results ?
- matcherOut.splice( preexisting, matcherOut.length ) :
- matcherOut
- );
- if ( postFinder ) {
- postFinder( null, results, matcherOut, xml );
- } else {
- push.apply( results, matcherOut );
- }
- }
- });
-}
-
-function matcherFromTokens( tokens ) {
- var checkContext, matcher, j,
- len = tokens.length,
- leadingRelative = Expr.relative[ tokens[0].type ],
- implicitRelative = leadingRelative || Expr.relative[" "],
- i = leadingRelative ? 1 : 0,
-
- // The foundational matcher ensures that elements are reachable from top-level context(s)
- matchContext = addCombinator( function( elem ) {
- return elem === checkContext;
- }, implicitRelative, true ),
- matchAnyContext = addCombinator( function( elem ) {
- return indexOf.call( checkContext, elem ) > -1;
- }, implicitRelative, true ),
- matchers = [ function( elem, context, xml ) {
- return ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
- (checkContext = context).nodeType ?
- matchContext( elem, context, xml ) :
- matchAnyContext( elem, context, xml ) );
- } ];
-
- for ( ; i < len; i++ ) {
- if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
- matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ];
- } else {
- matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
-
- // Return special upon seeing a positional matcher
- if ( matcher[ expando ] ) {
- // Find the next relative operator (if any) for proper handling
- j = ++i;
- for ( ; j < len; j++ ) {
- if ( Expr.relative[ tokens[j].type ] ) {
- break;
- }
- }
- return setMatcher(
- i > 1 && elementMatcher( matchers ),
- i > 1 && tokens.slice( 0, i - 1 ).join("").replace( rtrim, "$1" ),
- matcher,
- i < j && matcherFromTokens( tokens.slice( i, j ) ),
- j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
- j < len && tokens.join("")
- );
- }
- matchers.push( matcher );
- }
- }
-
- return elementMatcher( matchers );
-}
-
-function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
- var bySet = setMatchers.length > 0,
- byElement = elementMatchers.length > 0,
- superMatcher = function( seed, context, xml, results, expandContext ) {
- var elem, j, matcher,
- setMatched = [],
- matchedCount = 0,
- i = "0",
- unmatched = seed && [],
- outermost = expandContext != null,
- contextBackup = outermostContext,
- // We must always have either seed elements or context
- elems = seed || byElement && Expr.find["TAG"]( "*", expandContext && context.parentNode || context ),
- // Nested matchers should use non-integer dirruns
- dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.E);
-
- if ( outermost ) {
- outermostContext = context !== document && context;
- cachedruns = superMatcher.el;
- }
-
- // Add elements passing elementMatchers directly to results
- for ( ; (elem = elems[i]) != null; i++ ) {
- if ( byElement && elem ) {
- for ( j = 0; (matcher = elementMatchers[j]); j++ ) {
- if ( matcher( elem, context, xml ) ) {
- results.push( elem );
- break;
- }
- }
- if ( outermost ) {
- dirruns = dirrunsUnique;
- cachedruns = ++superMatcher.el;
- }
- }
-
- // Track unmatched elements for set filters
- if ( bySet ) {
- // They will have gone through all possible matchers
- if ( (elem = !matcher && elem) ) {
- matchedCount--;
- }
-
- // Lengthen the array for every element, matched or not
- if ( seed ) {
- unmatched.push( elem );
- }
- }
- }
-
- // Apply set filters to unmatched elements
- matchedCount += i;
- if ( bySet && i !== matchedCount ) {
- for ( j = 0; (matcher = setMatchers[j]); j++ ) {
- matcher( unmatched, setMatched, context, xml );
- }
-
- if ( seed ) {
- // Reintegrate element matches to eliminate the need for sorting
- if ( matchedCount > 0 ) {
- while ( i-- ) {
- if ( !(unmatched[i] || setMatched[i]) ) {
- setMatched[i] = pop.call( results );
- }
- }
- }
-
- // Discard index placeholder values to get only actual matches
- setMatched = condense( setMatched );
- }
-
- // Add matches to results
- push.apply( results, setMatched );
-
- // Seedless set matches succeeding multiple successful matchers stipulate sorting
- if ( outermost && !seed && setMatched.length > 0 &&
- ( matchedCount + setMatchers.length ) > 1 ) {
-
- Sizzle.uniqueSort( results );
- }
- }
-
- // Override manipulation of globals by nested matchers
- if ( outermost ) {
- dirruns = dirrunsUnique;
- outermostContext = contextBackup;
- }
-
- return unmatched;
- };
-
- superMatcher.el = 0;
- return bySet ?
- markFunction( superMatcher ) :
- superMatcher;
-}
-
-compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) {
- var i,
- setMatchers = [],
- elementMatchers = [],
- cached = compilerCache[ expando ][ selector + " " ];
-
- if ( !cached ) {
- // Generate a function of recursive functions that can be used to check each element
- if ( !group ) {
- group = tokenize( selector );
- }
- i = group.length;
- while ( i-- ) {
- cached = matcherFromTokens( group[i] );
- if ( cached[ expando ] ) {
- setMatchers.push( cached );
- } else {
- elementMatchers.push( cached );
- }
- }
-
- // Cache the compiled function
- cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
- }
- return cached;
-};
-
-function multipleContexts( selector, contexts, results ) {
- var i = 0,
- len = contexts.length;
- for ( ; i < len; i++ ) {
- Sizzle( selector, contexts[i], results );
- }
- return results;
-}
-
-function select( selector, context, results, seed, xml ) {
- var i, tokens, token, type, find,
- match = tokenize( selector ),
- j = match.length;
-
- if ( !seed ) {
- // Try to minimize operations if there is only one group
- if ( match.length === 1 ) {
-
- // Take a shortcut and set the context if the root selector is an ID
- tokens = match[0] = match[0].slice( 0 );
- if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
- context.nodeType === 9 && !xml &&
- Expr.relative[ tokens[1].type ] ) {
-
- context = Expr.find["ID"]( token.matches[0].replace( rbackslash, "" ), context, xml )[0];
- if ( !context ) {
- return results;
- }
-
- selector = selector.slice( tokens.shift().length );
- }
-
- // Fetch a seed set for right-to-left matching
- for ( i = matchExpr["POS"].test( selector ) ? -1 : tokens.length - 1; i >= 0; i-- ) {
- token = tokens[i];
-
- // Abort if we hit a combinator
- if ( Expr.relative[ (type = token.type) ] ) {
- break;
- }
- if ( (find = Expr.find[ type ]) ) {
- // Search, expanding context for leading sibling combinators
- if ( (seed = find(
- token.matches[0].replace( rbackslash, "" ),
- rsibling.test( tokens[0].type ) && context.parentNode || context,
- xml
- )) ) {
-
- // If seed is empty or no tokens remain, we can return early
- tokens.splice( i, 1 );
- selector = seed.length && tokens.join("");
- if ( !selector ) {
- push.apply( results, slice.call( seed, 0 ) );
- return results;
- }
-
- break;
- }
- }
- }
- }
- }
-
- // Compile and execute a filtering function
- // Provide `match` to avoid retokenization if we modified the selector above
- compile( selector, match )(
- seed,
- context,
- xml,
- results,
- rsibling.test( selector )
- );
- return results;
-}
-
-if ( document.querySelectorAll ) {
- (function() {
- var disconnectedMatch,
- oldSelect = select,
- rescape = /'|\\/g,
- rattributeQuotes = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,
-
- // qSa(:focus) reports false when true (Chrome 21), no need to also add to buggyMatches since matches checks buggyQSA
- // A support test would require too much code (would include document ready)
- rbuggyQSA = [ ":focus" ],
-
- // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
- // A support test would require too much code (would include document ready)
- // just skip matchesSelector for :active
- rbuggyMatches = [ ":active" ],
- matches = docElem.matchesSelector ||
- docElem.mozMatchesSelector ||
- docElem.webkitMatchesSelector ||
- docElem.oMatchesSelector ||
- docElem.msMatchesSelector;
-
- // Build QSA regex
- // Regex strategy adopted from Diego Perini
- assert(function( div ) {
- // Select is set to empty string on purpose
- // This is to test IE's treatment of not explictly
- // setting a boolean content attribute,
- // since its presence should be enough
- // http://bugs.jquery.com/ticket/12359
- div.innerHTML = " ";
-
- // IE8 - Some boolean attributes are not treated correctly
- if ( !div.querySelectorAll("[selected]").length ) {
- rbuggyQSA.push( "\\[" + whitespace + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)" );
- }
-
- // Webkit/Opera - :checked should return selected option elements
- // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
- // IE8 throws error here (do not put tests after this one)
- if ( !div.querySelectorAll(":checked").length ) {
- rbuggyQSA.push(":checked");
- }
- });
-
- assert(function( div ) {
-
- // Opera 10-12/IE9 - ^= $= *= and empty values
- // Should not select anything
- div.innerHTML = "
";
- if ( div.querySelectorAll("[test^='']").length ) {
- rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:\"\"|'')" );
- }
-
- // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
- // IE8 throws error here (do not put tests after this one)
- div.innerHTML = " ";
- if ( !div.querySelectorAll(":enabled").length ) {
- rbuggyQSA.push(":enabled", ":disabled");
- }
- });
-
- // rbuggyQSA always contains :focus, so no need for a length check
- rbuggyQSA = /* rbuggyQSA.length && */ new RegExp( rbuggyQSA.join("|") );
-
- select = function( selector, context, results, seed, xml ) {
- // Only use querySelectorAll when not filtering,
- // when this is not xml,
- // and when no QSA bugs apply
- if ( !seed && !xml && !rbuggyQSA.test( selector ) ) {
- var groups, i,
- old = true,
- nid = expando,
- newContext = context,
- newSelector = context.nodeType === 9 && selector;
-
- // 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
- if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
- groups = tokenize( selector );
-
- if ( (old = context.getAttribute("id")) ) {
- nid = old.replace( rescape, "\\$&" );
- } else {
- context.setAttribute( "id", nid );
- }
- nid = "[id='" + nid + "'] ";
-
- i = groups.length;
- while ( i-- ) {
- groups[i] = nid + groups[i].join("");
- }
- newContext = rsibling.test( selector ) && context.parentNode || context;
- newSelector = groups.join(",");
- }
-
- if ( newSelector ) {
- try {
- push.apply( results, slice.call( newContext.querySelectorAll(
- newSelector
- ), 0 ) );
- return results;
- } catch(qsaError) {
- } finally {
- if ( !old ) {
- context.removeAttribute("id");
- }
- }
- }
- }
-
- return oldSelect( selector, context, results, seed, xml );
- };
-
- if ( matches ) {
- assert(function( div ) {
- // Check to see if it's possible to do matchesSelector
- // on a disconnected node (IE 9)
- disconnectedMatch = matches.call( div, "div" );
-
- // This should fail with an exception
- // Gecko does not error, returns false instead
- try {
- matches.call( div, "[test!='']:sizzle" );
- rbuggyMatches.push( "!=", pseudos );
- } catch ( e ) {}
- });
-
- // rbuggyMatches always contains :active and :focus, so no need for a length check
- rbuggyMatches = /* rbuggyMatches.length && */ new RegExp( rbuggyMatches.join("|") );
-
- Sizzle.matchesSelector = function( elem, expr ) {
- // Make sure that attribute selectors are quoted
- expr = expr.replace( rattributeQuotes, "='$1']" );
-
- // rbuggyMatches always contains :active, so no need for an existence check
- if ( !isXML( elem ) && !rbuggyMatches.test( expr ) && !rbuggyQSA.test( expr ) ) {
- try {
- var ret = matches.call( elem, 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
- elem.document && elem.document.nodeType !== 11 ) {
- return ret;
- }
- } catch(e) {}
- }
-
- return Sizzle( expr, null, null, [ elem ] ).length > 0;
- };
- }
- })();
-}
-
-// Deprecated
-Expr.pseudos["nth"] = Expr.pseudos["eq"];
-
-// Back-compat
-function setFilters() {}
-Expr.filters = setFilters.prototype = Expr.pseudos;
-Expr.setFilters = new setFilters();
-
-// Override sizzle attribute retrieval
-Sizzle.attr = jQuery.attr;
-jQuery.find = Sizzle;
-jQuery.expr = Sizzle.selectors;
-jQuery.expr[":"] = jQuery.expr.pseudos;
-jQuery.unique = Sizzle.uniqueSort;
-jQuery.text = Sizzle.getText;
-jQuery.isXMLDoc = Sizzle.isXML;
-jQuery.contains = Sizzle.contains;
-
-
-})( window );
-var runtil = /Until$/,
- rparentsprev = /^(?:parents|prev(?:Until|All))/,
- isSimple = /^.[^:#\[\.,]*$/,
- rneedsContext = jQuery.expr.match.needsContext,
- // 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 i, l, length, n, r, ret,
- self = this;
-
- 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;
- }
- }
- });
- }
-
- ret = this.pushStack( "", "find", selector );
-
- 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 i,
- targets = jQuery( target, this ),
- len = targets.length;
-
- return this.filter(function() {
- for ( i = 0; i < len; 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" ?
- // If this is a positional/relative selector, check membership in the returned set
- // so $("p:first").is("p:last") won't return true for a doc with two "p".
- rneedsContext.test( selector ) ?
- jQuery( selector, this.context ).index( this[0] ) >= 0 :
- jQuery.filter( selector, this ).length > 0 :
- this.filter( selector ).length > 0 );
- },
-
- closest: function( selectors, context ) {
- var cur,
- i = 0,
- l = this.length,
- ret = [],
- pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ?
- jQuery( selectors, context || this.context ) :
- 0;
-
- for ( ; i < l; i++ ) {
- cur = this[i];
-
- while ( cur && cur.ownerDocument && cur !== context && cur.nodeType !== 11 ) {
- if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
- ret.push( cur );
- break;
- }
- cur = cur.parentNode;
- }
- }
-
- 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 ) );
- },
-
- addBack: function( selector ) {
- return this.add( selector == null ?
- this.prevObject : this.prevObject.filter(selector)
- );
- }
-});
-
-jQuery.fn.andSelf = jQuery.fn.addBack;
-
-// 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;
-}
-
-function sibling( cur, dir ) {
- do {
- cur = cur[ dir ];
- } while ( cur && cur.nodeType !== 1 );
-
- return cur;
-}
-
-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 sibling( elem, "nextSibling" );
- },
- prev: function( elem ) {
- return sibling( elem, "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.merge( [], elem.childNodes );
- }
-}, function( name, fn ) {
- jQuery.fn[ name ] = function( until, selector ) {
- var ret = jQuery.map( this, fn, until );
-
- 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 && rparentsprev.test( name ) ) {
- ret = ret.reverse();
- }
-
- return this.pushStack( ret, name, core_slice.call( arguments ).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;
- },
-
- 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;
- });
-}
-function createSafeFragment( document ) {
- var list = nodeNames.split( "|" ),
- safeFrag = document.createDocumentFragment();
-
- if ( safeFrag.createElement ) {
- while ( list.length ) {
- safeFrag.createElement(
- list.pop()
- );
- }
- }
- return safeFrag;
-}
-
-var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|" +
- "header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
- rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g,
- rleadingWhitespace = /^\s+/,
- rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
- rtagName = /<([\w:]+)/,
- rtbody = / ]", "i"),
- rcheckableType = /^(?:checkbox|radio)$/,
- // checked="checked" or checked
- rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
- rscriptType = /\/(java|ecma)script/i,
- rcleanScript = /^\s*\s*$/g,
- wrapMap = {
- option: [ 1, "", " " ],
- legend: [ 1, "", " " ],
- thead: [ 1, "" ],
- tr: [ 2, "" ],
- td: [ 3, "" ],
- col: [ 2, "" ],
- area: [ 1, "", " " ],
- _default: [ 0, "", "" ]
- },
- safeFragment = createSafeFragment( document ),
- fragmentDiv = safeFragment.appendChild( document.createElement("div") );
-
-wrapMap.optgroup = wrapMap.option;
-wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
-wrapMap.th = wrapMap.td;
-
-// IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags,
-// unless wrapped in a div with non-breaking characters in front of it.
-if ( !jQuery.support.htmlSerialize ) {
- wrapMap._default = [ 1, "X", "
" ];
-}
-
-jQuery.fn.extend({
- text: function( value ) {
- return jQuery.access( this, function( value ) {
- return value === undefined ?
- jQuery.text( this ) :
- this.empty().append( ( this[0] && this[0].ownerDocument || document ).createTextNode( value ) );
- }, null, value, arguments.length );
- },
-
- 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 ) {
- var isFunction = jQuery.isFunction( html );
-
- return this.each(function(i) {
- jQuery( this ).wrapAll( isFunction ? html.call(this, i) : 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.nodeType === 11 ) {
- this.appendChild( elem );
- }
- });
- },
-
- prepend: function() {
- return this.domManip(arguments, true, function( elem ) {
- if ( this.nodeType === 1 || this.nodeType === 11 ) {
- this.insertBefore( elem, this.firstChild );
- }
- });
- },
-
- before: function() {
- if ( !isDisconnected( this[0] ) ) {
- return this.domManip(arguments, false, function( elem ) {
- this.parentNode.insertBefore( elem, this );
- });
- }
-
- if ( arguments.length ) {
- var set = jQuery.clean( arguments );
- return this.pushStack( jQuery.merge( set, this ), "before", this.selector );
- }
- },
-
- after: function() {
- if ( !isDisconnected( this[0] ) ) {
- return this.domManip(arguments, false, function( elem ) {
- this.parentNode.insertBefore( elem, this.nextSibling );
- });
- }
-
- if ( arguments.length ) {
- var set = jQuery.clean( arguments );
- return this.pushStack( jQuery.merge( this, set ), "after", this.selector );
- }
- },
-
- // keepData is for internal use only--do not document
- remove: function( selector, keepData ) {
- var elem,
- i = 0;
-
- for ( ; (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() {
- var elem,
- i = 0;
-
- for ( ; (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 ) {
- return jQuery.access( this, function( value ) {
- var elem = this[0] || {},
- i = 0,
- l = this.length;
-
- if ( value === undefined ) {
- return elem.nodeType === 1 ?
- elem.innerHTML.replace( rinlinejQuery, "" ) :
- undefined;
- }
-
- // See if we can take a shortcut and just use innerHTML
- if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
- ( jQuery.support.htmlSerialize || !rnoshimcache.test( value ) ) &&
- ( jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value ) ) &&
- !wrapMap[ ( rtagName.exec( value ) || ["", ""] )[1].toLowerCase() ] ) {
-
- value = value.replace( rxhtmlTag, "<$1>$2>" );
-
- try {
- for (; i < l; i++ ) {
- // Remove element nodes and prevent memory leaks
- elem = this[i] || {};
- if ( elem.nodeType === 1 ) {
- jQuery.cleanData( elem.getElementsByTagName( "*" ) );
- elem.innerHTML = value;
- }
- }
-
- elem = 0;
-
- // If using innerHTML throws an exception, use the fallback method
- } catch(e) {}
- }
-
- if ( elem ) {
- this.empty().append( value );
- }
- }, null, value, arguments.length );
- },
-
- replaceWith: function( value ) {
- if ( !isDisconnected( this[0] ) ) {
- // 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 );
- }
- });
- }
-
- 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 ) {
-
- // Flatten any nested arrays
- args = [].concat.apply( [], args );
-
- var results, first, fragment, iNoClone,
- i = 0,
- value = args[0],
- scripts = [],
- l = this.length;
-
- // We can't cloneNode fragments that contain checked, in WebKit
- if ( !jQuery.support.checkClone && l > 1 && typeof value === "string" && rchecked.test( value ) ) {
- return this.each(function() {
- jQuery(this).domManip( args, table, callback );
- });
- }
-
- 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] ) {
- results = jQuery.buildFragment( args, this, scripts );
- fragment = results.fragment;
- first = fragment.firstChild;
-
- if ( fragment.childNodes.length === 1 ) {
- fragment = first;
- }
-
- if ( first ) {
- table = table && jQuery.nodeName( first, "tr" );
-
- // Use the original fragment for the last item instead of the first because it can end up
- // being emptied incorrectly in certain situations (#8070).
- // Fragments from the fragment cache must always be cloned and never used in place.
- for ( iNoClone = results.cacheable || l - 1; i < l; i++ ) {
- callback.call(
- table && jQuery.nodeName( this[i], "table" ) ?
- findOrAppend( this[i], "tbody" ) :
- this[i],
- i === iNoClone ?
- fragment :
- jQuery.clone( fragment, true, true )
- );
- }
- }
-
- // Fix #11809: Avoid leaking memory
- fragment = first = null;
-
- if ( scripts.length ) {
- jQuery.each( scripts, function( i, elem ) {
- if ( elem.src ) {
- if ( jQuery.ajax ) {
- jQuery.ajax({
- url: elem.src,
- type: "GET",
- dataType: "script",
- async: false,
- global: false,
- "throws": true
- });
- } else {
- jQuery.error("no ajax");
- }
- } else {
- jQuery.globalEval( ( elem.text || elem.textContent || elem.innerHTML || "" ).replace( rcleanScript, "" ) );
- }
-
- if ( elem.parentNode ) {
- elem.parentNode.removeChild( elem );
- }
- });
- }
- }
-
- return this;
- }
-});
-
-function findOrAppend( elem, tag ) {
- return elem.getElementsByTagName( tag )[0] || elem.appendChild( elem.ownerDocument.createElement( tag ) );
-}
-
-function cloneCopyEvent( src, dest ) {
-
- if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) {
- return;
- }
-
- var type, i, l,
- oldData = jQuery._data( src ),
- curData = jQuery._data( dest, oldData ),
- events = oldData.events;
-
- if ( events ) {
- delete curData.handle;
- curData.events = {};
-
- for ( type in events ) {
- for ( i = 0, l = events[ type ].length; i < l; i++ ) {
- jQuery.event.add( dest, type, events[ type ][ i ] );
- }
- }
- }
-
- // make the cloned public data object a copy from the original
- if ( curData.data ) {
- curData.data = jQuery.extend( {}, curData.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();
-
- if ( nodeName === "object" ) {
- // IE6-10 improperly clones children of object elements using classid.
- // IE10 throws NoModificationAllowedError if parent is null, #12132.
- if ( dest.parentNode ) {
- dest.outerHTML = src.outerHTML;
- }
-
- // This path appears unavoidable for IE9. When cloning an object
- // element in IE9, the outerHTML strategy above is not sufficient.
- // If the src has innerHTML and the destination does not,
- // copy the src.innerHTML into the dest.innerHTML. #10324
- if ( jQuery.support.html5Clone && (src.innerHTML && !jQuery.trim(dest.innerHTML)) ) {
- dest.innerHTML = src.innerHTML;
- }
-
- } else if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
- // 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
-
- 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;
-
- // IE blanks contents when cloning scripts
- } else if ( nodeName === "script" && dest.text !== src.text ) {
- dest.text = src.text;
- }
-
- // Event data gets referenced instead of copied if the expando
- // gets copied too
- dest.removeAttribute( jQuery.expando );
-}
-
-jQuery.buildFragment = function( args, context, scripts ) {
- var fragment, cacheable, cachehit,
- first = args[ 0 ];
-
- // Set context from what may come in as undefined or a jQuery collection or a node
- // Updated to fix #12266 where accessing context[0] could throw an exception in IE9/10 &
- // also doubles as fix for #8950 where plain objects caused createDocumentFragment exception
- context = context || document;
- context = !context.nodeType && context[0] || context;
- context = context.ownerDocument || context;
-
- // 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 or elements in a fragment
- // Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache
- // Lastly, IE6,7,8 will not correctly reuse cached fragments that were created from unknown elems #10501
- if ( args.length === 1 && typeof first === "string" && first.length < 512 && context === document &&
- first.charAt(0) === "<" && !rnocache.test( first ) &&
- (jQuery.support.checkClone || !rchecked.test( first )) &&
- (jQuery.support.html5Clone || !rnoshimcache.test( first )) ) {
-
- // Mark cacheable and look for a hit
- cacheable = true;
- fragment = jQuery.fragments[ first ];
- cachehit = fragment !== undefined;
- }
-
- if ( !fragment ) {
- fragment = context.createDocumentFragment();
- jQuery.clean( args, context, fragment, scripts );
-
- // Update the cache, but only store false
- // unless this is a second parsing of the same content
- if ( cacheable ) {
- jQuery.fragments[ first ] = cachehit && fragment;
- }
- }
-
- 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 elems,
- i = 0,
- ret = [],
- insert = jQuery( selector ),
- l = insert.length,
- parent = this.length === 1 && this[0].parentNode;
-
- if ( (parent == null || parent && parent.nodeType === 11 && parent.childNodes.length === 1) && l === 1 ) {
- insert[ original ]( this[0] );
- return this;
- } else {
- for ( ; i < l; i++ ) {
- 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 ( typeof elem.getElementsByTagName !== "undefined" ) {
- return elem.getElementsByTagName( "*" );
-
- } else if ( typeof elem.querySelectorAll !== "undefined" ) {
- return elem.querySelectorAll( "*" );
-
- } else {
- return [];
- }
-}
-
-// Used in clean, fixes the defaultChecked property
-function fixDefaultChecked( elem ) {
- if ( rcheckableType.test( elem.type ) ) {
- elem.defaultChecked = elem.checked;
- }
-}
-
-jQuery.extend({
- clone: function( elem, dataAndEvents, deepDataAndEvents ) {
- var srcElements,
- destElements,
- i,
- clone;
-
- if ( jQuery.support.html5Clone || jQuery.isXMLDoc(elem) || !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) {
- clone = elem.cloneNode( true );
-
- // IE<=8 does not properly clone detached, unknown element nodes
- } else {
- fragmentDiv.innerHTML = elem.outerHTML;
- fragmentDiv.removeChild( clone = fragmentDiv.firstChild );
- }
-
- 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 i, j, elem, tag, wrap, depth, div, hasBody, tbody, len, handleScript, jsTags,
- safe = context === document && safeFragment,
- ret = [];
-
- // Ensure that context is a document
- if ( !context || typeof context.createDocumentFragment === "undefined" ) {
- context = document;
- }
-
- // Use the already-created safe fragment if context permits
- for ( i = 0; (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 {
- // Ensure a safe container in which to render the html
- safe = safe || createSafeFragment( context );
- div = context.createElement("div");
- safe.appendChild( div );
-
- // Fix "XHTML"-style tags in all browsers
- elem = elem.replace(rxhtmlTag, "<$1>$2>");
-
- // Go to html and back, then peel off extra wrappers
- tag = ( rtagName.exec( elem ) || ["", ""] )[1].toLowerCase();
- wrap = wrapMap[ tag ] || wrapMap._default;
- depth = wrap[0];
- div.innerHTML = wrap[1] + elem + wrap[2];
-
- // Move to the right depth
- while ( depth-- ) {
- div = div.lastChild;
- }
-
- // Remove IE's autoinserted from table fragments
- if ( !jQuery.support.tbody ) {
-
- // String was a , *may* have spurious
- hasBody = rtbody.test(elem);
- tbody = tag === "table" && !hasBody ?
- div.firstChild && div.firstChild.childNodes :
-
- // String was a bare or
- wrap[1] === "" && !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;
-
- // Take out of fragment container (we need a fresh div each time)
- div.parentNode.removeChild( div );
- }
- }
-
- if ( elem.nodeType ) {
- ret.push( elem );
- } else {
- jQuery.merge( ret, elem );
- }
- }
-
- // Fix #11356: Clear elements from safeFragment
- if ( div ) {
- elem = div = safe = null;
- }
-
- // Reset defaultChecked for any radios and checkboxes
- // about to be appended to the DOM in IE 6/7 (#8060)
- if ( !jQuery.support.appendChecked ) {
- for ( i = 0; (elem = ret[i]) != null; i++ ) {
- if ( jQuery.nodeName( elem, "input" ) ) {
- fixDefaultChecked( elem );
- } else if ( typeof elem.getElementsByTagName !== "undefined" ) {
- jQuery.grep( elem.getElementsByTagName("input"), fixDefaultChecked );
- }
- }
- }
-
- // Append elements to a provided document fragment
- if ( fragment ) {
- // Special handling of each script element
- handleScript = function( elem ) {
- // Check if we consider it executable
- if ( !elem.type || rscriptType.test( elem.type ) ) {
- // Detach the script and store it in the scripts array (if provided) or the fragment
- // Return truthy to indicate that it has been handled
- return scripts ?
- scripts.push( elem.parentNode ? elem.parentNode.removeChild( elem ) : elem ) :
- fragment.appendChild( elem );
- }
- };
-
- for ( i = 0; (elem = ret[i]) != null; i++ ) {
- // Check if we're done after handling an executable script
- if ( !( jQuery.nodeName( elem, "script" ) && handleScript( elem ) ) ) {
- // Append to fragment and handle embedded scripts
- fragment.appendChild( elem );
- if ( typeof elem.getElementsByTagName !== "undefined" ) {
- // handleScript alters the DOM, so use jQuery.merge to ensure snapshot iteration
- jsTags = jQuery.grep( jQuery.merge( [], elem.getElementsByTagName("script") ), handleScript );
-
- // Splice the scripts into ret after their former ancestor and advance our index beyond them
- ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) );
- i += jsTags.length;
- }
- }
- }
- }
-
- return ret;
- },
-
- cleanData: function( elems, /* internal */ acceptData ) {
- var data, id, elem, type,
- i = 0,
- internalKey = jQuery.expando,
- cache = jQuery.cache,
- deleteExpando = jQuery.support.deleteExpando,
- special = jQuery.event.special;
-
- for ( ; (elem = elems[i]) != null; i++ ) {
-
- if ( acceptData || jQuery.acceptData( elem ) ) {
-
- id = elem[ internalKey ];
- data = id && cache[ id ];
-
- if ( data ) {
- if ( data.events ) {
- for ( 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 );
- }
- }
- }
-
- // Remove cache only if it was not already removed by jQuery.event.remove
- if ( cache[ id ] ) {
-
- delete cache[ id ];
-
- // 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 ( deleteExpando ) {
- delete elem[ internalKey ];
-
- } else if ( elem.removeAttribute ) {
- elem.removeAttribute( internalKey );
-
- } else {
- elem[ internalKey ] = null;
- }
-
- jQuery.deletedIds.push( id );
- }
- }
- }
- }
- }
-});
-// Limit scope pollution from any deprecated API
-(function() {
-
-var matched, browser;
-
-// Use of jQuery.browser is frowned upon.
-// More details: http://api.jquery.com/jQuery.browser
-// jQuery.uaMatch maintained for back-compat
-jQuery.uaMatch = function( ua ) {
- ua = ua.toLowerCase();
-
- var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
- /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
- /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
- /(msie) ([\w.]+)/.exec( ua ) ||
- ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
- [];
-
- return {
- browser: match[ 1 ] || "",
- version: match[ 2 ] || "0"
- };
-};
-
-matched = jQuery.uaMatch( navigator.userAgent );
-browser = {};
-
-if ( matched.browser ) {
- browser[ matched.browser ] = true;
- browser.version = matched.version;
-}
-
-// Chrome is Webkit, but Webkit is also Safari.
-if ( browser.chrome ) {
- browser.webkit = true;
-} else if ( browser.webkit ) {
- browser.safari = true;
-}
-
-jQuery.browser = browser;
-
-jQuery.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;
-};
-
-})();
-var curCSS, iframe, iframeDoc,
- ralpha = /alpha\([^)]*\)/i,
- ropacity = /opacity=([^)]*)/,
- rposition = /^(top|right|bottom|left)$/,
- // swappable if display is none or starts with table except "table", "table-cell", or "table-caption"
- // see here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
- rdisplayswap = /^(none|table(?!-c[ea]).+)/,
- rmargin = /^margin/,
- rnumsplit = new RegExp( "^(" + core_pnum + ")(.*)$", "i" ),
- rnumnonpx = new RegExp( "^(" + core_pnum + ")(?!px)[a-z%]+$", "i" ),
- rrelNum = new RegExp( "^([-+])=(" + core_pnum + ")", "i" ),
- elemdisplay = { BODY: "block" },
-
- cssShow = { position: "absolute", visibility: "hidden", display: "block" },
- cssNormalTransform = {
- letterSpacing: 0,
- fontWeight: 400
- },
-
- cssExpand = [ "Top", "Right", "Bottom", "Left" ],
- cssPrefixes = [ "Webkit", "O", "Moz", "ms" ],
-
- eventsToggle = jQuery.fn.toggle;
-
-// return a css property mapped to a potentially vendor prefixed property
-function vendorPropName( style, name ) {
-
- // shortcut for names that are not vendor prefixed
- if ( name in style ) {
- return name;
- }
-
- // check for vendor prefixed names
- var capName = name.charAt(0).toUpperCase() + name.slice(1),
- origName = name,
- i = cssPrefixes.length;
-
- while ( i-- ) {
- name = cssPrefixes[ i ] + capName;
- if ( name in style ) {
- return name;
- }
- }
-
- return origName;
-}
-
-function isHidden( elem, el ) {
- elem = el || elem;
- return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem );
-}
-
-function showHide( elements, show ) {
- var elem, display,
- values = [],
- index = 0,
- length = elements.length;
-
- for ( ; index < length; index++ ) {
- elem = elements[ index ];
- if ( !elem.style ) {
- continue;
- }
- values[ index ] = jQuery._data( elem, "olddisplay" );
- if ( show ) {
- // Reset the inline display of this element to learn if it is
- // being hidden by cascaded rules or not
- if ( !values[ index ] && elem.style.display === "none" ) {
- 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 ( elem.style.display === "" && isHidden( elem ) ) {
- values[ index ] = jQuery._data( elem, "olddisplay", css_defaultDisplay(elem.nodeName) );
- }
- } else {
- display = curCSS( elem, "display" );
-
- if ( !values[ index ] && display !== "none" ) {
- jQuery._data( elem, "olddisplay", display );
- }
- }
- }
-
- // Set the display of most of the elements in a second loop
- // to avoid the constant reflow
- for ( index = 0; index < length; index++ ) {
- elem = elements[ index ];
- if ( !elem.style ) {
- continue;
- }
- if ( !show || elem.style.display === "none" || elem.style.display === "" ) {
- elem.style.display = show ? values[ index ] || "" : "none";
- }
- }
-
- return elements;
-}
-
-jQuery.fn.extend({
- css: function( name, value ) {
- return jQuery.access( this, function( elem, name, value ) {
- return value !== undefined ?
- jQuery.style( elem, name, value ) :
- jQuery.css( elem, name );
- }, name, value, arguments.length > 1 );
- },
- show: function() {
- return showHide( this, true );
- },
- hide: function() {
- return showHide( this );
- },
- toggle: function( state, fn2 ) {
- var bool = typeof state === "boolean";
-
- if ( jQuery.isFunction( state ) && jQuery.isFunction( fn2 ) ) {
- return eventsToggle.apply( this, arguments );
- }
-
- return this.each(function() {
- if ( bool ? state : isHidden( this ) ) {
- jQuery( this ).show();
- } else {
- jQuery( this ).hide();
- }
- });
- }
-});
-
-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" );
- return ret === "" ? "1" : ret;
-
- }
- }
- }
- },
-
- // 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, hooks,
- origName = jQuery.camelCase( name ),
- style = elem.style;
-
- name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) );
-
- // gets hook for the prefixed version
- // followed by the unprefixed version
- hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ 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, extra )) !== 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, numeric, extra ) {
- var val, num, hooks,
- origName = jQuery.camelCase( name );
-
- // Make sure that we're working with the right name
- name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) );
-
- // gets hook for the prefixed version
- // followed by the unprefixed version
- hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
-
- // If a hook was provided get the computed value from there
- if ( hooks && "get" in hooks ) {
- val = hooks.get( elem, true, extra );
- }
-
- // Otherwise, if a way to get the computed value exists, use that
- if ( val === undefined ) {
- val = curCSS( elem, name );
- }
-
- //convert "normal" to computed value
- if ( val === "normal" && name in cssNormalTransform ) {
- val = cssNormalTransform[ name ];
- }
-
- // Return, converting to number if forced or a qualifier was provided and val looks numeric
- if ( numeric || extra !== undefined ) {
- num = parseFloat( val );
- return numeric || jQuery.isNumeric( num ) ? num || 0 : val;
- }
- return val;
- },
-
- // A method for quickly swapping in/out CSS properties to get correct calculations
- swap: function( elem, options, callback ) {
- var ret, name,
- old = {};
-
- // Remember the old values, and insert the new ones
- for ( name in options ) {
- old[ name ] = elem.style[ name ];
- elem.style[ name ] = options[ name ];
- }
-
- ret = callback.call( elem );
-
- // Revert the old values
- for ( name in options ) {
- elem.style[ name ] = old[ name ];
- }
-
- return ret;
- }
-});
-
-// NOTE: To any future maintainer, we've window.getComputedStyle
-// because jsdom on node.js will break without it.
-if ( window.getComputedStyle ) {
- curCSS = function( elem, name ) {
- var ret, width, minWidth, maxWidth,
- computed = window.getComputedStyle( elem, null ),
- style = elem.style;
-
- if ( computed ) {
-
- // getPropertyValue is only needed for .css('filter') in IE9, see #12537
- ret = computed.getPropertyValue( name ) || computed[ name ];
-
- if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) {
- ret = jQuery.style( elem, name );
- }
-
- // A tribute to the "awesome hack by Dean Edwards"
- // Chrome < 17 and Safari 5.0 uses "computed value" instead of "used value" for margin-right
- // Safari 5.1.7 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels
- // this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values
- if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {
- width = style.width;
- minWidth = style.minWidth;
- maxWidth = style.maxWidth;
-
- style.minWidth = style.maxWidth = style.width = ret;
- ret = computed.width;
-
- style.width = width;
- style.minWidth = minWidth;
- style.maxWidth = maxWidth;
- }
- }
-
- return ret;
- };
-} else if ( document.documentElement.currentStyle ) {
- curCSS = function( elem, name ) {
- var left, rsLeft,
- ret = elem.currentStyle && elem.currentStyle[ name ],
- style = elem.style;
-
- // Avoid setting ret to empty string here
- // so we don't default to auto
- if ( ret == null && style && style[ name ] ) {
- ret = style[ name ];
- }
-
- // 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
- // but not position css attributes, as those are proportional to the parent element instead
- // and we can't measure the parent instead because it might trigger a "stacking dolls" problem
- if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) {
-
- // Remember the original values
- left = style.left;
- rsLeft = elem.runtimeStyle && elem.runtimeStyle.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;
- ret = style.pixelLeft + "px";
-
- // Revert the changed values
- style.left = left;
- if ( rsLeft ) {
- elem.runtimeStyle.left = rsLeft;
- }
- }
-
- return ret === "" ? "auto" : ret;
- };
-}
-
-function setPositiveNumber( elem, value, subtract ) {
- var matches = rnumsplit.exec( value );
- return matches ?
- Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) :
- value;
-}
-
-function augmentWidthOrHeight( elem, name, extra, isBorderBox ) {
- var i = extra === ( isBorderBox ? "border" : "content" ) ?
- // If we already have the right measurement, avoid augmentation
- 4 :
- // Otherwise initialize for horizontal or vertical properties
- name === "width" ? 1 : 0,
-
- val = 0;
-
- for ( ; i < 4; i += 2 ) {
- // both box models exclude margin, so add it if we want it
- if ( extra === "margin" ) {
- // we use jQuery.css instead of curCSS here
- // because of the reliableMarginRight CSS hook!
- val += jQuery.css( elem, extra + cssExpand[ i ], true );
- }
-
- // From this point on we use curCSS for maximum performance (relevant in animations)
- if ( isBorderBox ) {
- // border-box includes padding, so remove it if we want content
- if ( extra === "content" ) {
- val -= parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0;
- }
-
- // at this point, extra isn't border nor margin, so remove border
- if ( extra !== "margin" ) {
- val -= parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0;
- }
- } else {
- // at this point, extra isn't content, so add padding
- val += parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0;
-
- // at this point, extra isn't content nor padding, so add border
- if ( extra !== "padding" ) {
- val += parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0;
- }
- }
- }
-
- return val;
-}
-
-function getWidthOrHeight( elem, name, extra ) {
-
- // Start with offset property, which is equivalent to the border-box value
- var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
- valueIsBorderBox = true,
- isBorderBox = jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box";
-
- // some non-html elements return undefined for offsetWidth, so check for null/undefined
- // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
- // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
- if ( val <= 0 || val == null ) {
- // Fall back to computed then uncomputed css if necessary
- val = curCSS( elem, name );
- if ( val < 0 || val == null ) {
- val = elem.style[ name ];
- }
-
- // Computed unit is not pixels. Stop here and return.
- if ( rnumnonpx.test(val) ) {
- return val;
- }
-
- // we need the check for style in case a browser which returns unreliable values
- // for getComputedStyle silently falls back to the reliable elem.style
- valueIsBorderBox = isBorderBox && ( jQuery.support.boxSizingReliable || val === elem.style[ name ] );
-
- // Normalize "", auto, and prepare for extra
- val = parseFloat( val ) || 0;
- }
-
- // use the active box-sizing model to add/subtract irrelevant styles
- return ( val +
- augmentWidthOrHeight(
- elem,
- name,
- extra || ( isBorderBox ? "border" : "content" ),
- valueIsBorderBox
- )
- ) + "px";
-}
-
-
-// Try to determine the default display value of an element
-function css_defaultDisplay( nodeName ) {
- if ( elemdisplay[ nodeName ] ) {
- return elemdisplay[ nodeName ];
- }
-
- var elem = jQuery( "<" + nodeName + ">" ).appendTo( document.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 === "" ) {
- // Use the already-created iframe if possible
- iframe = document.body.appendChild(
- iframe || jQuery.extend( document.createElement("iframe"), {
- frameBorder: 0,
- width: 0,
- height: 0
- })
- );
-
- // 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("");
- iframeDoc.close();
- }
-
- elem = iframeDoc.body.appendChild( iframeDoc.createElement(nodeName) );
-
- display = curCSS( elem, "display" );
- document.body.removeChild( iframe );
- }
-
- // Store the correct default display
- elemdisplay[ nodeName ] = display;
-
- return display;
-}
-
-jQuery.each([ "height", "width" ], function( i, name ) {
- jQuery.cssHooks[ name ] = {
- get: function( elem, computed, extra ) {
- if ( computed ) {
- // certain elements can have dimension info if we invisibly show them
- // however, it must have a current display style that would benefit from this
- if ( elem.offsetWidth === 0 && rdisplayswap.test( curCSS( elem, "display" ) ) ) {
- return jQuery.swap( elem, cssShow, function() {
- return getWidthOrHeight( elem, name, extra );
- });
- } else {
- return getWidthOrHeight( elem, name, extra );
- }
- }
- },
-
- set: function( elem, value, extra ) {
- return setPositiveNumber( elem, value, extra ?
- augmentWidthOrHeight(
- elem,
- name,
- extra,
- jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box"
- ) : 0
- );
- }
- };
-});
-
-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) || "" ) ?
- ( 0.01 * parseFloat( RegExp.$1 ) ) + "" :
- computed ? "1" : "";
- },
-
- set: function( elem, value ) {
- var style = elem.style,
- currentStyle = elem.currentStyle,
- opacity = jQuery.isNumeric( 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, "" ) ) === "" &&
- style.removeAttribute ) {
-
- // 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;
- }
- };
-}
-
-// These hooks cannot be added until DOM ready because the support test
-// for it is not run until after DOM ready
-jQuery(function() {
- 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
- return jQuery.swap( elem, { "display": "inline-block" }, function() {
- if ( computed ) {
- return curCSS( elem, "marginRight" );
- }
- });
- }
- };
- }
-
- // Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
- // getComputedStyle returns percent when specified for top/left/bottom/right
- // rather than make the css module depend on the offset module, we just check for it here
- if ( !jQuery.support.pixelPosition && jQuery.fn.position ) {
- jQuery.each( [ "top", "left" ], function( i, prop ) {
- jQuery.cssHooks[ prop ] = {
- get: function( elem, computed ) {
- if ( computed ) {
- var ret = curCSS( elem, prop );
- // if curCSS returns percentage, fallback to offset
- return rnumnonpx.test( ret ) ? jQuery( elem ).position()[ prop ] + "px" : ret;
- }
- }
- };
- });
- }
-
-});
-
-if ( jQuery.expr && jQuery.expr.filters ) {
- jQuery.expr.filters.hidden = function( elem ) {
- return ( elem.offsetWidth === 0 && elem.offsetHeight === 0 ) || (!jQuery.support.reliableHiddenOffsets && ((elem.style && elem.style.display) || curCSS( elem, "display" )) === "none");
- };
-
- jQuery.expr.filters.visible = function( elem ) {
- return !jQuery.expr.filters.hidden( elem );
- };
-}
-
-// These hooks are used by animate to expand properties
-jQuery.each({
- margin: "",
- padding: "",
- border: "Width"
-}, function( prefix, suffix ) {
- jQuery.cssHooks[ prefix + suffix ] = {
- expand: function( value ) {
- var i,
-
- // assumes a single number if not a string
- parts = typeof value === "string" ? value.split(" ") : [ value ],
- expanded = {};
-
- for ( i = 0; i < 4; i++ ) {
- expanded[ prefix + cssExpand[ i ] + suffix ] =
- parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
- }
-
- return expanded;
- }
- };
-
- if ( !rmargin.test( prefix ) ) {
- jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
- }
-});
-var r20 = /%20/g,
- rbracket = /\[\]$/,
- rCRLF = /\r?\n/g,
- rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
- rselectTextarea = /^(?:select|textarea)/i;
-
-jQuery.fn.extend({
- 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();
- }
-});
-
-//Serialize an array of form elements or a set of
-//key/values into a query string
-jQuery.param = function( a, traditional ) {
- var prefix,
- s = [],
- add = function( key, value ) {
- // If value is a function, invoke it and return its value
- value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );
- s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
- };
-
- // Set traditional to true for jQuery <= 1.3.2 behavior.
- if ( traditional === undefined ) {
- traditional = jQuery.ajaxSettings && 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 ( prefix in a ) {
- buildParams( prefix, a[ prefix ], traditional, add );
- }
- }
-
- // Return the resulting serialization
- return s.join( "&" ).replace( r20, "+" );
-};
-
-function buildParams( prefix, obj, traditional, add ) {
- var name;
-
- 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" ? i : "" ) + "]", v, traditional, add );
- }
- });
-
- } else if ( !traditional && jQuery.type( obj ) === "object" ) {
- // Serialize object item.
- for ( name in obj ) {
- buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
- }
-
- } else {
- // Serialize scalar item.
- add( prefix, obj );
- }
-}
-var
- // Document location
- ajaxLocParts,
- ajaxLocation,
-
- rhash = /#.*$/,
- rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL
- // #7653, #8125, #8152: local protocol detection
- rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
- rnoContent = /^(?:GET|HEAD)$/,
- rprotocol = /^\/\//,
- rquery = /\?/,
- rscript = /
-
-
-```
diff --git a/front/lib/AdminLTE/bower_components/PACE/bower.json b/front/lib/AdminLTE/bower_components/PACE/bower.json
deleted file mode 100755
index 82e4b0fa2..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/bower.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "name": "PACE",
- "main": "pace.js",
- "version": "1.0.2",
- "homepage": "http://github.hubspot.com/pace/docs/welcome",
- "authors": [
- "Zack Bloom ",
- "Adam Schwartz "
- ],
- "description": "Automatic page load progress bar",
- "keywords": [
- "loading",
- "load",
- "pageload",
- "progress",
- "activity",
- "ajax",
- "spinner",
- "progress",
- "bar",
- "automatic",
- "client-side"
- ],
- "license": "MIT",
- "ignore": [
- ".*",
- "Gruntfile.coffee",
- "bower_components",
- "docs",
- "node_modules",
- "package.json",
- "templates",
- "tests"
- ]
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/install.json b/front/lib/AdminLTE/bower_components/PACE/install.json
deleted file mode 100755
index f9540c2c1..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/install.json
+++ /dev/null
@@ -1,86 +0,0 @@
-{
- "resources": {
- "head": [
- {
- "type": "script",
- "src": "./pace.js",
- "moduleType": "global",
- "exports": ["Pace"]
- },
- {
- "type": "style",
- "src": "./themes/{{ options.color }}/pace-theme-{{ options.theme }}.css"
- }
- ]
- },
- "options": {
- "properties": {
- "color": {
- "title": "Color",
- "type": "string",
- "enum": [
- "black",
- "white",
- "silver",
- "red",
- "orange",
- "yellow",
- "green",
- "blue",
- "pink",
- "purple"
- ],
- "enumNames": {
- "black": "Black",
- "white": "White",
- "silver": "Silver",
- "red": "Red",
- "orange": "Orange",
- "yellow": "Yellow",
- "green": "Green",
- "blue": "Blue",
- "pink": "Pink",
- "purple": "Purple"
- },
- "default": "blue"
- },
- "theme": {
- "title": "Theme",
- "type": "string",
- "enum": [
- "barber-shop",
- "big-counter",
- "bounce",
- "center-atom",
- "center-circle",
- "center-radar",
- "center-simple",
- "corner-indicator",
- "fill-left",
- "flash",
- "flat-top",
- "loading-bar",
- "mac-osx",
- "minimal"
- ],
- "enumNames": {
- "barber-shop": "Barber Shop",
- "big-counter": "Big Counter",
- "bounce": "Bounce",
- "center-atom": "Center Atom",
- "center-circle": "Center Circle",
- "center-radar": "Center Radar",
- "center-simple": "Center Simple",
- "corner-indicator": "Corner Indicator",
- "fill-left": "Fill Left",
- "flash": "Flash",
- "flat-top": "Flat Top",
- "loading-bar": "Loading Bar",
- "mac-osx": "Mac OS X",
- "minimal": "Minimal"
- },
- "default": "barber-shop"
- }
- }
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/pace.coffee b/front/lib/AdminLTE/bower_components/PACE/pace.coffee
deleted file mode 100755
index 219e1d67f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/pace.coffee
+++ /dev/null
@@ -1,755 +0,0 @@
-defaultOptions =
- # How long should it take for the bar to animate to a new
- # point after receiving it
- catchupTime: 100
-
- # How quickly should the bar be moving before it has any progress
- # info from a new source in %/ms
- initialRate: .03
-
- # What is the minimum amount of time the bar should be on the
- # screen. Irrespective of this number, the bar will always be on screen for
- # 33 * (100 / maxProgressPerFrame) + ghostTime ms.
- minTime: 250
-
- # What is the minimum amount of time the bar should sit after the last
- # update before disappearing
- ghostTime: 100
-
- # Its easy for a bunch of the bar to be eaten in the first few frames
- # before we know how much there is to load. This limits how much of
- # the bar can be used per frame
- maxProgressPerFrame: 20
-
- # This tweaks the animation easing
- easeFactor: 1.25
-
- # Should pace automatically start when the page is loaded, or should it wait for `start` to
- # be called? Always false if pace is loaded with AMD or CommonJS.
- startOnPageLoad: true
-
- # Should we restart the browser when pushState or replaceState is called? (Generally
- # means ajax navigation has occured)
- restartOnPushState: true
-
- # Should we show the progress bar for every ajax request (not just regular or ajax-y page
- # navigation)? Set to false to disable.
- #
- # If so, how many ms does the request have to be running for before we show the progress?
- restartOnRequestAfter: 500
-
- # What element should the pace element be appended to on the page?
- target: 'body'
-
- elements:
- # How frequently in ms should we check for the elements being tested for
- # using the element monitor?
- checkInterval: 100
-
- # What elements should we wait for before deciding the page is fully loaded (not required)
- selectors: ['body']
-
- eventLag:
- # When we first start measuring event lag, not much is going on in the browser yet, so it's
- # not uncommon for the numbers to be abnormally low for the first few samples. This configures
- # how many samples we need before we consider a low number to mean completion.
- minSamples: 10
-
- # How many samples should we average to decide what the current lag is?
- sampleCount: 3
-
- # Above how many ms of lag is the CPU considered busy?
- lagThreshold: 3
-
- ajax:
- # Which HTTP methods should we track?
- trackMethods: ['GET']
-
- # Should we track web socket connections?
- trackWebSockets: true
-
- # A list of regular expressions or substrings of URLS we should ignore (for both tracking and restarting)
- ignoreURLs: []
-
-now = ->
- performance?.now?() ? +new Date
-
-requestAnimationFrame = window.requestAnimationFrame or window.mozRequestAnimationFrame or
- window.webkitRequestAnimationFrame or window.msRequestAnimationFrame
-
-cancelAnimationFrame = window.cancelAnimationFrame or window.mozCancelAnimationFrame
-
-if not requestAnimationFrame?
- requestAnimationFrame = (fn) ->
- setTimeout fn, 50
-
- cancelAnimationFrame = (id) ->
- clearTimeout id
-
-runAnimation = (fn) ->
- last = now()
- tick = ->
- diff = now() - last
-
- if diff >= 33
- # Don't run faster than 30 fps
-
- last = now()
- fn diff, ->
- requestAnimationFrame tick
- else
- setTimeout tick, (33 - diff)
-
- tick()
-
-result = (obj, key, args...) ->
- if typeof obj[key] is 'function'
- obj[key](args...)
- else
- obj[key]
-
-extend = (out, sources...) ->
- for source in sources when source
- for own key, val of source
- if out[key]? and typeof out[key] is 'object' and val? and typeof val is 'object'
- extend(out[key], val)
- else
- out[key] = val
- out
-
-avgAmplitude = (arr) ->
- sum = count = 0
- for v in arr
- sum += Math.abs(v)
- count++
-
- sum / count
-
-getFromDOM = (key='options', json=true) ->
- el = document.querySelector "[data-pace-#{ key }]"
-
- return unless el
-
- data = el.getAttribute "data-pace-#{ key }"
-
- return data if not json
-
- try
- return JSON.parse data
- catch e
- console?.error "Error parsing inline pace options", e
-
-class Evented
- on: (event, handler, ctx, once=false) ->
- @bindings ?= {}
- @bindings[event] ?= []
- @bindings[event].push {handler, ctx, once}
-
- once: (event, handler, ctx) ->
- @on(event, handler, ctx, true)
-
- off: (event, handler) ->
- return unless @bindings?[event]?
-
- if not handler?
- delete @bindings[event]
- else
- i = 0
- while i < @bindings[event].length
- if @bindings[event][i].handler is handler
- @bindings[event].splice i, 1
- else
- i++
-
- trigger: (event, args...) ->
- if @bindings?[event]
- i = 0
- while i < @bindings[event].length
- {handler, ctx, once} = @bindings[event][i]
-
- handler.apply(ctx ? @, args)
-
- if once
- @bindings[event].splice i, 1
- else
- i++
-
-Pace = window.Pace or {}
-window.Pace = Pace
-
-extend Pace, Evented::
-
-options = Pace.options = extend {}, defaultOptions, window.paceOptions, getFromDOM()
-
-for source in ['ajax', 'document', 'eventLag', 'elements']
- # true enables them without configuration, so we grab the config from the defaults
- if options[source] is true
- options[source] = defaultOptions[source]
-
-class NoTargetError extends Error
-
-class Bar
- constructor: ->
- @progress = 0
-
- getElement: ->
- if not @el?
- targetElement = document.querySelector options.target
-
- if not targetElement
- throw new NoTargetError
-
- @el = document.createElement 'div'
- @el.className = "pace pace-active"
-
- document.body.className = document.body.className.replace /pace-done/g, ''
- document.body.className += ' pace-running'
-
- @el.innerHTML = '''
-
-
- '''
- if targetElement.firstChild?
- targetElement.insertBefore @el, targetElement.firstChild
- else
- targetElement.appendChild @el
-
- @el
-
- finish: ->
- el = @getElement()
-
- el.className = el.className.replace 'pace-active', ''
- el.className += ' pace-inactive'
-
- document.body.className = document.body.className.replace 'pace-running', ''
- document.body.className += ' pace-done'
-
- update: (prog) ->
- @progress = prog
-
- do @render
-
- destroy: ->
- try
- @getElement().parentNode.removeChild(@getElement())
- catch NoTargetError
-
- @el = undefined
-
- render: ->
- if not document.querySelector(options.target)?
- return false
-
- el = @getElement()
-
- transform = "translate3d(#{ @progress }%, 0, 0)"
- for key in ['webkitTransform', 'msTransform', 'transform']
- el.children[0].style[key] = transform
-
- if not @lastRenderedProgress or @lastRenderedProgress|0 != @progress|0
- # The whole-part of the number has changed
-
- el.children[0].setAttribute 'data-progress-text', "#{ @progress|0 }%"
-
- if @progress >= 100
- # We cap it at 99 so we can use prefix-based attribute selectors
- progressStr = '99'
- else
- progressStr = if @progress < 10 then "0" else ""
- progressStr += @progress|0
-
- el.children[0].setAttribute 'data-progress', "#{ progressStr }"
-
- @lastRenderedProgress = @progress
-
- done: ->
- @progress >= 100
-
-class Events
- constructor: ->
- @bindings = {}
-
- trigger: (name, val) ->
- if @bindings[name]?
- for binding in @bindings[name]
- binding.call @, val
-
- on: (name, fn) ->
- @bindings[name] ?= []
- @bindings[name].push fn
-
-_XMLHttpRequest = window.XMLHttpRequest
-_XDomainRequest = window.XDomainRequest
-_WebSocket = window.WebSocket
-
-extendNative = (to, from) ->
- for key of from::
- try
- if not to[key]? and typeof from[key] isnt 'function'
- if typeof Object.defineProperty is 'function'
- Object.defineProperty(to, key, {
- get: ->
- return from::[key];
- ,
- configurable: true,
- enumerable: true })
- else
- to[key] = from::[key]
- catch e
-
-ignoreStack = []
-
-Pace.ignore = (fn, args...) ->
- ignoreStack.unshift 'ignore'
- ret = fn(args...)
- ignoreStack.shift()
- ret
-
-Pace.track = (fn, args...) ->
- ignoreStack.unshift 'track'
- ret = fn(args...)
- ignoreStack.shift()
- ret
-
-shouldTrack = (method='GET') ->
- if ignoreStack[0] is 'track'
- return 'force'
-
- if not ignoreStack.length and options.ajax
- if method is 'socket' and options.ajax.trackWebSockets
- return true
- else if method.toUpperCase() in options.ajax.trackMethods
- return true
-
- return false
-
-# We should only ever instantiate one of these
-class RequestIntercept extends Events
- constructor: ->
- super
-
- monitorXHR = (req) =>
- _open = req.open
- req.open = (type, url, async) =>
- if shouldTrack(type)
- @trigger 'request', {type, url, request: req}
-
- _open.apply req, arguments
-
- window.XMLHttpRequest = (flags) ->
- req = new _XMLHttpRequest(flags)
-
- monitorXHR req
-
- req
-
- try
- extendNative window.XMLHttpRequest, _XMLHttpRequest
-
- if _XDomainRequest?
- window.XDomainRequest = ->
- req = new _XDomainRequest
-
- monitorXHR req
-
- req
-
- try
- extendNative window.XDomainRequest, _XDomainRequest
-
- if _WebSocket? and options.ajax.trackWebSockets
- window.WebSocket = (url, protocols) =>
- if protocols?
- req = new _WebSocket(url, protocols)
- else
- req = new _WebSocket(url)
-
- if shouldTrack('socket')
- @trigger 'request', {type: 'socket', url, protocols, request: req}
-
- req
-
- try
- extendNative window.WebSocket, _WebSocket
-
-_intercept = null
-getIntercept = ->
- if not _intercept?
- _intercept = new RequestIntercept
- _intercept
-
-shouldIgnoreURL = (url) ->
- for pattern in options.ajax.ignoreURLs
- if typeof pattern is 'string'
- if url.indexOf(pattern) isnt -1
- return true
-
- else
- if pattern.test(url)
- return true
-
- return false
-
-# If we want to start the progress bar
-# on every request, we need to hear the request
-# and then inject it into the new ajax monitor
-# start will have created.
-
-getIntercept().on 'request', ({type, request, url}) ->
- return if shouldIgnoreURL(url)
-
- if not Pace.running and (options.restartOnRequestAfter isnt false or shouldTrack(type) is 'force')
- args = arguments
-
- after = options.restartOnRequestAfter or 0
- if typeof after is 'boolean'
- after = 0
-
- setTimeout ->
- if type is 'socket'
- stillActive = request.readyState < 2
- else
- stillActive = 0 < request.readyState < 4
-
- if stillActive
- Pace.restart()
-
- for source in Pace.sources
- if source instanceof AjaxMonitor
- source.watch args...
- break
- , after
-
-class AjaxMonitor
- constructor: ->
- @elements = []
-
- getIntercept().on 'request', => @watch arguments...
-
- watch: ({type, request, url}) ->
- return if shouldIgnoreURL(url)
-
- if type is 'socket'
- tracker = new SocketRequestTracker(request)
- else
- tracker = new XHRRequestTracker(request)
-
- @elements.push tracker
-
-class XHRRequestTracker
- constructor: (request) ->
- @progress = 0
-
- if window.ProgressEvent?
- # We're dealing with a modern browser with progress event support
-
- size = null
- request.addEventListener 'progress', (evt) =>
- if evt.lengthComputable
- @progress = 100 * evt.loaded / evt.total
- else
- # If it's chunked encoding, we have no way of knowing the total length of the
- # response, all we can do is increment the progress with backoff such that we
- # never hit 100% until it's done.
- @progress = @progress + (100 - @progress) / 2
- , false
-
- for event in ['load', 'abort', 'timeout', 'error']
- request.addEventListener event, =>
- @progress = 100
- , false
-
- else
- _onreadystatechange = request.onreadystatechange
- request.onreadystatechange = =>
- if request.readyState in [0, 4]
- @progress = 100
- else if request.readyState is 3
- @progress = 50
-
- _onreadystatechange?(arguments...)
-
-class SocketRequestTracker
- constructor: (request) ->
- @progress = 0
-
- for event in ['error', 'open']
- request.addEventListener event, =>
- @progress = 100
- , false
-
-class ElementMonitor
- constructor: (options={}) ->
- @elements = []
-
- options.selectors ?= []
- for selector in options.selectors
- @elements.push new ElementTracker selector
-
-class ElementTracker
- constructor: (@selector) ->
- @progress = 0
-
- @check()
-
- check: ->
- if document.querySelector(@selector)
- @done()
- else
- setTimeout (=> @check()),
- options.elements.checkInterval
-
- done: ->
- @progress = 100
-
-class DocumentMonitor
- states:
- loading: 0
- interactive: 50
- complete: 100
-
- constructor: ->
- @progress = @states[document.readyState] ? 100
-
- _onreadystatechange = document.onreadystatechange
- document.onreadystatechange = =>
- if @states[document.readyState]?
- @progress = @states[document.readyState]
-
- _onreadystatechange?(arguments...)
-
-class EventLagMonitor
- constructor: ->
- @progress = 0
-
- avg = 0
-
- samples = []
-
- points = 0
- last = now()
- interval = setInterval =>
- diff = now() - last - 50
- last = now()
-
- samples.push diff
-
- if samples.length > options.eventLag.sampleCount
- samples.shift()
-
- avg = avgAmplitude samples
-
- if ++points >= options.eventLag.minSamples and avg < options.eventLag.lagThreshold
- @progress = 100
-
- clearInterval interval
- else
- @progress = 100 * (3 / (avg + 3))
-
- , 50
-
-class Scaler
- constructor: (@source) ->
- @last = @sinceLastUpdate = 0
- @rate = options.initialRate
- @catchup = 0
- @progress = @lastProgress = 0
-
- if @source?
- @progress = result(@source, 'progress')
-
- tick: (frameTime, val) ->
- val ?= result(@source, 'progress')
-
- if val >= 100
- @done = true
-
- if val == @last
- @sinceLastUpdate += frameTime
- else
- if @sinceLastUpdate
- @rate = (val - @last) / @sinceLastUpdate
-
- @catchup = (val - @progress) / options.catchupTime
-
- @sinceLastUpdate = 0
- @last = val
-
- if val > @progress
- # After we've got a datapoint, we have catchupTime to
- # get the progress bar to reflect that new data
- @progress += @catchup * frameTime
-
- scaling = (1 - Math.pow(@progress / 100, options.easeFactor))
-
- # Based on the rate of the last update, we preemptively update
- # the progress bar, scaling it so it can never hit 100% until we
- # know it's done.
- @progress += scaling * @rate * frameTime
-
- @progress = Math.min(@lastProgress + options.maxProgressPerFrame, @progress)
-
- @progress = Math.max(0, @progress)
- @progress = Math.min(100, @progress)
-
- @lastProgress = @progress
-
- @progress
-
-sources = null
-scalers = null
-bar = null
-uniScaler = null
-animation = null
-cancelAnimation = null
-Pace.running = false
-
-handlePushState = ->
- if options.restartOnPushState
- Pace.restart()
-
-# We reset the bar whenever it looks like an ajax navigation has occured.
-if window.history.pushState?
- _pushState = window.history.pushState
- window.history.pushState = ->
- handlePushState()
-
- _pushState.apply window.history, arguments
-
-if window.history.replaceState?
- _replaceState = window.history.replaceState
- window.history.replaceState = ->
- handlePushState()
-
- _replaceState.apply window.history, arguments
-
-SOURCE_KEYS =
- ajax: AjaxMonitor
- elements: ElementMonitor
- document: DocumentMonitor
- eventLag: EventLagMonitor
-
-do init = ->
- Pace.sources = sources = []
-
- for type in ['ajax', 'elements', 'document', 'eventLag']
- if options[type] isnt false
- sources.push new SOURCE_KEYS[type](options[type])
-
- for source in options.extraSources ? []
- sources.push new source(options)
-
- Pace.bar = bar = new Bar
-
- # Each source of progress data has it's own scaler to smooth its output
- scalers = []
-
- # We have an extra scaler for the final output to keep things looking nice as we add and
- # remove sources
- uniScaler = new Scaler
-
-Pace.stop = ->
- Pace.trigger 'stop'
- Pace.running = false
-
- bar.destroy()
-
- # Not all browsers support cancelAnimationFrame
- cancelAnimation = true
-
- if animation?
- cancelAnimationFrame? animation
- animation = null
-
- init()
-
-Pace.restart = ->
- Pace.trigger 'restart'
- Pace.stop()
- Pace.start()
-
-Pace.go = ->
- Pace.running = true
-
- bar.render()
-
- start = now()
-
- cancelAnimation = false
- animation = runAnimation (frameTime, enqueueNextFrame) ->
- # Every source gives us a progress number from 0 - 100
- # It's up to us to figure out how to turn that into a smoothly moving bar
- #
- # Their progress numbers can only increment. We try to interpolate
- # between the numbers.
-
- remaining = 100 - bar.progress
-
- count = sum = 0
- done = true
- # A source is composed of a bunch of elements, each with a raw, unscaled progress
- for source, i in sources
- scalerList = scalers[i] ?= []
-
- elements = source.elements ? [source]
-
- # Each element is given it's own scaler, which turns its value into something
- # smoothed for display
- for element, j in elements
- scaler = scalerList[j] ?= new Scaler element
-
- done &= scaler.done
-
- continue if scaler.done
-
- count++
- sum += scaler.tick(frameTime)
-
- avg = sum / count
-
- bar.update uniScaler.tick(frameTime, avg)
-
- if bar.done() or done or cancelAnimation
- bar.update 100
-
- Pace.trigger 'done'
-
- setTimeout ->
- bar.finish()
-
- Pace.running = false
-
- Pace.trigger 'hide'
- , Math.max(options.ghostTime, Math.max(options.minTime - (now() - start), 0))
- else
- enqueueNextFrame()
-
-Pace.start = (_options) ->
- extend options, _options
-
- Pace.running = true
-
- try
- bar.render()
- catch NoTargetError
-
- # It's usually possible to render a bit before the document declares itself ready
- if not document.querySelector('.pace')
- setTimeout Pace.start, 50
- else
- Pace.trigger 'start'
- Pace.go()
-
-if typeof define is 'function' and define.amd
- # AMD
- define ['pace'], -> Pace
-else if typeof exports is 'object'
- # CommonJS
- module.exports = Pace
-else
- # Global
- if options.startOnPageLoad
- Pace.start()
diff --git a/front/lib/AdminLTE/bower_components/PACE/pace.js b/front/lib/AdminLTE/bower_components/PACE/pace.js
deleted file mode 100755
index c7efc2fc2..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/pace.js
+++ /dev/null
@@ -1,935 +0,0 @@
-(function() {
- var AjaxMonitor, Bar, DocumentMonitor, ElementMonitor, ElementTracker, EventLagMonitor, Evented, Events, NoTargetError, Pace, RequestIntercept, SOURCE_KEYS, Scaler, SocketRequestTracker, XHRRequestTracker, animation, avgAmplitude, bar, cancelAnimation, cancelAnimationFrame, defaultOptions, extend, extendNative, getFromDOM, getIntercept, handlePushState, ignoreStack, init, now, options, requestAnimationFrame, result, runAnimation, scalers, shouldIgnoreURL, shouldTrack, source, sources, uniScaler, _WebSocket, _XDomainRequest, _XMLHttpRequest, _i, _intercept, _len, _pushState, _ref, _ref1, _replaceState,
- __slice = [].slice,
- __hasProp = {}.hasOwnProperty,
- __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
- defaultOptions = {
- catchupTime: 100,
- initialRate: .03,
- minTime: 250,
- ghostTime: 100,
- maxProgressPerFrame: 20,
- easeFactor: 1.25,
- startOnPageLoad: true,
- restartOnPushState: true,
- restartOnRequestAfter: 500,
- target: 'body',
- elements: {
- checkInterval: 100,
- selectors: ['body']
- },
- eventLag: {
- minSamples: 10,
- sampleCount: 3,
- lagThreshold: 3
- },
- ajax: {
- trackMethods: ['GET'],
- trackWebSockets: true,
- ignoreURLs: []
- }
- };
-
- now = function() {
- var _ref;
- return (_ref = typeof performance !== "undefined" && performance !== null ? typeof performance.now === "function" ? performance.now() : void 0 : void 0) != null ? _ref : +(new Date);
- };
-
- requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame;
-
- cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame;
-
- if (requestAnimationFrame == null) {
- requestAnimationFrame = function(fn) {
- return setTimeout(fn, 50);
- };
- cancelAnimationFrame = function(id) {
- return clearTimeout(id);
- };
- }
-
- runAnimation = function(fn) {
- var last, tick;
- last = now();
- tick = function() {
- var diff;
- diff = now() - last;
- if (diff >= 33) {
- last = now();
- return fn(diff, function() {
- return requestAnimationFrame(tick);
- });
- } else {
- return setTimeout(tick, 33 - diff);
- }
- };
- return tick();
- };
-
- result = function() {
- var args, key, obj;
- obj = arguments[0], key = arguments[1], args = 3 <= arguments.length ? __slice.call(arguments, 2) : [];
- if (typeof obj[key] === 'function') {
- return obj[key].apply(obj, args);
- } else {
- return obj[key];
- }
- };
-
- extend = function() {
- var key, out, source, sources, val, _i, _len;
- out = arguments[0], sources = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
- for (_i = 0, _len = sources.length; _i < _len; _i++) {
- source = sources[_i];
- if (source) {
- for (key in source) {
- if (!__hasProp.call(source, key)) continue;
- val = source[key];
- if ((out[key] != null) && typeof out[key] === 'object' && (val != null) && typeof val === 'object') {
- extend(out[key], val);
- } else {
- out[key] = val;
- }
- }
- }
- }
- return out;
- };
-
- avgAmplitude = function(arr) {
- var count, sum, v, _i, _len;
- sum = count = 0;
- for (_i = 0, _len = arr.length; _i < _len; _i++) {
- v = arr[_i];
- sum += Math.abs(v);
- count++;
- }
- return sum / count;
- };
-
- getFromDOM = function(key, json) {
- var data, e, el;
- if (key == null) {
- key = 'options';
- }
- if (json == null) {
- json = true;
- }
- el = document.querySelector("[data-pace-" + key + "]");
- if (!el) {
- return;
- }
- data = el.getAttribute("data-pace-" + key);
- if (!json) {
- return data;
- }
- try {
- return JSON.parse(data);
- } catch (_error) {
- e = _error;
- return typeof console !== "undefined" && console !== null ? console.error("Error parsing inline pace options", e) : void 0;
- }
- };
-
- Evented = (function() {
- function Evented() {}
-
- Evented.prototype.on = function(event, handler, ctx, once) {
- var _base;
- if (once == null) {
- once = false;
- }
- if (this.bindings == null) {
- this.bindings = {};
- }
- if ((_base = this.bindings)[event] == null) {
- _base[event] = [];
- }
- return this.bindings[event].push({
- handler: handler,
- ctx: ctx,
- once: once
- });
- };
-
- Evented.prototype.once = function(event, handler, ctx) {
- return this.on(event, handler, ctx, true);
- };
-
- Evented.prototype.off = function(event, handler) {
- var i, _ref, _results;
- if (((_ref = this.bindings) != null ? _ref[event] : void 0) == null) {
- return;
- }
- if (handler == null) {
- return delete this.bindings[event];
- } else {
- i = 0;
- _results = [];
- while (i < this.bindings[event].length) {
- if (this.bindings[event][i].handler === handler) {
- _results.push(this.bindings[event].splice(i, 1));
- } else {
- _results.push(i++);
- }
- }
- return _results;
- }
- };
-
- Evented.prototype.trigger = function() {
- var args, ctx, event, handler, i, once, _ref, _ref1, _results;
- event = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
- if ((_ref = this.bindings) != null ? _ref[event] : void 0) {
- i = 0;
- _results = [];
- while (i < this.bindings[event].length) {
- _ref1 = this.bindings[event][i], handler = _ref1.handler, ctx = _ref1.ctx, once = _ref1.once;
- handler.apply(ctx != null ? ctx : this, args);
- if (once) {
- _results.push(this.bindings[event].splice(i, 1));
- } else {
- _results.push(i++);
- }
- }
- return _results;
- }
- };
-
- return Evented;
-
- })();
-
- Pace = window.Pace || {};
-
- window.Pace = Pace;
-
- extend(Pace, Evented.prototype);
-
- options = Pace.options = extend({}, defaultOptions, window.paceOptions, getFromDOM());
-
- _ref = ['ajax', 'document', 'eventLag', 'elements'];
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- source = _ref[_i];
- if (options[source] === true) {
- options[source] = defaultOptions[source];
- }
- }
-
- NoTargetError = (function(_super) {
- __extends(NoTargetError, _super);
-
- function NoTargetError() {
- _ref1 = NoTargetError.__super__.constructor.apply(this, arguments);
- return _ref1;
- }
-
- return NoTargetError;
-
- })(Error);
-
- Bar = (function() {
- function Bar() {
- this.progress = 0;
- }
-
- Bar.prototype.getElement = function() {
- var targetElement;
- if (this.el == null) {
- targetElement = document.querySelector(options.target);
- if (!targetElement) {
- throw new NoTargetError;
- }
- this.el = document.createElement('div');
- this.el.className = "pace pace-active";
- document.body.className = document.body.className.replace(/pace-done/g, '');
- document.body.className += ' pace-running';
- this.el.innerHTML = '\n
';
- if (targetElement.firstChild != null) {
- targetElement.insertBefore(this.el, targetElement.firstChild);
- } else {
- targetElement.appendChild(this.el);
- }
- }
- return this.el;
- };
-
- Bar.prototype.finish = function() {
- var el;
- el = this.getElement();
- el.className = el.className.replace('pace-active', '');
- el.className += ' pace-inactive';
- document.body.className = document.body.className.replace('pace-running', '');
- return document.body.className += ' pace-done';
- };
-
- Bar.prototype.update = function(prog) {
- this.progress = prog;
- return this.render();
- };
-
- Bar.prototype.destroy = function() {
- try {
- this.getElement().parentNode.removeChild(this.getElement());
- } catch (_error) {
- NoTargetError = _error;
- }
- return this.el = void 0;
- };
-
- Bar.prototype.render = function() {
- var el, key, progressStr, transform, _j, _len1, _ref2;
- if (document.querySelector(options.target) == null) {
- return false;
- }
- el = this.getElement();
- transform = "translate3d(" + this.progress + "%, 0, 0)";
- _ref2 = ['webkitTransform', 'msTransform', 'transform'];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- key = _ref2[_j];
- el.children[0].style[key] = transform;
- }
- if (!this.lastRenderedProgress || this.lastRenderedProgress | 0 !== this.progress | 0) {
- el.children[0].setAttribute('data-progress-text', "" + (this.progress | 0) + "%");
- if (this.progress >= 100) {
- progressStr = '99';
- } else {
- progressStr = this.progress < 10 ? "0" : "";
- progressStr += this.progress | 0;
- }
- el.children[0].setAttribute('data-progress', "" + progressStr);
- }
- return this.lastRenderedProgress = this.progress;
- };
-
- Bar.prototype.done = function() {
- return this.progress >= 100;
- };
-
- return Bar;
-
- })();
-
- Events = (function() {
- function Events() {
- this.bindings = {};
- }
-
- Events.prototype.trigger = function(name, val) {
- var binding, _j, _len1, _ref2, _results;
- if (this.bindings[name] != null) {
- _ref2 = this.bindings[name];
- _results = [];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- binding = _ref2[_j];
- _results.push(binding.call(this, val));
- }
- return _results;
- }
- };
-
- Events.prototype.on = function(name, fn) {
- var _base;
- if ((_base = this.bindings)[name] == null) {
- _base[name] = [];
- }
- return this.bindings[name].push(fn);
- };
-
- return Events;
-
- })();
-
- _XMLHttpRequest = window.XMLHttpRequest;
-
- _XDomainRequest = window.XDomainRequest;
-
- _WebSocket = window.WebSocket;
-
- extendNative = function(to, from) {
- var e, key, _results;
- _results = [];
- for (key in from.prototype) {
- try {
- if ((to[key] == null) && typeof from[key] !== 'function') {
- if (typeof Object.defineProperty === 'function') {
- _results.push(Object.defineProperty(to, key, {
- get: function() {
- return from.prototype[key];
- },
- configurable: true,
- enumerable: true
- }));
- } else {
- _results.push(to[key] = from.prototype[key]);
- }
- } else {
- _results.push(void 0);
- }
- } catch (_error) {
- e = _error;
- }
- }
- return _results;
- };
-
- ignoreStack = [];
-
- Pace.ignore = function() {
- var args, fn, ret;
- fn = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
- ignoreStack.unshift('ignore');
- ret = fn.apply(null, args);
- ignoreStack.shift();
- return ret;
- };
-
- Pace.track = function() {
- var args, fn, ret;
- fn = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
- ignoreStack.unshift('track');
- ret = fn.apply(null, args);
- ignoreStack.shift();
- return ret;
- };
-
- shouldTrack = function(method) {
- var _ref2;
- if (method == null) {
- method = 'GET';
- }
- if (ignoreStack[0] === 'track') {
- return 'force';
- }
- if (!ignoreStack.length && options.ajax) {
- if (method === 'socket' && options.ajax.trackWebSockets) {
- return true;
- } else if (_ref2 = method.toUpperCase(), __indexOf.call(options.ajax.trackMethods, _ref2) >= 0) {
- return true;
- }
- }
- return false;
- };
-
- RequestIntercept = (function(_super) {
- __extends(RequestIntercept, _super);
-
- function RequestIntercept() {
- var monitorXHR,
- _this = this;
- RequestIntercept.__super__.constructor.apply(this, arguments);
- monitorXHR = function(req) {
- var _open;
- _open = req.open;
- return req.open = function(type, url, async) {
- if (shouldTrack(type)) {
- _this.trigger('request', {
- type: type,
- url: url,
- request: req
- });
- }
- return _open.apply(req, arguments);
- };
- };
- window.XMLHttpRequest = function(flags) {
- var req;
- req = new _XMLHttpRequest(flags);
- monitorXHR(req);
- return req;
- };
- try {
- extendNative(window.XMLHttpRequest, _XMLHttpRequest);
- } catch (_error) {}
- if (_XDomainRequest != null) {
- window.XDomainRequest = function() {
- var req;
- req = new _XDomainRequest;
- monitorXHR(req);
- return req;
- };
- try {
- extendNative(window.XDomainRequest, _XDomainRequest);
- } catch (_error) {}
- }
- if ((_WebSocket != null) && options.ajax.trackWebSockets) {
- window.WebSocket = function(url, protocols) {
- var req;
- if (protocols != null) {
- req = new _WebSocket(url, protocols);
- } else {
- req = new _WebSocket(url);
- }
- if (shouldTrack('socket')) {
- _this.trigger('request', {
- type: 'socket',
- url: url,
- protocols: protocols,
- request: req
- });
- }
- return req;
- };
- try {
- extendNative(window.WebSocket, _WebSocket);
- } catch (_error) {}
- }
- }
-
- return RequestIntercept;
-
- })(Events);
-
- _intercept = null;
-
- getIntercept = function() {
- if (_intercept == null) {
- _intercept = new RequestIntercept;
- }
- return _intercept;
- };
-
- shouldIgnoreURL = function(url) {
- var pattern, _j, _len1, _ref2;
- _ref2 = options.ajax.ignoreURLs;
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- pattern = _ref2[_j];
- if (typeof pattern === 'string') {
- if (url.indexOf(pattern) !== -1) {
- return true;
- }
- } else {
- if (pattern.test(url)) {
- return true;
- }
- }
- }
- return false;
- };
-
- getIntercept().on('request', function(_arg) {
- var after, args, request, type, url;
- type = _arg.type, request = _arg.request, url = _arg.url;
- if (shouldIgnoreURL(url)) {
- return;
- }
- if (!Pace.running && (options.restartOnRequestAfter !== false || shouldTrack(type) === 'force')) {
- args = arguments;
- after = options.restartOnRequestAfter || 0;
- if (typeof after === 'boolean') {
- after = 0;
- }
- return setTimeout(function() {
- var stillActive, _j, _len1, _ref2, _ref3, _results;
- if (type === 'socket') {
- stillActive = request.readyState < 2;
- } else {
- stillActive = (0 < (_ref2 = request.readyState) && _ref2 < 4);
- }
- if (stillActive) {
- Pace.restart();
- _ref3 = Pace.sources;
- _results = [];
- for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) {
- source = _ref3[_j];
- if (source instanceof AjaxMonitor) {
- source.watch.apply(source, args);
- break;
- } else {
- _results.push(void 0);
- }
- }
- return _results;
- }
- }, after);
- }
- });
-
- AjaxMonitor = (function() {
- function AjaxMonitor() {
- var _this = this;
- this.elements = [];
- getIntercept().on('request', function() {
- return _this.watch.apply(_this, arguments);
- });
- }
-
- AjaxMonitor.prototype.watch = function(_arg) {
- var request, tracker, type, url;
- type = _arg.type, request = _arg.request, url = _arg.url;
- if (shouldIgnoreURL(url)) {
- return;
- }
- if (type === 'socket') {
- tracker = new SocketRequestTracker(request);
- } else {
- tracker = new XHRRequestTracker(request);
- }
- return this.elements.push(tracker);
- };
-
- return AjaxMonitor;
-
- })();
-
- XHRRequestTracker = (function() {
- function XHRRequestTracker(request) {
- var event, size, _j, _len1, _onreadystatechange, _ref2,
- _this = this;
- this.progress = 0;
- if (window.ProgressEvent != null) {
- size = null;
- request.addEventListener('progress', function(evt) {
- if (evt.lengthComputable) {
- return _this.progress = 100 * evt.loaded / evt.total;
- } else {
- return _this.progress = _this.progress + (100 - _this.progress) / 2;
- }
- }, false);
- _ref2 = ['load', 'abort', 'timeout', 'error'];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- event = _ref2[_j];
- request.addEventListener(event, function() {
- return _this.progress = 100;
- }, false);
- }
- } else {
- _onreadystatechange = request.onreadystatechange;
- request.onreadystatechange = function() {
- var _ref3;
- if ((_ref3 = request.readyState) === 0 || _ref3 === 4) {
- _this.progress = 100;
- } else if (request.readyState === 3) {
- _this.progress = 50;
- }
- return typeof _onreadystatechange === "function" ? _onreadystatechange.apply(null, arguments) : void 0;
- };
- }
- }
-
- return XHRRequestTracker;
-
- })();
-
- SocketRequestTracker = (function() {
- function SocketRequestTracker(request) {
- var event, _j, _len1, _ref2,
- _this = this;
- this.progress = 0;
- _ref2 = ['error', 'open'];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- event = _ref2[_j];
- request.addEventListener(event, function() {
- return _this.progress = 100;
- }, false);
- }
- }
-
- return SocketRequestTracker;
-
- })();
-
- ElementMonitor = (function() {
- function ElementMonitor(options) {
- var selector, _j, _len1, _ref2;
- if (options == null) {
- options = {};
- }
- this.elements = [];
- if (options.selectors == null) {
- options.selectors = [];
- }
- _ref2 = options.selectors;
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- selector = _ref2[_j];
- this.elements.push(new ElementTracker(selector));
- }
- }
-
- return ElementMonitor;
-
- })();
-
- ElementTracker = (function() {
- function ElementTracker(selector) {
- this.selector = selector;
- this.progress = 0;
- this.check();
- }
-
- ElementTracker.prototype.check = function() {
- var _this = this;
- if (document.querySelector(this.selector)) {
- return this.done();
- } else {
- return setTimeout((function() {
- return _this.check();
- }), options.elements.checkInterval);
- }
- };
-
- ElementTracker.prototype.done = function() {
- return this.progress = 100;
- };
-
- return ElementTracker;
-
- })();
-
- DocumentMonitor = (function() {
- DocumentMonitor.prototype.states = {
- loading: 0,
- interactive: 50,
- complete: 100
- };
-
- function DocumentMonitor() {
- var _onreadystatechange, _ref2,
- _this = this;
- this.progress = (_ref2 = this.states[document.readyState]) != null ? _ref2 : 100;
- _onreadystatechange = document.onreadystatechange;
- document.onreadystatechange = function() {
- if (_this.states[document.readyState] != null) {
- _this.progress = _this.states[document.readyState];
- }
- return typeof _onreadystatechange === "function" ? _onreadystatechange.apply(null, arguments) : void 0;
- };
- }
-
- return DocumentMonitor;
-
- })();
-
- EventLagMonitor = (function() {
- function EventLagMonitor() {
- var avg, interval, last, points, samples,
- _this = this;
- this.progress = 0;
- avg = 0;
- samples = [];
- points = 0;
- last = now();
- interval = setInterval(function() {
- var diff;
- diff = now() - last - 50;
- last = now();
- samples.push(diff);
- if (samples.length > options.eventLag.sampleCount) {
- samples.shift();
- }
- avg = avgAmplitude(samples);
- if (++points >= options.eventLag.minSamples && avg < options.eventLag.lagThreshold) {
- _this.progress = 100;
- return clearInterval(interval);
- } else {
- return _this.progress = 100 * (3 / (avg + 3));
- }
- }, 50);
- }
-
- return EventLagMonitor;
-
- })();
-
- Scaler = (function() {
- function Scaler(source) {
- this.source = source;
- this.last = this.sinceLastUpdate = 0;
- this.rate = options.initialRate;
- this.catchup = 0;
- this.progress = this.lastProgress = 0;
- if (this.source != null) {
- this.progress = result(this.source, 'progress');
- }
- }
-
- Scaler.prototype.tick = function(frameTime, val) {
- var scaling;
- if (val == null) {
- val = result(this.source, 'progress');
- }
- if (val >= 100) {
- this.done = true;
- }
- if (val === this.last) {
- this.sinceLastUpdate += frameTime;
- } else {
- if (this.sinceLastUpdate) {
- this.rate = (val - this.last) / this.sinceLastUpdate;
- }
- this.catchup = (val - this.progress) / options.catchupTime;
- this.sinceLastUpdate = 0;
- this.last = val;
- }
- if (val > this.progress) {
- this.progress += this.catchup * frameTime;
- }
- scaling = 1 - Math.pow(this.progress / 100, options.easeFactor);
- this.progress += scaling * this.rate * frameTime;
- this.progress = Math.min(this.lastProgress + options.maxProgressPerFrame, this.progress);
- this.progress = Math.max(0, this.progress);
- this.progress = Math.min(100, this.progress);
- this.lastProgress = this.progress;
- return this.progress;
- };
-
- return Scaler;
-
- })();
-
- sources = null;
-
- scalers = null;
-
- bar = null;
-
- uniScaler = null;
-
- animation = null;
-
- cancelAnimation = null;
-
- Pace.running = false;
-
- handlePushState = function() {
- if (options.restartOnPushState) {
- return Pace.restart();
- }
- };
-
- if (window.history.pushState != null) {
- _pushState = window.history.pushState;
- window.history.pushState = function() {
- handlePushState();
- return _pushState.apply(window.history, arguments);
- };
- }
-
- if (window.history.replaceState != null) {
- _replaceState = window.history.replaceState;
- window.history.replaceState = function() {
- handlePushState();
- return _replaceState.apply(window.history, arguments);
- };
- }
-
- SOURCE_KEYS = {
- ajax: AjaxMonitor,
- elements: ElementMonitor,
- document: DocumentMonitor,
- eventLag: EventLagMonitor
- };
-
- (init = function() {
- var type, _j, _k, _len1, _len2, _ref2, _ref3, _ref4;
- Pace.sources = sources = [];
- _ref2 = ['ajax', 'elements', 'document', 'eventLag'];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- type = _ref2[_j];
- if (options[type] !== false) {
- sources.push(new SOURCE_KEYS[type](options[type]));
- }
- }
- _ref4 = (_ref3 = options.extraSources) != null ? _ref3 : [];
- for (_k = 0, _len2 = _ref4.length; _k < _len2; _k++) {
- source = _ref4[_k];
- sources.push(new source(options));
- }
- Pace.bar = bar = new Bar;
- scalers = [];
- return uniScaler = new Scaler;
- })();
-
- Pace.stop = function() {
- Pace.trigger('stop');
- Pace.running = false;
- bar.destroy();
- cancelAnimation = true;
- if (animation != null) {
- if (typeof cancelAnimationFrame === "function") {
- cancelAnimationFrame(animation);
- }
- animation = null;
- }
- return init();
- };
-
- Pace.restart = function() {
- Pace.trigger('restart');
- Pace.stop();
- return Pace.start();
- };
-
- Pace.go = function() {
- var start;
- Pace.running = true;
- bar.render();
- start = now();
- cancelAnimation = false;
- return animation = runAnimation(function(frameTime, enqueueNextFrame) {
- var avg, count, done, element, elements, i, j, remaining, scaler, scalerList, sum, _j, _k, _len1, _len2, _ref2;
- remaining = 100 - bar.progress;
- count = sum = 0;
- done = true;
- for (i = _j = 0, _len1 = sources.length; _j < _len1; i = ++_j) {
- source = sources[i];
- scalerList = scalers[i] != null ? scalers[i] : scalers[i] = [];
- elements = (_ref2 = source.elements) != null ? _ref2 : [source];
- for (j = _k = 0, _len2 = elements.length; _k < _len2; j = ++_k) {
- element = elements[j];
- scaler = scalerList[j] != null ? scalerList[j] : scalerList[j] = new Scaler(element);
- done &= scaler.done;
- if (scaler.done) {
- continue;
- }
- count++;
- sum += scaler.tick(frameTime);
- }
- }
- avg = sum / count;
- bar.update(uniScaler.tick(frameTime, avg));
- if (bar.done() || done || cancelAnimation) {
- bar.update(100);
- Pace.trigger('done');
- return setTimeout(function() {
- bar.finish();
- Pace.running = false;
- return Pace.trigger('hide');
- }, Math.max(options.ghostTime, Math.max(options.minTime - (now() - start), 0)));
- } else {
- return enqueueNextFrame();
- }
- });
- };
-
- Pace.start = function(_options) {
- extend(options, _options);
- Pace.running = true;
- try {
- bar.render();
- } catch (_error) {
- NoTargetError = _error;
- }
- if (!document.querySelector('.pace')) {
- return setTimeout(Pace.start, 50);
- } else {
- Pace.trigger('start');
- return Pace.go();
- }
- };
-
- if (typeof define === 'function' && define.amd) {
- define(['pace'], function() {
- return Pace;
- });
- } else if (typeof exports === 'object') {
- module.exports = Pace;
- } else {
- if (options.startOnPageLoad) {
- Pace.start();
- }
- }
-
-}).call(this);
diff --git a/front/lib/AdminLTE/bower_components/PACE/pace.min.js b/front/lib/AdminLTE/bower_components/PACE/pace.min.js
deleted file mode 100755
index 234f9b3e9..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/pace.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! pace 1.0.2 */
-(function(){var 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=[].slice,Y={}.hasOwnProperty,Z=function(a,b){function c(){this.constructor=a}for(var d in b)Y.call(b,d)&&(a[d]=b[d]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a},$=[].indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(b in this&&this[b]===a)return b;return-1};for(u={catchupTime:100,initialRate:.03,minTime:250,ghostTime:100,maxProgressPerFrame:20,easeFactor:1.25,startOnPageLoad:!0,restartOnPushState:!0,restartOnRequestAfter:500,target:"body",elements:{checkInterval:100,selectors:["body"]},eventLag:{minSamples:10,sampleCount:3,lagThreshold:3},ajax:{trackMethods:["GET"],trackWebSockets:!0,ignoreURLs:[]}},C=function(){var a;return null!=(a="undefined"!=typeof performance&&null!==performance&&"function"==typeof performance.now?performance.now():void 0)?a:+new Date},E=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,t=window.cancelAnimationFrame||window.mozCancelAnimationFrame,null==E&&(E=function(a){return setTimeout(a,50)},t=function(a){return clearTimeout(a)}),G=function(a){var b,c;return b=C(),(c=function(){var d;return d=C()-b,d>=33?(b=C(),a(d,function(){return E(c)})):setTimeout(c,33-d)})()},F=function(){var a,b,c;return c=arguments[0],b=arguments[1],a=3<=arguments.length?X.call(arguments,2):[],"function"==typeof c[b]?c[b].apply(c,a):c[b]},v=function(){var a,b,c,d,e,f,g;for(b=arguments[0],d=2<=arguments.length?X.call(arguments,1):[],f=0,g=d.length;g>f;f++)if(c=d[f])for(a in c)Y.call(c,a)&&(e=c[a],null!=b[a]&&"object"==typeof b[a]&&null!=e&&"object"==typeof e?v(b[a],e):b[a]=e);return b},q=function(a){var b,c,d,e,f;for(c=b=0,e=0,f=a.length;f>e;e++)d=a[e],c+=Math.abs(d),b++;return c/b},x=function(a,b){var c,d,e;if(null==a&&(a="options"),null==b&&(b=!0),e=document.querySelector("[data-pace-"+a+"]")){if(c=e.getAttribute("data-pace-"+a),!b)return c;try{return JSON.parse(c)}catch(f){return d=f,"undefined"!=typeof console&&null!==console?console.error("Error parsing inline pace options",d):void 0}}},g=function(){function a(){}return a.prototype.on=function(a,b,c,d){var e;return null==d&&(d=!1),null==this.bindings&&(this.bindings={}),null==(e=this.bindings)[a]&&(e[a]=[]),this.bindings[a].push({handler:b,ctx:c,once:d})},a.prototype.once=function(a,b,c){return this.on(a,b,c,!0)},a.prototype.off=function(a,b){var c,d,e;if(null!=(null!=(d=this.bindings)?d[a]:void 0)){if(null==b)return delete this.bindings[a];for(c=0,e=[];cQ;Q++)K=U[Q],D[K]===!0&&(D[K]=u[K]);i=function(a){function b(){return V=b.__super__.constructor.apply(this,arguments)}return Z(b,a),b}(Error),b=function(){function a(){this.progress=0}return a.prototype.getElement=function(){var a;if(null==this.el){if(a=document.querySelector(D.target),!a)throw new i;this.el=document.createElement("div"),this.el.className="pace pace-active",document.body.className=document.body.className.replace(/pace-done/g,""),document.body.className+=" pace-running",this.el.innerHTML='\n
',null!=a.firstChild?a.insertBefore(this.el,a.firstChild):a.appendChild(this.el)}return this.el},a.prototype.finish=function(){var a;return a=this.getElement(),a.className=a.className.replace("pace-active",""),a.className+=" pace-inactive",document.body.className=document.body.className.replace("pace-running",""),document.body.className+=" pace-done"},a.prototype.update=function(a){return this.progress=a,this.render()},a.prototype.destroy=function(){try{this.getElement().parentNode.removeChild(this.getElement())}catch(a){i=a}return this.el=void 0},a.prototype.render=function(){var a,b,c,d,e,f,g;if(null==document.querySelector(D.target))return!1;for(a=this.getElement(),d="translate3d("+this.progress+"%, 0, 0)",g=["webkitTransform","msTransform","transform"],e=0,f=g.length;f>e;e++)b=g[e],a.children[0].style[b]=d;return(!this.lastRenderedProgress||this.lastRenderedProgress|0!==this.progress|0)&&(a.children[0].setAttribute("data-progress-text",""+(0|this.progress)+"%"),this.progress>=100?c="99":(c=this.progress<10?"0":"",c+=0|this.progress),a.children[0].setAttribute("data-progress",""+c)),this.lastRenderedProgress=this.progress},a.prototype.done=function(){return this.progress>=100},a}(),h=function(){function a(){this.bindings={}}return a.prototype.trigger=function(a,b){var c,d,e,f,g;if(null!=this.bindings[a]){for(f=this.bindings[a],g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(c.call(this,b));return g}},a.prototype.on=function(a,b){var c;return null==(c=this.bindings)[a]&&(c[a]=[]),this.bindings[a].push(b)},a}(),P=window.XMLHttpRequest,O=window.XDomainRequest,N=window.WebSocket,w=function(a,b){var c,d,e;e=[];for(d in b.prototype)try{e.push(null==a[d]&&"function"!=typeof b[d]?"function"==typeof Object.defineProperty?Object.defineProperty(a,d,{get:function(){return b.prototype[d]},configurable:!0,enumerable:!0}):a[d]=b.prototype[d]:void 0)}catch(f){c=f}return e},A=[],j.ignore=function(){var a,b,c;return b=arguments[0],a=2<=arguments.length?X.call(arguments,1):[],A.unshift("ignore"),c=b.apply(null,a),A.shift(),c},j.track=function(){var a,b,c;return b=arguments[0],a=2<=arguments.length?X.call(arguments,1):[],A.unshift("track"),c=b.apply(null,a),A.shift(),c},J=function(a){var b;if(null==a&&(a="GET"),"track"===A[0])return"force";if(!A.length&&D.ajax){if("socket"===a&&D.ajax.trackWebSockets)return!0;if(b=a.toUpperCase(),$.call(D.ajax.trackMethods,b)>=0)return!0}return!1},k=function(a){function b(){var a,c=this;b.__super__.constructor.apply(this,arguments),a=function(a){var b;return b=a.open,a.open=function(d,e){return J(d)&&c.trigger("request",{type:d,url:e,request:a}),b.apply(a,arguments)}},window.XMLHttpRequest=function(b){var c;return c=new P(b),a(c),c};try{w(window.XMLHttpRequest,P)}catch(d){}if(null!=O){window.XDomainRequest=function(){var b;return b=new O,a(b),b};try{w(window.XDomainRequest,O)}catch(d){}}if(null!=N&&D.ajax.trackWebSockets){window.WebSocket=function(a,b){var d;return d=null!=b?new N(a,b):new N(a),J("socket")&&c.trigger("request",{type:"socket",url:a,protocols:b,request:d}),d};try{w(window.WebSocket,N)}catch(d){}}}return Z(b,a),b}(h),R=null,y=function(){return null==R&&(R=new k),R},I=function(a){var b,c,d,e;for(e=D.ajax.ignoreURLs,c=0,d=e.length;d>c;c++)if(b=e[c],"string"==typeof b){if(-1!==a.indexOf(b))return!0}else if(b.test(a))return!0;return!1},y().on("request",function(b){var c,d,e,f,g;return f=b.type,e=b.request,g=b.url,I(g)?void 0:j.running||D.restartOnRequestAfter===!1&&"force"!==J(f)?void 0:(d=arguments,c=D.restartOnRequestAfter||0,"boolean"==typeof c&&(c=0),setTimeout(function(){var b,c,g,h,i,k;if(b="socket"===f?e.readyState<2:0<(h=e.readyState)&&4>h){for(j.restart(),i=j.sources,k=[],c=0,g=i.length;g>c;c++){if(K=i[c],K instanceof a){K.watch.apply(K,d);break}k.push(void 0)}return k}},c))}),a=function(){function a(){var a=this;this.elements=[],y().on("request",function(){return a.watch.apply(a,arguments)})}return a.prototype.watch=function(a){var b,c,d,e;return d=a.type,b=a.request,e=a.url,I(e)?void 0:(c="socket"===d?new n(b):new o(b),this.elements.push(c))},a}(),o=function(){function a(a){var b,c,d,e,f,g,h=this;if(this.progress=0,null!=window.ProgressEvent)for(c=null,a.addEventListener("progress",function(a){return h.progress=a.lengthComputable?100*a.loaded/a.total:h.progress+(100-h.progress)/2},!1),g=["load","abort","timeout","error"],d=0,e=g.length;e>d;d++)b=g[d],a.addEventListener(b,function(){return h.progress=100},!1);else f=a.onreadystatechange,a.onreadystatechange=function(){var b;return 0===(b=a.readyState)||4===b?h.progress=100:3===a.readyState&&(h.progress=50),"function"==typeof f?f.apply(null,arguments):void 0}}return a}(),n=function(){function a(a){var b,c,d,e,f=this;for(this.progress=0,e=["error","open"],c=0,d=e.length;d>c;c++)b=e[c],a.addEventListener(b,function(){return f.progress=100},!1)}return a}(),d=function(){function a(a){var b,c,d,f;for(null==a&&(a={}),this.elements=[],null==a.selectors&&(a.selectors=[]),f=a.selectors,c=0,d=f.length;d>c;c++)b=f[c],this.elements.push(new e(b))}return a}(),e=function(){function a(a){this.selector=a,this.progress=0,this.check()}return a.prototype.check=function(){var a=this;return document.querySelector(this.selector)?this.done():setTimeout(function(){return a.check()},D.elements.checkInterval)},a.prototype.done=function(){return this.progress=100},a}(),c=function(){function a(){var a,b,c=this;this.progress=null!=(b=this.states[document.readyState])?b:100,a=document.onreadystatechange,document.onreadystatechange=function(){return null!=c.states[document.readyState]&&(c.progress=c.states[document.readyState]),"function"==typeof a?a.apply(null,arguments):void 0}}return a.prototype.states={loading:0,interactive:50,complete:100},a}(),f=function(){function a(){var a,b,c,d,e,f=this;this.progress=0,a=0,e=[],d=0,c=C(),b=setInterval(function(){var g;return g=C()-c-50,c=C(),e.push(g),e.length>D.eventLag.sampleCount&&e.shift(),a=q(e),++d>=D.eventLag.minSamples&&a=100&&(this.done=!0),b===this.last?this.sinceLastUpdate+=a:(this.sinceLastUpdate&&(this.rate=(b-this.last)/this.sinceLastUpdate),this.catchup=(b-this.progress)/D.catchupTime,this.sinceLastUpdate=0,this.last=b),b>this.progress&&(this.progress+=this.catchup*a),c=1-Math.pow(this.progress/100,D.easeFactor),this.progress+=c*this.rate*a,this.progress=Math.min(this.lastProgress+D.maxProgressPerFrame,this.progress),this.progress=Math.max(0,this.progress),this.progress=Math.min(100,this.progress),this.lastProgress=this.progress,this.progress},a}(),L=null,H=null,r=null,M=null,p=null,s=null,j.running=!1,z=function(){return D.restartOnPushState?j.restart():void 0},null!=window.history.pushState&&(T=window.history.pushState,window.history.pushState=function(){return z(),T.apply(window.history,arguments)}),null!=window.history.replaceState&&(W=window.history.replaceState,window.history.replaceState=function(){return z(),W.apply(window.history,arguments)}),l={ajax:a,elements:d,document:c,eventLag:f},(B=function(){var a,c,d,e,f,g,h,i;for(j.sources=L=[],g=["ajax","elements","document","eventLag"],c=0,e=g.length;e>c;c++)a=g[c],D[a]!==!1&&L.push(new l[a](D[a]));for(i=null!=(h=D.extraSources)?h:[],d=0,f=i.length;f>d;d++)K=i[d],L.push(new K(D));return j.bar=r=new b,H=[],M=new m})(),j.stop=function(){return j.trigger("stop"),j.running=!1,r.destroy(),s=!0,null!=p&&("function"==typeof t&&t(p),p=null),B()},j.restart=function(){return j.trigger("restart"),j.stop(),j.start()},j.go=function(){var a;return j.running=!0,r.render(),a=C(),s=!1,p=G(function(b,c){var d,e,f,g,h,i,k,l,n,o,p,q,t,u,v,w;for(l=100-r.progress,e=p=0,f=!0,i=q=0,u=L.length;u>q;i=++q)for(K=L[i],o=null!=H[i]?H[i]:H[i]=[],h=null!=(w=K.elements)?w:[K],k=t=0,v=h.length;v>t;k=++t)g=h[k],n=null!=o[k]?o[k]:o[k]=new m(g),f&=n.done,n.done||(e++,p+=n.tick(b));return d=p/e,r.update(M.tick(b,d)),r.done()||f||s?(r.update(100),j.trigger("done"),setTimeout(function(){return r.finish(),j.running=!1,j.trigger("hide")},Math.max(D.ghostTime,Math.max(D.minTime-(C()-a),0)))):c()})},j.start=function(a){v(D,a),j.running=!0;try{r.render()}catch(b){i=b}return document.querySelector(".pace")?(j.trigger("start"),j.go()):setTimeout(j.start,50)},"function"==typeof define&&define.amd?define(["pace"],function(){return j}):"object"==typeof exports?module.exports=j:D.startOnPageLoad&&j.start()}).call(this);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-barber-shop.css
deleted file mode 100755
index b47be4ca0..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #000000;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-big-counter.css
deleted file mode 100755
index 99d53aceb..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(0, 0, 0, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-bounce.css
deleted file mode 100755
index 6ef4986e5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #000000;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-atom.css
deleted file mode 100755
index 3d8f4e131..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #000000;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #000000;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #000000;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #000000;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-circle.css
deleted file mode 100755
index 2721f9af6..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(0, 0, 0, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-radar.css
deleted file mode 100755
index 214667e26..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #000000 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #000000 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-simple.css
deleted file mode 100755
index e7e368e70..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #000000;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #000000;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-corner-indicator.css
deleted file mode 100755
index 98c7cd68b..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #000000;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-fill-left.css
deleted file mode 100755
index 474ce65ca..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(0, 0, 0, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flash.css
deleted file mode 100755
index 089ded0e7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #000000;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #000000, 0 0 5px #000000;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #000000;
- border-left-color: #000000;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flat-top.css
deleted file mode 100755
index 0fa069ba7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #000000;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-loading-bar.css
deleted file mode 100755
index 1b9420298..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #000000;
- color: #000000;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #000000, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-mac-osx.css
deleted file mode 100755
index f096d2cd5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #000000;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #000000, inset 0 -1px #000000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #000000, inset 0 -1px #000000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #000000, inset 0 -1px #000000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #000000, inset 0 -1px #000000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-minimal.css
deleted file mode 100755
index 671ef8493..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/black/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #000000;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-barber-shop.css
deleted file mode 100755
index f4285bda7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #2299dd;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-big-counter.css
deleted file mode 100755
index d9c576dc9..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(34, 153, 221, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-bounce.css
deleted file mode 100755
index f4798657b..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #2299dd;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-atom.css
deleted file mode 100755
index c178cd832..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #2299dd;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #2299dd;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #2299dd;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #2299dd;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-circle.css
deleted file mode 100755
index 403ab0d4a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(34, 153, 221, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-radar.css
deleted file mode 100755
index 018362f00..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #2299dd transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #2299dd transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-simple.css
deleted file mode 100755
index 0844d31fe..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #2299dd;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #2299dd;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-corner-indicator.css
deleted file mode 100755
index e0cc57e6a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #2299dd;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-fill-left.css
deleted file mode 100755
index acbaf4563..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(34, 153, 221, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flash.css
deleted file mode 100755
index d9bca466a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #2299dd;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #2299dd, 0 0 5px #2299dd;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #2299dd;
- border-left-color: #2299dd;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flat-top.css
deleted file mode 100755
index 6a76bbff2..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #2299dd;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-loading-bar.css
deleted file mode 100755
index 8448a5e5c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #2299dd;
- color: #2299dd;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #2299dd, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-mac-osx.css
deleted file mode 100755
index 175f3b28a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #0087E1;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #00558F, inset 0 -1px #00558F, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #00558F, inset 0 -1px #00558F, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #00558F, inset 0 -1px #00558F, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #00558F, inset 0 -1px #00558F, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-minimal.css
deleted file mode 100755
index a344a1945..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/blue/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #2299dd;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-barber-shop.css
deleted file mode 100755
index d06a96cfd..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #22df80;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-big-counter.css
deleted file mode 100755
index 73174689c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(34, 223, 128, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-bounce.css
deleted file mode 100755
index d17f375ed..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #22df80;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-atom.css
deleted file mode 100755
index 54f86fd4c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #22df80;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #22df80;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #22df80;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #22df80;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-circle.css
deleted file mode 100755
index f34927c7b..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(34, 223, 128, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-radar.css
deleted file mode 100755
index c0b767491..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #22df80 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #22df80 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-simple.css
deleted file mode 100755
index fa1f4278f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #22df80;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #22df80;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-corner-indicator.css
deleted file mode 100755
index 35ad92c9d..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #22df80;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-fill-left.css
deleted file mode 100755
index 3bfa926a6..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(34, 223, 128, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flash.css
deleted file mode 100755
index 812779ba0..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #22df80;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #22df80, 0 0 5px #22df80;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #22df80;
- border-left-color: #22df80;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flat-top.css
deleted file mode 100755
index 75c6327b1..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #22df80;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-loading-bar.css
deleted file mode 100755
index 3280418c5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #22df80;
- color: #22df80;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #22df80, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-mac-osx.css
deleted file mode 100755
index 56dad0d30..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #00E466;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #009140, inset 0 -1px #009140, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #009140, inset 0 -1px #009140, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #009140, inset 0 -1px #009140, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #009140, inset 0 -1px #009140, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-minimal.css
deleted file mode 100755
index 914d0fb6a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/green/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #22df80;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-barber-shop.css
deleted file mode 100755
index 129924ec9..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #eb7a55;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-big-counter.css
deleted file mode 100755
index 00308d9b7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(235, 122, 85, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-bounce.css
deleted file mode 100755
index f94c75d6e..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #eb7a55;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-atom.css
deleted file mode 100755
index 9c55e381c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #eb7a55;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #eb7a55;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #eb7a55;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #eb7a55;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-circle.css
deleted file mode 100755
index 0334a1758..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(235, 122, 85, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-radar.css
deleted file mode 100755
index 4b0addc38..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #eb7a55 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #eb7a55 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-simple.css
deleted file mode 100755
index 5a5e9790d..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #eb7a55;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #eb7a55;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-corner-indicator.css
deleted file mode 100755
index eda7fe4e1..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #eb7a55;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-fill-left.css
deleted file mode 100755
index a775dae73..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(235, 122, 85, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flash.css
deleted file mode 100755
index b226496a6..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #eb7a55;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #eb7a55, 0 0 5px #eb7a55;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #eb7a55;
- border-left-color: #eb7a55;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flat-top.css
deleted file mode 100755
index 7e2c1ab87..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #eb7a55;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-loading-bar.css
deleted file mode 100755
index 7d468c3bc..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #eb7a55;
- color: #eb7a55;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #eb7a55, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-mac-osx.css
deleted file mode 100755
index 4cfe25c1d..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #FF2C00;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #BF1B00, inset 0 -1px #BF1B00, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #BF1B00, inset 0 -1px #BF1B00, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #BF1B00, inset 0 -1px #BF1B00, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #BF1B00, inset 0 -1px #BF1B00, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-minimal.css
deleted file mode 100755
index e02aab166..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/orange/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #eb7a55;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-barber-shop.css
deleted file mode 100755
index deb3d5e97..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #e90f92;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-big-counter.css
deleted file mode 100755
index 396f7aa7f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(233, 15, 146, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-bounce.css
deleted file mode 100755
index 26fecda10..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #e90f92;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-atom.css
deleted file mode 100755
index e255d0837..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #e90f92;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #e90f92;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #e90f92;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #e90f92;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-circle.css
deleted file mode 100755
index c3aa0f221..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(233, 15, 146, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-radar.css
deleted file mode 100755
index 45e3a100f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #e90f92 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #e90f92 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-simple.css
deleted file mode 100755
index 446bd67e0..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #e90f92;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #e90f92;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-corner-indicator.css
deleted file mode 100755
index f971a1894..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #e90f92;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-fill-left.css
deleted file mode 100755
index aaa1f8506..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(233, 15, 146, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flash.css
deleted file mode 100755
index e428c5c10..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #e90f92;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #e90f92, 0 0 5px #e90f92;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #e90f92;
- border-left-color: #e90f92;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flat-top.css
deleted file mode 100755
index fff9781c5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #e90f92;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-loading-bar.css
deleted file mode 100755
index e147a0fe6..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #e90f92;
- color: #e90f92;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #e90f92, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-mac-osx.css
deleted file mode 100755
index d3b87e924..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #F40080;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #9F0053, inset 0 -1px #9F0053, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #9F0053, inset 0 -1px #9F0053, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #9F0053, inset 0 -1px #9F0053, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #9F0053, inset 0 -1px #9F0053, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-minimal.css
deleted file mode 100755
index 619bdcd96..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/pink/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #e90f92;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-barber-shop.css
deleted file mode 100755
index 1f323bbbb..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #7c60e0;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-big-counter.css
deleted file mode 100755
index 51ac58e5b..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(124, 96, 224, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-bounce.css
deleted file mode 100755
index f93f986be..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #7c60e0;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-atom.css
deleted file mode 100755
index 33b40151e..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #7c60e0;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #7c60e0;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #7c60e0;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #7c60e0;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-circle.css
deleted file mode 100755
index 08938b055..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(124, 96, 224, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-radar.css
deleted file mode 100755
index 428a2f9f3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #7c60e0 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #7c60e0 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-simple.css
deleted file mode 100755
index 3b3df67ac..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #7c60e0;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #7c60e0;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-corner-indicator.css
deleted file mode 100755
index 0d2060f95..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #7c60e0;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-fill-left.css
deleted file mode 100755
index d5b38976e..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(124, 96, 224, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flash.css
deleted file mode 100755
index 046cbefe5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #7c60e0;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #7c60e0, 0 0 5px #7c60e0;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #7c60e0;
- border-left-color: #7c60e0;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flat-top.css
deleted file mode 100755
index e13cc8828..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #7c60e0;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-loading-bar.css
deleted file mode 100755
index a62c6ba4f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #7c60e0;
- color: #7c60e0;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #7c60e0, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-mac-osx.css
deleted file mode 100755
index 6046e6bd3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #3000FF;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #1D00AF, inset 0 -1px #1D00AF, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #1D00AF, inset 0 -1px #1D00AF, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #1D00AF, inset 0 -1px #1D00AF, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #1D00AF, inset 0 -1px #1D00AF, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-minimal.css
deleted file mode 100755
index f81c2ae74..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/purple/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #7c60e0;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-barber-shop.css
deleted file mode 100755
index 0c90ed6af..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #ee3148;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-big-counter.css
deleted file mode 100755
index dc3dcddf3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(238, 49, 72, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-bounce.css
deleted file mode 100755
index dc439663a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #ee3148;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-atom.css
deleted file mode 100755
index b25ccc1e1..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #ee3148;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #ee3148;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #ee3148;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #ee3148;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-circle.css
deleted file mode 100755
index 7af81d274..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(238, 49, 72, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-radar.css
deleted file mode 100755
index f16ae0ab7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #ee3148 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #ee3148 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-simple.css
deleted file mode 100755
index e4a21117c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #ee3148;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #ee3148;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-corner-indicator.css
deleted file mode 100755
index 9994388a9..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #ee3148;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-fill-left.css
deleted file mode 100755
index eb7c57d3c..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(238, 49, 72, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flash.css
deleted file mode 100755
index 7eb57d8bc..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #ee3148;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #ee3148, 0 0 5px #ee3148;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #ee3148;
- border-left-color: #ee3148;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flat-top.css
deleted file mode 100755
index 02bc69649..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #ee3148;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-loading-bar.css
deleted file mode 100755
index 9d86bf837..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #ee3148;
- color: #ee3148;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #ee3148, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-mac-osx.css
deleted file mode 100755
index 613f73637..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #FF0000;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #AF0000, inset 0 -1px #AF0000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #AF0000, inset 0 -1px #AF0000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #AF0000, inset 0 -1px #AF0000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #AF0000, inset 0 -1px #AF0000, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-minimal.css
deleted file mode 100755
index c84e12b9a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/red/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #ee3148;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-barber-shop.css
deleted file mode 100755
index 18addba49..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #d6d6d6;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-big-counter.css
deleted file mode 100755
index 8b88b8dd7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(214, 214, 214, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-bounce.css
deleted file mode 100755
index 760dacd0e..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #d6d6d6;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-atom.css
deleted file mode 100755
index 4d46d800d..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #d6d6d6;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #d6d6d6;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #d6d6d6;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #d6d6d6;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-circle.css
deleted file mode 100755
index d2d3eb4e2..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(214, 214, 214, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-radar.css
deleted file mode 100755
index c3bc55de7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #d6d6d6 transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #d6d6d6 transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-simple.css
deleted file mode 100755
index ffdd90ef6..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #d6d6d6;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #d6d6d6;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-corner-indicator.css
deleted file mode 100755
index 4090e6832..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #d6d6d6;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-fill-left.css
deleted file mode 100755
index 1193580e1..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(214, 214, 214, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flash.css
deleted file mode 100755
index b54624856..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #d6d6d6;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #d6d6d6, 0 0 5px #d6d6d6;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #d6d6d6;
- border-left-color: #d6d6d6;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flat-top.css
deleted file mode 100755
index b7c46c5ac..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #d6d6d6;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-loading-bar.css
deleted file mode 100755
index 1786717d7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #d6d6d6;
- color: #d6d6d6;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #d6d6d6, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-mac-osx.css
deleted file mode 100755
index 6c84a8124..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #ABABAB;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #6B6B6B, inset 0 -1px #6B6B6B, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #6B6B6B, inset 0 -1px #6B6B6B, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #6B6B6B, inset 0 -1px #6B6B6B, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #6B6B6B, inset 0 -1px #6B6B6B, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-minimal.css
deleted file mode 100755
index 9255af3d2..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/silver/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #d6d6d6;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-barber-shop.css
deleted file mode 100755
index 9eb7e75f5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #ffffff;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-big-counter.css
deleted file mode 100755
index 4ffdda4ba..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(255, 255, 255, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-bounce.css
deleted file mode 100755
index ba65dcf5f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #ffffff;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-atom.css
deleted file mode 100755
index 48f5bc6b7..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #ffffff;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #ffffff;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #ffffff;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #ffffff;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-circle.css
deleted file mode 100755
index 9709f4c18..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(255, 255, 255, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-radar.css
deleted file mode 100755
index adc9f681f..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #ffffff transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #ffffff transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-simple.css
deleted file mode 100755
index ff369fcdb..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #ffffff;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #ffffff;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-corner-indicator.css
deleted file mode 100755
index b1670ce31..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #ffffff;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-fill-left.css
deleted file mode 100755
index ca746322a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(255, 255, 255, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flash.css
deleted file mode 100755
index e3d458cce..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #ffffff;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #ffffff, 0 0 5px #ffffff;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #ffffff;
- border-left-color: #ffffff;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flat-top.css
deleted file mode 100755
index a07a59965..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #ffffff;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-loading-bar.css
deleted file mode 100755
index ec57d2be5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #ffffff;
- color: #ffffff;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #ffffff, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-mac-osx.css
deleted file mode 100755
index a7c27e7ec..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #CCCCCC;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #808080, inset 0 -1px #808080, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #808080, inset 0 -1px #808080, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #808080, inset 0 -1px #808080, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #808080, inset 0 -1px #808080, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-minimal.css
deleted file mode 100755
index 25c203a74..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/white/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #ffffff;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-barber-shop.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-barber-shop.css
deleted file mode 100755
index 34b89ddb3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-barber-shop.css
+++ /dev/null
@@ -1,83 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #fcd25a;
- position: fixed;
- top: 0;
- bottom: 0;
- right: 100%;
- width: 100%;
- overflow: hidden;
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- right: -32px;
- bottom: 0;
- left: 0;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
- -webkit-background-size: 32px 32px;
- -moz-background-size: 32px 32px;
- -o-background-size: 32px 32px;
- background-size: 32px 32px;
-
- -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
- animation: pace-theme-barber-shop-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-barber-shop-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-moz-keyframes pace-theme-barber-shop-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-o-keyframes pace-theme-barber-shop-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@-ms-keyframes pace-theme-barber-shop-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
-@keyframes pace-theme-barber-shop-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-big-counter.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-big-counter.css
deleted file mode 100755
index bb5f52943..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-big-counter.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- height: 5rem;
- width: 5rem;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:after {
- display: block;
- position: absolute;
- top: 0;
- right: .5rem;
- content: attr(data-progress-text);
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- font-size: 5rem;
- line-height: 1;
- text-align: right;
- color: rgba(252, 210, 90, 0.19999999999999996);
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-bounce.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-bounce.css
deleted file mode 100755
index e1707bc91..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-bounce.css
+++ /dev/null
@@ -1,231 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- width: 140px;
- height: 300px;
- position: fixed;
- top: -90px;
- right: -20px;
- z-index: 2000;
- -webkit-transform: scale(0);
- -moz-transform: scale(0);
- -ms-transform: scale(0);
- -o-transform: scale(0);
- transform: scale(0);
- opacity: 0;
- -webkit-transition: all 2s linear 0s;
- -moz-transition: all 2s linear 0s;
- transition: all 2s linear 0s;
-}
-
-.pace.pace-active {
- -webkit-transform: scale(.25);
- -moz-transform: scale(.25);
- -ms-transform: scale(.25);
- -o-transform: scale(.25);
- transform: scale(.25);
- opacity: 1;
-}
-
-.pace .pace-activity {
- width: 140px;
- height: 140px;
- border-radius: 70px;
- background: #fcd25a;
- position: absolute;
- top: 0;
- z-index: 1911;
- -webkit-animation: pace-bounce 1s infinite;
- -moz-animation: pace-bounce 1s infinite;
- -o-animation: pace-bounce 1s infinite;
- -ms-animation: pace-bounce 1s infinite;
- animation: pace-bounce 1s infinite;
-}
-
-.pace .pace-progress {
- position: absolute;
- display: block;
- left: 50%;
- bottom: 0;
- z-index: 1910;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-transform: scaleY(.3) !important;
- -moz-transform: scaleY(.3) !important;
- -ms-transform: scaleY(.3) !important;
- -o-transform: scaleY(.3) !important;
- transform: scaleY(.3) !important;
- -webkit-animation: pace-compress .5s infinite alternate;
- -moz-animation: pace-compress .5s infinite alternate;
- -o-animation: pace-compress .5s infinite alternate;
- -ms-animation: pace-compress .5s infinite alternate;
- animation: pace-compress .5s infinite alternate;
-}
-
-@-webkit-keyframes pace-bounce {
- 0% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -webkit-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -webkit-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -webkit-animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- -webkit-animation-timing-function: ease-in;
- }
-}
-
-@-moz-keyframes pace-bounce {
- 0% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 40% {}
- 50% {
- top: 140px;
- height: 140px;
- -moz-animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- -moz-animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- -moz-animation-timing-function: ease-out;}
- 95% {
- top: 0;
- -moz-animation-timing-function: ease-in;
- }
- 100% {top: 0;
- -moz-animation-timing-function: ease-in;
- }
-}
-
-@keyframes pace-bounce {
- 0% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 50% {
- top: 140px;
- height: 140px;
- animation-timing-function: ease-out;
- }
- 55% {
- top: 160px;
- height: 120px;
- border-radius: 70px / 60px;
- animation-timing-function: ease-in;
- }
- 65% {
- top: 120px;
- height: 140px;
- border-radius: 70px;
- animation-timing-function: ease-out;
- }
- 95% {
- top: 0;
- animation-timing-function: ease-in;
- }
- 100% {
- top: 0;
- animation-timing-function: ease-in;
- }
-}
-
-@-webkit-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -webkit-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -webkit-animation-timing-function: ease-out;
- }
-}
-
-@-moz-keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- -moz-animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- -moz-animation-timing-function: ease-out;
- }
-}
-
-@keyframes pace-compress {
- 0% {
- bottom: 0;
- margin-left: -30px;
- width: 60px;
- height: 75px;
- background: rgba(20, 20, 20, .1);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .1);
- border-radius: 30px / 40px;
- animation-timing-function: ease-in;
- }
- 100% {
- bottom: 30px;
- margin-left: -10px;
- width: 20px;
- height: 5px;
- background: rgba(20, 20, 20, .3);
- box-shadow: 0 0 20px 35px rgba(20, 20, 20, .3);
- border-radius: 20px / 20px;
- animation-timing-function: ease-out;
- }
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-atom.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-atom.css
deleted file mode 100755
index fe16659ec..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-atom.css
+++ /dev/null
@@ -1,131 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace.pace-inactive {
- display: none;
-}
-
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 60px;
- width: 100px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace .pace-progress {
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- -webkit-transform: translate3d(0, 0, 0) !important;
- -ms-transform: translate3d(0, 0, 0) !important;
- transform: translate3d(0, 0, 0) !important;
-}
-
-.pace .pace-progress:before {
- content: attr(data-progress-text);
- text-align: center;
- color: #fff;
- background: #fcd25a;
- border-radius: 50%;
- font-family: "Helvetica Neue", sans-serif;
- font-size: 14px;
- font-weight: 100;
- line-height: 1;
- padding: 20% 0 7px;
- width: 50%;
- height: 40%;
- margin: 10px 0 0 30px;
- display: block;
- z-index: 999;
- position: absolute;
-}
-
-.pace .pace-activity {
- font-size: 15px;
- line-height: 1;
- z-index: 2000;
- position: absolute;
- height: 60px;
- width: 100px;
-
- display: block;
- -webkit-animation: pace-theme-center-atom-spin 2s linear infinite;
- -moz-animation: pace-theme-center-atom-spin 2s linear infinite;
- -o-animation: pace-theme-center-atom-spin 2s linear infinite;
- animation: pace-theme-center-atom-spin 2s linear infinite;
-}
-
-.pace .pace-activity {
- border-radius: 50%;
- border: 5px solid #fcd25a;
- content: ' ';
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- height: 60px;
- width: 100px;
-}
-
-.pace .pace-activity:after {
- border-radius: 50%;
- border: 5px solid #fcd25a;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(60deg);
- -moz-transform: rotate(60deg);
- -o-transform: rotate(60deg);
- transform: rotate(60deg);
-}
-
-.pace .pace-activity:before {
- border-radius: 50%;
- border: 5px solid #fcd25a;
- content: ' ';
- display: block;
- position: absolute;
- top: -5px;
- left: -5px;
- height: 60px;
- width: 100px;
-
- -webkit-transform: rotate(120deg);
- -moz-transform: rotate(120deg);
- -o-transform: rotate(120deg);
- transform: rotate(120deg);
-}
-
-@-webkit-keyframes pace-theme-center-atom-spin {
- 0% { -webkit-transform: rotate(0deg) }
- 100% { -webkit-transform: rotate(359deg) }
-}
-@-moz-keyframes pace-theme-center-atom-spin {
- 0% { -moz-transform: rotate(0deg) }
- 100% { -moz-transform: rotate(359deg) }
-}
-@-o-keyframes pace-theme-center-atom-spin {
- 0% { -o-transform: rotate(0deg) }
- 100% { -o-transform: rotate(359deg) }
-}
-@keyframes pace-theme-center-atom-spin {
- 0% { transform: rotate(0deg) }
- 100% { transform: rotate(359deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-circle.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-circle.css
deleted file mode 100755
index bbda8bf13..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-circle.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-perspective: 12rem;
- -moz-perspective: 12rem;
- -ms-perspective: 12rem;
- -o-perspective: 12rem;
- perspective: 12rem;
-
- z-index: 2000;
- position: fixed;
- height: 6rem;
- width: 6rem;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-progress {
- display: none;
-}
-
-.pace .pace-progress {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- height: 6rem;
- width: 6rem !important;
- line-height: 6rem;
- font-size: 2rem;
- border-radius: 50%;
- background: rgba(252, 210, 90, 0.8);
- color: #fff;
- font-family: "Helvetica Neue", sans-serif;
- font-weight: 100;
- text-align: center;
-
- -webkit-animation: pace-theme-center-circle-spin linear infinite 2s;
- -moz-animation: pace-theme-center-circle-spin linear infinite 2s;
- -ms-animation: pace-theme-center-circle-spin linear infinite 2s;
- -o-animation: pace-theme-center-circle-spin linear infinite 2s;
- animation: pace-theme-center-circle-spin linear infinite 2s;
-
- -webkit-transform-style: preserve-3d;
- -moz-transform-style: preserve-3d;
- -ms-transform-style: preserve-3d;
- -o-transform-style: preserve-3d;
- transform-style: preserve-3d;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: block;
-}
-
-@-webkit-keyframes pace-theme-center-circle-spin {
- from { -webkit-transform: rotateY(0deg) }
- to { -webkit-transform: rotateY(360deg) }
-}
-
-@-moz-keyframes pace-theme-center-circle-spin {
- from { -moz-transform: rotateY(0deg) }
- to { -moz-transform: rotateY(360deg) }
-}
-
-@-ms-keyframes pace-theme-center-circle-spin {
- from { -ms-transform: rotateY(0deg) }
- to { -ms-transform: rotateY(360deg) }
-}
-
-@-o-keyframes pace-theme-center-circle-spin {
- from { -o-transform: rotateY(0deg) }
- to { -o-transform: rotateY(360deg) }
-}
-
-@keyframes pace-theme-center-circle-spin {
- from { transform: rotateY(0deg) }
- to { transform: rotateY(360deg) }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-radar.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-radar.css
deleted file mode 100755
index 325933697..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-radar.css
+++ /dev/null
@@ -1,74 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- height: 90px;
- width: 90px;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
-}
-
-.pace.pace-inactive .pace-activity {
- display: none;
-}
-
-.pace .pace-activity {
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- left: -30px;
- top: -30px;
- height: 90px;
- width: 90px;
- display: block;
- border-width: 30px;
- border-style: double;
- border-color: #fcd25a transparent transparent;
- border-radius: 50%;
-
- -webkit-animation: spin 1s linear infinite;
- -moz-animation: spin 1s linear infinite;
- -o-animation: spin 1s linear infinite;
- animation: spin 1s linear infinite;
-}
-
-.pace .pace-activity:before {
- content: ' ';
- position: absolute;
- top: 10px;
- left: 10px;
- height: 50px;
- width: 50px;
- display: block;
- border-width: 10px;
- border-style: solid;
- border-color: #fcd25a transparent transparent;
- border-radius: 50%;
-}
-
-@-webkit-keyframes spin {
- 100% { -webkit-transform: rotate(359deg); }
-}
-
-@-moz-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@-o-keyframes spin {
- 100% { -moz-transform: rotate(359deg); }
-}
-
-@keyframes spin {
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-simple.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-simple.css
deleted file mode 100755
index 93b6f37d5..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-center-simple.css
+++ /dev/null
@@ -1,52 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- height: 5px;
- width: 200px;
- background: #fff;
- border: 1px solid #fcd25a;
-
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- -moz-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- -o-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- max-width: 200px;
- position: fixed;
- z-index: 2000;
- display: block;
- position: absolute;
- top: 0;
- right: 100%;
- height: 100%;
- width: 100%;
- background: #fcd25a;
-}
-
-.pace.pace-inactive {
- display: none;
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-corner-indicator.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-corner-indicator.css
deleted file mode 100755
index 82761899a..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-corner-indicator.css
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 0;
- width: 300px;
- height: 300px;
- background: #fcd25a;
- -webkit-transition: -webkit-transform 0.3s;
- transition: transform 0.3s;
- -webkit-transform: translateX(100%) translateY(-100%) rotate(45deg);
- transform: translateX(100%) translateY(-100%) rotate(45deg);
- pointer-events: none;
-}
-
-.pace.pace-active .pace-activity {
- -webkit-transform: translateX(50%) translateY(-50%) rotate(45deg);
- transform: translateX(50%) translateY(-50%) rotate(45deg);
-}
-
-.pace .pace-activity::before,
-.pace .pace-activity::after {
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- bottom: 30px;
- left: 50%;
- display: block;
- border: 5px solid #fff;
- border-radius: 50%;
- content: '';
-}
-
-.pace .pace-activity::before {
- margin-left: -40px;
- width: 80px;
- height: 80px;
- border-right-color: rgba(0, 0, 0, .2);
- border-left-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 3s linear infinite;
- animation: pace-theme-corner-indicator-spin 3s linear infinite;
-}
-
-.pace .pace-activity::after {
- bottom: 50px;
- margin-left: -20px;
- width: 40px;
- height: 40px;
- border-top-color: rgba(0, 0, 0, .2);
- border-bottom-color: rgba(0, 0, 0, .2);
- -webkit-animation: pace-theme-corner-indicator-spin 1s linear infinite;
- animation: pace-theme-corner-indicator-spin 1s linear infinite;
-}
-
-@-webkit-keyframes pace-theme-corner-indicator-spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@keyframes pace-theme-corner-indicator-spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-fill-left.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-fill-left.css
deleted file mode 100755
index 03a2333a4..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-fill-left.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: rgba(252, 210, 90, 0.19999999999999996);
- position: fixed;
- z-index: -1;
- top: 0;
- right: 100%;
- bottom: 0;
- width: 100%;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flash.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flash.css
deleted file mode 100755
index 4c01ddfe3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flash.css
+++ /dev/null
@@ -1,77 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #fcd25a;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
-
-.pace .pace-progress-inner {
- display: block;
- position: absolute;
- right: 0px;
- width: 100px;
- height: 100%;
- box-shadow: 0 0 10px #fcd25a, 0 0 5px #fcd25a;
- opacity: 1.0;
- -webkit-transform: rotate(3deg) translate(0px, -4px);
- -moz-transform: rotate(3deg) translate(0px, -4px);
- -ms-transform: rotate(3deg) translate(0px, -4px);
- -o-transform: rotate(3deg) translate(0px, -4px);
- transform: rotate(3deg) translate(0px, -4px);
-}
-
-.pace .pace-activity {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 15px;
- right: 15px;
- width: 14px;
- height: 14px;
- border: solid 2px transparent;
- border-top-color: #fcd25a;
- border-left-color: #fcd25a;
- border-radius: 10px;
- -webkit-animation: pace-spinner 400ms linear infinite;
- -moz-animation: pace-spinner 400ms linear infinite;
- -ms-animation: pace-spinner 400ms linear infinite;
- -o-animation: pace-spinner 400ms linear infinite;
- animation: pace-spinner 400ms linear infinite;
-}
-
-@-webkit-keyframes pace-spinner {
- 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-moz-keyframes pace-spinner {
- 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-o-keyframes pace-spinner {
- 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@-ms-keyframes pace-spinner {
- 0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
- 100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
-}
-@keyframes pace-spinner {
- 0% { transform: rotate(0deg); transform: rotate(0deg); }
- 100% { transform: rotate(360deg); transform: rotate(360deg); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flat-top.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flat-top.css
deleted file mode 100755
index b2efa0f22..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-flat-top.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
-
- -webkit-transform: translate3d(0, -50px, 0);
- -ms-transform: translate3d(0, -50px, 0);
- transform: translate3d(0, -50px, 0);
-
- -webkit-transition: -webkit-transform .5s ease-out;
- -ms-transition: -webkit-transform .5s ease-out;
- transition: transform .5s ease-out;
-}
-
-.pace.pace-active {
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-}
-
-.pace .pace-progress {
- display: block;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 10px;
- background: #fcd25a;
-
- pointer-events: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-loading-bar.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-loading-bar.css
deleted file mode 100755
index 43bb98db4..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-loading-bar.css
+++ /dev/null
@@ -1,198 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- z-index: 2000;
- position: fixed;
- margin: auto;
- top: 12px;
- left: 0;
- right: 0;
- bottom: 0;
- width: 200px;
- height: 50px;
- overflow: hidden;
-}
-
-.pace .pace-progress {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- -ms-box-sizing: border-box;
- -o-box-sizing: border-box;
- box-sizing: border-box;
-
- -webkit-border-radius: 2px;
- -moz-border-radius: 2px;
- border-radius: 2px;
-
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
-
- display: block;
- position: absolute;
- right: 100%;
- margin-right: -7px;
- width: 93%;
- top: 7px;
- height: 14px;
- font-size: 12px;
- background: #fcd25a;
- color: #fcd25a;
- line-height: 60px;
- font-weight: bold;
- font-family: Helvetica, Arial, "Lucida Grande", sans-serif;
-
- -webkit-box-shadow: 120px 0 #fff, 240px 0 #fff;
- -ms-box-shadow: 120px 0 #fff, 240px 0 #fff;
- box-shadow: 120px 0 #fff, 240px 0 #fff;
-}
-
-.pace .pace-progress:after {
- content: attr(data-progress-text);
- display: inline-block;
- position: fixed;
- width: 45px;
- text-align: right;
- right: 0;
- padding-right: 16px;
- top: 4px;
-}
-
-.pace .pace-progress[data-progress-text="0%"]:after { right: -200px }
-.pace .pace-progress[data-progress-text="1%"]:after { right: -198.14px }
-.pace .pace-progress[data-progress-text="2%"]:after { right: -196.28px }
-.pace .pace-progress[data-progress-text="3%"]:after { right: -194.42px }
-.pace .pace-progress[data-progress-text="4%"]:after { right: -192.56px }
-.pace .pace-progress[data-progress-text="5%"]:after { right: -190.7px }
-.pace .pace-progress[data-progress-text="6%"]:after { right: -188.84px }
-.pace .pace-progress[data-progress-text="7%"]:after { right: -186.98px }
-.pace .pace-progress[data-progress-text="8%"]:after { right: -185.12px }
-.pace .pace-progress[data-progress-text="9%"]:after { right: -183.26px }
-.pace .pace-progress[data-progress-text="10%"]:after { right: -181.4px }
-.pace .pace-progress[data-progress-text="11%"]:after { right: -179.54px }
-.pace .pace-progress[data-progress-text="12%"]:after { right: -177.68px }
-.pace .pace-progress[data-progress-text="13%"]:after { right: -175.82px }
-.pace .pace-progress[data-progress-text="14%"]:after { right: -173.96px }
-.pace .pace-progress[data-progress-text="15%"]:after { right: -172.1px }
-.pace .pace-progress[data-progress-text="16%"]:after { right: -170.24px }
-.pace .pace-progress[data-progress-text="17%"]:after { right: -168.38px }
-.pace .pace-progress[data-progress-text="18%"]:after { right: -166.52px }
-.pace .pace-progress[data-progress-text="19%"]:after { right: -164.66px }
-.pace .pace-progress[data-progress-text="20%"]:after { right: -162.8px }
-.pace .pace-progress[data-progress-text="21%"]:after { right: -160.94px }
-.pace .pace-progress[data-progress-text="22%"]:after { right: -159.08px }
-.pace .pace-progress[data-progress-text="23%"]:after { right: -157.22px }
-.pace .pace-progress[data-progress-text="24%"]:after { right: -155.36px }
-.pace .pace-progress[data-progress-text="25%"]:after { right: -153.5px }
-.pace .pace-progress[data-progress-text="26%"]:after { right: -151.64px }
-.pace .pace-progress[data-progress-text="27%"]:after { right: -149.78px }
-.pace .pace-progress[data-progress-text="28%"]:after { right: -147.92px }
-.pace .pace-progress[data-progress-text="29%"]:after { right: -146.06px }
-.pace .pace-progress[data-progress-text="30%"]:after { right: -144.2px }
-.pace .pace-progress[data-progress-text="31%"]:after { right: -142.34px }
-.pace .pace-progress[data-progress-text="32%"]:after { right: -140.48px }
-.pace .pace-progress[data-progress-text="33%"]:after { right: -138.62px }
-.pace .pace-progress[data-progress-text="34%"]:after { right: -136.76px }
-.pace .pace-progress[data-progress-text="35%"]:after { right: -134.9px }
-.pace .pace-progress[data-progress-text="36%"]:after { right: -133.04px }
-.pace .pace-progress[data-progress-text="37%"]:after { right: -131.18px }
-.pace .pace-progress[data-progress-text="38%"]:after { right: -129.32px }
-.pace .pace-progress[data-progress-text="39%"]:after { right: -127.46px }
-.pace .pace-progress[data-progress-text="40%"]:after { right: -125.6px }
-.pace .pace-progress[data-progress-text="41%"]:after { right: -123.74px }
-.pace .pace-progress[data-progress-text="42%"]:after { right: -121.88px }
-.pace .pace-progress[data-progress-text="43%"]:after { right: -120.02px }
-.pace .pace-progress[data-progress-text="44%"]:after { right: -118.16px }
-.pace .pace-progress[data-progress-text="45%"]:after { right: -116.3px }
-.pace .pace-progress[data-progress-text="46%"]:after { right: -114.44px }
-.pace .pace-progress[data-progress-text="47%"]:after { right: -112.58px }
-.pace .pace-progress[data-progress-text="48%"]:after { right: -110.72px }
-.pace .pace-progress[data-progress-text="49%"]:after { right: -108.86px }
-.pace .pace-progress[data-progress-text="50%"]:after { right: -107px }
-.pace .pace-progress[data-progress-text="51%"]:after { right: -105.14px }
-.pace .pace-progress[data-progress-text="52%"]:after { right: -103.28px }
-.pace .pace-progress[data-progress-text="53%"]:after { right: -101.42px }
-.pace .pace-progress[data-progress-text="54%"]:after { right: -99.56px }
-.pace .pace-progress[data-progress-text="55%"]:after { right: -97.7px }
-.pace .pace-progress[data-progress-text="56%"]:after { right: -95.84px }
-.pace .pace-progress[data-progress-text="57%"]:after { right: -93.98px }
-.pace .pace-progress[data-progress-text="58%"]:after { right: -92.12px }
-.pace .pace-progress[data-progress-text="59%"]:after { right: -90.26px }
-.pace .pace-progress[data-progress-text="60%"]:after { right: -88.4px }
-.pace .pace-progress[data-progress-text="61%"]:after { right: -86.53999999999999px }
-.pace .pace-progress[data-progress-text="62%"]:after { right: -84.68px }
-.pace .pace-progress[data-progress-text="63%"]:after { right: -82.82px }
-.pace .pace-progress[data-progress-text="64%"]:after { right: -80.96000000000001px }
-.pace .pace-progress[data-progress-text="65%"]:after { right: -79.1px }
-.pace .pace-progress[data-progress-text="66%"]:after { right: -77.24px }
-.pace .pace-progress[data-progress-text="67%"]:after { right: -75.38px }
-.pace .pace-progress[data-progress-text="68%"]:after { right: -73.52px }
-.pace .pace-progress[data-progress-text="69%"]:after { right: -71.66px }
-.pace .pace-progress[data-progress-text="70%"]:after { right: -69.8px }
-.pace .pace-progress[data-progress-text="71%"]:after { right: -67.94px }
-.pace .pace-progress[data-progress-text="72%"]:after { right: -66.08px }
-.pace .pace-progress[data-progress-text="73%"]:after { right: -64.22px }
-.pace .pace-progress[data-progress-text="74%"]:after { right: -62.36px }
-.pace .pace-progress[data-progress-text="75%"]:after { right: -60.5px }
-.pace .pace-progress[data-progress-text="76%"]:after { right: -58.64px }
-.pace .pace-progress[data-progress-text="77%"]:after { right: -56.78px }
-.pace .pace-progress[data-progress-text="78%"]:after { right: -54.92px }
-.pace .pace-progress[data-progress-text="79%"]:after { right: -53.06px }
-.pace .pace-progress[data-progress-text="80%"]:after { right: -51.2px }
-.pace .pace-progress[data-progress-text="81%"]:after { right: -49.34px }
-.pace .pace-progress[data-progress-text="82%"]:after { right: -47.480000000000004px }
-.pace .pace-progress[data-progress-text="83%"]:after { right: -45.62px }
-.pace .pace-progress[data-progress-text="84%"]:after { right: -43.76px }
-.pace .pace-progress[data-progress-text="85%"]:after { right: -41.9px }
-.pace .pace-progress[data-progress-text="86%"]:after { right: -40.04px }
-.pace .pace-progress[data-progress-text="87%"]:after { right: -38.18px }
-.pace .pace-progress[data-progress-text="88%"]:after { right: -36.32px }
-.pace .pace-progress[data-progress-text="89%"]:after { right: -34.46px }
-.pace .pace-progress[data-progress-text="90%"]:after { right: -32.6px }
-.pace .pace-progress[data-progress-text="91%"]:after { right: -30.740000000000002px }
-.pace .pace-progress[data-progress-text="92%"]:after { right: -28.880000000000003px }
-.pace .pace-progress[data-progress-text="93%"]:after { right: -27.02px }
-.pace .pace-progress[data-progress-text="94%"]:after { right: -25.16px }
-.pace .pace-progress[data-progress-text="95%"]:after { right: -23.3px }
-.pace .pace-progress[data-progress-text="96%"]:after { right: -21.439999999999998px }
-.pace .pace-progress[data-progress-text="97%"]:after { right: -19.58px }
-.pace .pace-progress[data-progress-text="98%"]:after { right: -17.72px }
-.pace .pace-progress[data-progress-text="99%"]:after { right: -15.86px }
-.pace .pace-progress[data-progress-text="100%"]:after { right: -14px }
-
-
-.pace .pace-activity {
- position: absolute;
- width: 100%;
- height: 28px;
- z-index: 2001;
- box-shadow: inset 0 0 0 2px #fcd25a, inset 0 0 0 7px #FFF;
- border-radius: 10px;
-}
-
-.pace.pace-inactive {
- display: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-mac-osx.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-mac-osx.css
deleted file mode 100755
index ae0fa67b3..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-mac-osx.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-
- overflow: hidden;
- position: fixed;
- top: 0;
- left: 0;
- z-index: 2000;
- width: 100%;
- height: 12px;
- background: #fff;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background-color: #FFE000;
- position: fixed;
- top: 0;
- right: 100%;
- width: 100%;
- height: 12px;
- overflow: hidden;
-
- -webkit-border-radius: 0 0 4px 0;
- -moz-border-radius: 0 0 4px 0;
- -o-border-radius: 0 0 4px 0;
- border-radius: 0 0 4px 0;
-
- -webkit-box-shadow: inset -1px 0 #E49900, inset 0 -1px #E49900, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -moz-box-shadow: inset -1px 0 #E49900, inset 0 -1px #E49900, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- -o-box-shadow: inset -1px 0 #E49900, inset 0 -1px #E49900, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
- box-shadow: inset -1px 0 #E49900, inset 0 -1px #E49900, inset 0 2px rgba(255, 255, 255, 0.5), inset 0 6px rgba(255, 255, 255, .3);
-}
-
-.pace .pace-activity {
- position: fixed;
- top: 0;
- left: 0;
- right: -28px;
- bottom: 0;
-
- -webkit-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -moz-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- -o-background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
- background-image: radial-gradient(rgba(255, 255, 255, .65) 0%, rgba(255, 255, 255, .15) 100%);
-
- -webkit-background-size: 28px 100%;
- -moz-background-size: 28px 100%;
- -o-background-size: 28px 100%;
- background-size: 28px 100%;
-
- -webkit-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -moz-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -ms-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- -o-animation: pace-theme-mac-osx-motion 500ms linear infinite;
- animation: pace-theme-mac-osx-motion 500ms linear infinite;
-}
-
-@-webkit-keyframes pace-theme-mac-osx-motion {
- 0% { -webkit-transform: none; transform: none; }
- 100% { -webkit-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-moz-keyframes pace-theme-mac-osx-motion {
- 0% { -moz-transform: none; transform: none; }
- 100% { -moz-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-o-keyframes pace-theme-mac-osx-motion {
- 0% { -o-transform: none; transform: none; }
- 100% { -o-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@-ms-keyframes pace-theme-mac-osx-motion {
- 0% { -ms-transform: none; transform: none; }
- 100% { -ms-transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
-@keyframes pace-theme-mac-osx-motion {
- 0% { transform: none; transform: none; }
- 100% { transform: translate(-28px, 0); transform: translate(-28px, 0); }
-}
diff --git a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-minimal.css b/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-minimal.css
deleted file mode 100755
index 02b080c72..000000000
--- a/front/lib/AdminLTE/bower_components/PACE/themes/yellow/pace-theme-minimal.css
+++ /dev/null
@@ -1,23 +0,0 @@
-/* This is a compiled file, you should be editing the file in the templates directory */
-.pace {
- -webkit-pointer-events: none;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- user-select: none;
-}
-
-.pace-inactive {
- display: none;
-}
-
-.pace .pace-progress {
- background: #fcd25a;
- position: fixed;
- z-index: 2000;
- top: 0;
- right: 100%;
- width: 100%;
- height: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.bower.json b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.bower.json
deleted file mode 100755
index 6867cfc44..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.bower.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "bootstrap-colorpicker",
- "homepage": "https://github.com/itsjavi/bootstrap-colorpicker",
- "version": "2.5.3",
- "_release": "2.5.3",
- "_resolution": {
- "type": "version",
- "tag": "2.5.3",
- "commit": "525cd6a0aa26ae95803bbf34d231c4163136a314"
- },
- "_source": "https://github.com/itsjavi/bootstrap-colorpicker.git",
- "_target": "^2.5.1",
- "_originalSource": "bootstrap-colorpicker"
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.editorconfig b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.editorconfig
deleted file mode 100755
index e567bc73e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.editorconfig
+++ /dev/null
@@ -1,11 +0,0 @@
-# EditorConfig is awesome: http://EditorConfig.org
-
-root = true
-
-[*]
-charset = utf-8
-end_of_line = lf
-indent_size = 2
-indent_style = space
-insert_final_newline = true
-trim_trailing_whitespace = true
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CODE_OF_CONDUCT.md b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CODE_OF_CONDUCT.md
deleted file mode 100755
index 854460dff..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor Covenant Code of Conduct
-
-## Our Pledge
-
-In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
-
-## Our Standards
-
-Examples of behavior that contributes to creating a positive environment include:
-
-* Using welcoming and inclusive language
-* Being respectful of differing viewpoints and experiences
-* Gracefully accepting constructive criticism
-* Focusing on what is best for the community
-* Showing empathy towards other community members
-
-Examples of unacceptable behavior by participants include:
-
-* The use of sexualized language or imagery and unwelcome sexual attention or advances
-* Trolling, insulting/derogatory comments, and personal or political attacks
-* Public or private harassment
-* Publishing others' private information, such as a physical or electronic address, without explicit permission
-* Other conduct which could reasonably be considered inappropriate in a professional setting
-
-## Our Responsibilities
-
-Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
-
-Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
-
-## Scope
-
-This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
-
-## Enforcement
-
-Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team members through their social media sites or at _git @ itsjavi.com_.
-The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
-
-Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
-
-## Attribution
-
-This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
-
-[homepage]: http://contributor-covenant.org
-[version]: http://contributor-covenant.org/version/1/4/
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CONTRIBUTING.md b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CONTRIBUTING.md
deleted file mode 100755
index 6c8ee4540..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/CONTRIBUTING.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributing
-
-## Support
-
-The issue tracker is not the place for support requests. If you get stuck with bootstrap-colorpicker, it's very likely
-that the fine folks at [StackOverflow](http://stackoverflow.com/) will be able to help you; simply describe the problem
-you're having and provide them a link to the repo (so they know what code you're using).
-
-
-## Issues
-For feature requests, suggestions or ideas, add `[SUGGESTION]` before the title of the issue, for anything else follow
-the following guidelines.
-
-### Steps to submit an issue
-These steps are mandatory. Issues that are not clear or are not clearly reproduceable with a live example will be closed.
-
-- Reproduce your problem in a separated environment, like in JSFiddle,
- [here is a template for it](http://jsfiddle.net/0vopxm13/157/), that you can fork in the same page.
- It already includes the required JS and CSS files.
-- Before posting your issue, consider adding this information:
- * Expected behaviour: what should happen?
- * Actual behaviour: what happens instead?
- * Your context: Where it happens? In which browser and version (if applicable)?
- * Plugin version (and/or commit reference).
- * jQuery version you use and list of all other plugins/scripts you are using with this one and may cause some conflict.
- * A link to your JSFiddle (or similar tool) demo where you reproduced the problem (if applicable).
-
-## Pull Requests
-
-Patches and new features are welcome!
-
-- Prerequisites: having `node`, `npm`, `yarn` and `grunt` installed in your machine.
-- After a fresh clone for your fork, you need to run `yarn install` inside the project's root folder.
-- For checking your changes in the browser you can execute `node serve` and navigate to http://localhost:5000/
-- Before any commit run always `grunt` inside the project's root folder, to update the dist files
- (never modify them manually).
-- Do not change the plugin coding style.
-- Check that the index.html demos aren't broken (modify if necessary).
-- Test your code at least in Chrome, Firefox and Edge.
-- Any new feature should come with updated docs if applicable (a demonstration).
-- Generate the `/dist` files executing `grunt` before your Pull Request.
-- Push to your fork and submit the pull request.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/ISSUE_TEMPLATE.md b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/ISSUE_TEMPLATE.md
deleted file mode 100755
index b15120875..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-### Brief description
-
-{Please write here a summary of the issue}
-
-
-### Which software are you using?
-
-- bootstrap-colorpicker version: {Please write here}
-- bootstrap version: {Please write here}
-- jQuery version: {Please write here}
-- Browser name and version: {Please write here}
-- Operative System name an version: {Please write here}
-
-### What's the expected or desirable behavior?
-
-{Please write here in case of code-related issues or remove this section}
-
-### What's the actual current behavior?
-
-{Please write here in case of code-related issues or remove this section}
-
-### Are there some other related issues or PRs?
-
-{Please write here if applicable the issue numbers or remove this section}
-
-### Steps to reproduce
-
-{Please write here in case of code-related issues or remove this section}
-
-
-*Live example*: {Please write here a link to your JsFiddle example}
-
-### Additional Comments (if any)
-
-{Please write here}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/PULL_REQUEST_TEMPLATE.md b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/PULL_REQUEST_TEMPLATE.md
deleted file mode 100755
index ac266f8c8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.github/PULL_REQUEST_TEMPLATE.md
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-### Is your PR fixing an issue or introduces a new feature?
-
-{Please write here}
-
-### In case of fix, how this PR fixes the problem?
-
-{Please write here only in case of fix PR or remove the section}
-
-{Please also mention the related issue numbers you are trying to close, if applicable}
-
-### In case of new feature, what are the benefits and use cases?
-
-{Please write here only in case of feature PR or remove the section}
-
-### Check list
-Please mark with `x` inside the `[ ]` for anything that applies to this PR.
-
-- [ ] All tests passed in travis-ci
-- [ ] Regenerated the `dist` files via `grunt`
-- [ ] All documentation examples are still working after testing them via `node serve`
-- [ ] Added an example in the documentation for the newly introduced feature
-- [ ] Provided an example via JsFiddle in the description of this PR
-- [ ] Tested at least with latest Chrome, Firefox and Mobile (iOS Safari and/or Chrome for Android)
-- [ ] This PR also introduces coding style changes (indentation, etc), in a separated commit
-- [ ] The commit history is understandable and grouped into the minimum number of commits possible
-- [ ] I've followed all other [`CONTRIBUTING.md`](.github/CONTRIBUTING.md#pull-requests) guidelines for Pull Requests.
-
-### Additional Comments (if any)
-
-{Please write here}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.jshintrc b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.jshintrc
deleted file mode 100755
index 3ec463e64..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.jshintrc
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "bitwise": false,
- "browser": true,
- "curly": true,
- "eqeqeq": true,
- "eqnull": true,
- "esnext": true,
- "immed": true,
- "jquery": true,
- "latedef": true,
- "newcap": true,
- "noarg": true,
- "node": true,
- "strict": false,
- "trailing": true,
- "undef": true,
- "predef" : ["define"]
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.npmignore b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.npmignore
deleted file mode 100755
index 7b0acd89a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.npmignore
+++ /dev/null
@@ -1,21 +0,0 @@
-*~
-.DS_Store
-.DS_Store*
-ehthumbs.db
-Thumbs.db
-*.log
-/node_modules/
-/bower_components/
-/nbproject/
-/gh-pages/
-/package-lock.json
-Gruntfile.js
-/build
-/docs
-/tests
-/spec
-.*
-/src/docs
-*.psd
-*.ai
-composer.json
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.travis.yml b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.travis.yml
deleted file mode 100755
index e1e9cb5f8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/.travis.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-language: node_js
-node_js:
- - "6"
- - "8"
-before_script:
- - npm install -g grunt-cli
- - curl -o- -L https://yarnpkg.com/install.sh | bash
-
-script:
- - yarn install
- - grunt --verbose
- # Check that files didn't change after running grunt. It should be run before pushing any code change.
- - if ! git diff --name-only --quiet -- dist docs src index.html --; then echo \"Files where modified after grunt execution!!...\"; exit 1; fi
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/Gruntfile.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/Gruntfile.js
deleted file mode 100755
index c8e7f6383..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/Gruntfile.js
+++ /dev/null
@@ -1,188 +0,0 @@
-'use strict';
-module.exports = function (grunt) {
-
- grunt.initConfig({
- pkg: grunt.file.readJSON('package.json'),
- less: {
- dist: {
- options: {
- strictMath: true,
- sourceMap: true,
- outputSourceFiles: true,
- sourceMapURL: '<%= pkg.name %>.css.map',
- sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
- },
- src: 'src/less/colorpicker.less',
- dest: 'dist/css/<%= pkg.name %>.css'
- }
- },
- cssmin: {
- options: {
- compatibility: 'ie8',
- keepSpecialComments: '*',
- sourceMap: true,
- advanced: false
- },
- dist: {
- src: 'dist/css/<%= pkg.name %>.css',
- dest: 'dist/css/<%= pkg.name %>.min.css'
- }
- },
- jshint: {
- options: {
- jshintrc: '.jshintrc'
- },
- files: [
- 'Gruntfile.js',
- 'docs/docs.js',
- 'dist/js/<%= pkg.name %>.js'
- ]
- },
- jsbeautifier: {
- options: {
- js: {
- braceStyle: "collapse",
- breakChainedMethods: false,
- e4x: false,
- evalCode: false,
- indentChar: " ",
- indentLevel: 0,
- indentSize: 2,
- indentWithTabs: false,
- jslintHappy: false,
- keepArrayIndentation: false,
- keepFunctionIndentation: false,
- maxPreserveNewlines: 2,
- preserveNewlines: true,
- spaceBeforeConditional: true,
- spaceInParen: false,
- unescapeStrings: false,
- wrapLineLength: 0,
- endWithNewline: true
- }
- },
- src: ['src/js/*.js', 'docs/docs.js'],
- dist: ['dist/js/<%= pkg.name %>.js']
- },
- combine: {
- js: {
- input: 'src/js/colorpicker-plugin-wrapper.js',
- output: 'dist/js/<%= pkg.name %>.js',
- tokens: [{
- token: "//@version",
- string: '<%= pkg.version %>'
- }, {
- token: "//@colorpicker-color",
- file: 'src/js/colorpicker-color.js'
- }, {
- token: "//@colorpicker-defaults",
- file: 'src/js/colorpicker-defaults.js'
- }, {
- token: "//@colorpicker-component",
- file: 'src/js/colorpicker-component.js'
- }]
- },
- less: {
- input: 'src/less/colorpicker.less',
- output: 'src/less/colorpicker.less',
- tokens: [{
- token: "//@version",
- string: '<%= pkg.version %>'
- }]
- }
- },
- strip_code: {
- src: {
- src: 'dist/js/*.js'
- }
- },
- uglify: {
- options: {
- banner: '/*!\n * Bootstrap Colorpicker v<%= pkg.version %>\n' +
- ' * https://itsjavi.com/bootstrap-colorpicker/\n */\n'
- },
- dist: {
- files: {
- 'dist/js/<%= pkg.name %>.min.js': [
- 'dist/js/<%= pkg.name %>.js'
- ]
- }
- }
- },
- watch: {
- less: {
- files: [
- 'src/less/*.less'
- ],
- tasks: ['combine:less', 'less', 'cssmin']
- },
- js: {
- files: [
- 'src/js/*.js',
- 'docs/docs.js'
- ],
- tasks: ['jsbeautifier:src', 'combine:js', 'jsbeautifier:dist', 'uglify', 'jshint']
- },
- handlebars: {
- files: [
- 'docs/*.hbs',
- 'docs/**/*.hbs',
- 'docs/helpers/**/*.js'
- ],
- tasks: ['assemble']
- }
- },
- assemble: {
- options: {
- assets: 'docs/assets',
- helpers: ['docs/helpers/code'],
- partials: ['docs/includes/**/*.hbs'],
- layout: ['docs/layout.hbs'],
- data: ['package.json'],
- flatten: true
- },
- site: {
- src: ['docs/pages/*.hbs'],
- dest: './'
- }
- },
- clean: {
- dist: [
- 'dist/css/*',
- 'dist/js/*',
- 'index_new.html'
- ]
- }
- });
-
- // Load tasks
- grunt.loadNpmTasks('grunt-contrib-clean');
- grunt.loadNpmTasks('grunt-contrib-less');
- grunt.loadNpmTasks('grunt-contrib-cssmin');
- grunt.loadNpmTasks('grunt-jsbeautifier');
- grunt.loadNpmTasks('grunt-combine');
- grunt.loadNpmTasks('grunt-contrib-uglify');
- grunt.loadNpmTasks('grunt-contrib-watch');
- grunt.loadNpmTasks('grunt-contrib-jshint');
- grunt.loadNpmTasks('grunt-assemble');
- grunt.loadNpmTasks('grunt-strip-code');
-
- // Register tasks
- grunt.registerTask('default', [
- 'clean',
- 'combine:less',
- 'less',
- 'cssmin',
- 'jsbeautifier:src',
- 'combine:js',
- 'jsbeautifier:dist',
- 'strip_code',
- 'uglify',
- 'assemble',
- 'jshint'
- ]);
- grunt.registerTask('dev', [
- 'watch'
- ]);
-
-};
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/LICENSE b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/LICENSE
deleted file mode 100755
index a37331e73..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/LICENSE
+++ /dev/null
@@ -1,13 +0,0 @@
-Copyright 2012 Stefan Petre
-
-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.
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/README.md b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/README.md
deleted file mode 100755
index 27309ef25..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Bootstrap Colorpicker 2
-
-Simple and customizable colorpicker component for Twitter Bootstrap.
-
-[![Build Status](https://api.travis-ci.org/farbelous/bootstrap-colorpicker.svg?branch=v2.x)](https://travis-ci.org/farbelous/bootstrap-colorpicker)
-
-## Installation
-For downloading the source code, you have many choices:
-
-- Downloading the [latest v2.x source code ZIP file](https://github.com/farbelous/bootstrap-colorpicker/archive/v2.x.zip)
-- Cloning the source code: `git clone https://github.com/farbelous/bootstrap-colorpicker.git`
-- Installing via NPM: `npm install bootstrap-colorpicker`
-- Installing via Yarn: `yarn add bootstrap-colorpicker`
-- Installing via Composer: `composer require itsjavi/bootstrap-colorpicker`
-
-## Getting started
-- For using the plugin you will only need the files under the `dist` folder
-- [Documentation and demos](https://farbelous.github.io/bootstrap-colorpicker/v2/)
-
-## Contributing and reporting issues
-If you want to contribute to the source code or report issues and suggestions, please read the [CONTRIBUTING.md](.github/CONTRIBUTING.md) guidelines first. Some steps are mandatory in order to accept a Pull Request.
-
-## Credits
-Originally written by [Stefan Petre](http://www.eyecon.ro/)
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/composer.json b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/composer.json
deleted file mode 100755
index f783b569e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/composer.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "itsjavi/bootstrap-colorpicker",
- "description": "Fancy and customizable colorpicker plugin for Twitter Bootstrap",
- "license": "Apache License Version 2.0",
- "authors": [
- {
- "name": "Javier Aguilar",
- "homepage": "https://itsjavi.com"
- }
- ],
- "minimum-stability": "dev",
- "require": {
- "components/jquery" : ">=1.10"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css
deleted file mode 100755
index 359676d5e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css
+++ /dev/null
@@ -1,230 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */
-.colorpicker-saturation {
- width: 100px;
- height: 100px;
- background-image: url("data:image/png;base64,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");
- cursor: crosshair;
- float: left;
-}
-.colorpicker-saturation i {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #000;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
- position: absolute;
- top: 0;
- left: 0;
- margin: -4px 0 0 -4px;
-}
-.colorpicker-saturation i b {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #fff;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
-}
-.colorpicker-hue,
-.colorpicker-alpha {
- width: 15px;
- height: 100px;
- float: left;
- cursor: row-resize;
- margin-left: 4px;
- margin-bottom: 4px;
-}
-.colorpicker-hue i,
-.colorpicker-alpha i {
- display: block;
- height: 1px;
- background: #000;
- border-top: 1px solid #fff;
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- margin-top: -1px;
-}
-.colorpicker-hue {
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC");
-}
-.colorpicker-alpha {
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=");
- display: none;
-}
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-alpha {
- background-size: contain;
-}
-.colorpicker {
- padding: 4px;
- min-width: 130px;
- margin-top: 1px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- z-index: 2500;
-}
-.colorpicker:before,
-.colorpicker:after {
- display: table;
- content: "";
- line-height: 0;
-}
-.colorpicker:after {
- clear: both;
-}
-.colorpicker:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid #ccc;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
- top: -7px;
- left: 6px;
-}
-.colorpicker:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #ffffff;
- position: absolute;
- top: -6px;
- left: 7px;
-}
-.colorpicker div {
- position: relative;
-}
-.colorpicker.colorpicker-with-alpha {
- min-width: 140px;
-}
-.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
- display: block;
-}
-.colorpicker-color {
- height: 10px;
- margin-top: 5px;
- clear: both;
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=");
- background-position: 0 100%;
-}
-.colorpicker-color div {
- height: 10px;
-}
-.colorpicker-selectors {
- display: none;
- height: 10px;
- margin-top: 5px;
- clear: both;
-}
-.colorpicker-selectors i {
- cursor: pointer;
- float: left;
- height: 10px;
- width: 10px;
-}
-.colorpicker-selectors i + i {
- margin-left: 3px;
-}
-.colorpicker-element .input-group-addon i,
-.colorpicker-element .add-on i {
- display: inline-block;
- cursor: pointer;
- height: 16px;
- vertical-align: text-top;
- width: 16px;
-}
-.colorpicker.colorpicker-inline {
- position: relative;
- display: inline-block;
- float: none;
- z-index: auto;
-}
-.colorpicker.colorpicker-horizontal {
- width: 110px;
- min-width: 110px;
- height: auto;
-}
-.colorpicker.colorpicker-horizontal .colorpicker-saturation {
- margin-bottom: 4px;
-}
-.colorpicker.colorpicker-horizontal .colorpicker-color {
- width: 100px;
-}
-.colorpicker.colorpicker-horizontal .colorpicker-hue,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- width: 100px;
- height: 15px;
- float: left;
- cursor: col-resize;
- margin-left: 0px;
- margin-bottom: 4px;
-}
-.colorpicker.colorpicker-horizontal .colorpicker-hue i,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
- display: block;
- height: 15px;
- background: #ffffff;
- position: absolute;
- top: 0;
- left: 0;
- width: 1px;
- border: none;
- margin-top: 0px;
-}
-.colorpicker.colorpicker-horizontal .colorpicker-hue {
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==");
-}
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=");
-}
-.colorpicker-right:before {
- left: auto;
- right: 6px;
-}
-.colorpicker-right:after {
- left: auto;
- right: 7px;
-}
-.colorpicker-no-arrow:before {
- border-right: 0;
- border-left: 0;
-}
-.colorpicker-no-arrow:after {
- border-right: 0;
- border-left: 0;
-}
-.colorpicker.colorpicker-visible,
-.colorpicker-alpha.colorpicker-visible,
-.colorpicker-saturation.colorpicker-visible,
-.colorpicker-hue.colorpicker-visible,
-.colorpicker-selectors.colorpicker-visible {
- display: block;
-}
-.colorpicker.colorpicker-hidden,
-.colorpicker-alpha.colorpicker-hidden,
-.colorpicker-saturation.colorpicker-hidden,
-.colorpicker-hue.colorpicker-hidden,
-.colorpicker-selectors.colorpicker-hidden {
- display: none;
-}
-.colorpicker-inline.colorpicker-visible {
- display: inline-block;
-}
-/*# sourceMappingURL=bootstrap-colorpicker.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css.map b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css.map
deleted file mode 100755
index 52fcfb117..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["src/less/colorpicker.less"],"names":[],"mappings":";;;;;;;;;AAoBA;EACE,YAAA;EACA,aAAA;EAXA,sBAAsB,66KAAtB;EAaA,iBAAA;EACA,WAAA;;AALF,uBAME;EACE,cAAA;EACA,WAAA;EACA,UAAA;EACA,sBAAA;EAfF,0BAAA;EACA,uBAAA;EACA,kBAAA;EAeE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,qBAAA;;AAfJ,uBAME,EAUE;EACE,cAAA;EACA,WAAA;EACA,UAAA;EACA,sBAAA;EAzBJ,0BAAA;EACA,uBAAA;EACA,kBAAA;;AA6BF;AACA;EACE,WAAA;EACA,aAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,kBAAA;;AAGF,gBAAiB;AACjB,kBAAmB;EACjB,cAAA;EACA,WAAA;EACA,gBAAA;EACA,0BAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,gBAAA;;AAGF;EA1DE,sBAAsB,yrBAAtB;;AA8DF;EA9DE,sBAAsB,qqBAAtB;EAgEA,aAAA;;AAGF;AACA;AACA;EACE,wBAAA;;AAGF;EACE,YAAA;EACA,gBAAA;EACA,eAAA;EAxEA,0BAAA;EACA,uBAAA;EACA,kBAAA;EAwEA,aAAA;;AAGF,YAAY;AACZ,YAAY;EACV,cAAA;EACA,SAAS,EAAT;EACA,cAAA;;AAGF,YAAY;EACV,WAAA;;AAGF,YAAY;EACV,SAAS,EAAT;EACA,qBAAA;EACA,kCAAA;EACA,mCAAA;EACA,6BAAA;EACA,uCAAA;EACA,kBAAA;EACA,SAAA;EACA,SAAA;;AAGF,YAAY;EACV,SAAS,EAAT;EACA,qBAAA;EACA,kCAAA;EACA,mCAAA;EACA,gCAAA;EACA,kBAAA;EACA,SAAA;EACA,SAAA;;AAGF,YAAa;EACX,kBAAA;;AAGF,YAAY;EACV,gBAAA;;AAGF,YAAY,uBAAwB;EAClC,cAAA;;AAGF;EACE,YAAA;EACA,eAAA;EACA,WAAA;EAlIA,sBAAsB,qqBAAtB;EAoIA,2BAAA;;AAGF,kBAAmB;EACjB,YAAA;;AAGF;EACE,aAAA;EACA,YAAA;EACA,eAAA;EACA,WAAA;;AAGF,sBAAuB;EACrB,eAAA;EACA,WAAA;EACA,YAAA;EACA,WAAA;;AAGF,sBAAuB,EAAE;EACvB,gBAAA;;AAGF,oBAAqB,mBAAmB;AACxC,oBAAqB,QAAQ;EAC3B,qBAAA;EACA,eAAA;EACA,YAAA;EACA,wBAAA;EACA,WAAA;;AAGF,YAAY;EACV,kBAAA;EACA,qBAAA;EACA,WAAA;EACA,aAAA;;AAGF,YAAY;EACV,YAAA;EACA,gBAAA;EACA,YAAA;;AAGF,YAAY,uBAAwB;EAClC,kBAAA;;AAGF,YAAY,uBAAwB;EAClC,YAAA;;AAGF,YAAY,uBAAwB;AACpC,YAAY,uBAAwB;EAClC,YAAA;EACA,YAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,kBAAA;;AAGF,YAAY,uBAAwB,iBAAiB;AACrD,YAAY,uBAAwB,mBAAmB;EACrD,cAAA;EACA,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,UAAA;EACA,YAAA;EACA,eAAA;;AAGF,YAAY,uBAAwB;EAlNlC,sBAAsB,ypBAAtB;;AAsNF,YAAY,uBAAwB;EAtNlC,sBAAsB,iwBAAtB;;AA0NF,kBAAkB;EAChB,UAAA;EACA,UAAA;;AAGF,kBAAkB;EAChB,UAAA;EACA,UAAA;;AAGF,qBAAqB;EACnB,eAAA;EACA,cAAA;;AAGF,qBAAqB;EACnB,eAAA;EACA,cAAA;;AAQA,YAAC;AAAD,kBAAC;AAAD,uBAAC;AAAD,gBAAC;AAAD,sBAAC;EACC,cAAA;;AASF,YAAC;AAAD,kBAAC;AAAD,uBAAC;AAAD,gBAAC;AAAD,sBAAC;EACC,aAAA;;AAIJ,mBAAmB;EACjB,qBAAA","sourcesContent":["/*!\n * Bootstrap Colorpicker v2.5.2\n * https://itsjavi.com/bootstrap-colorpicker/\n *\n * Originally written by (c) 2012 Stefan Petre\n * Licensed under the Apache License v2.0\n * http://www.apache.org/licenses/LICENSE-2.0.txt\n *\n */\n\n.bgImg(@imgBase64) {\n background-image: url(\"@{imgBase64}\");\n}\n\n.borderRadius(@size) {\n -webkit-border-radius: @size;\n -moz-border-radius: @size;\n border-radius: @size;\n}\n\n.colorpicker-saturation {\n width: 100px;\n height: 100px;\n .bgImg('data:image/png;base64,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');\n cursor: crosshair;\n float: left;\n i {\n display: block;\n height: 5px;\n width: 5px;\n border: 1px solid #000;\n .borderRadius(5px);\n position: absolute;\n top: 0;\n left: 0;\n margin: -4px 0 0 -4px;\n b {\n display: block;\n height: 5px;\n width: 5px;\n border: 1px solid #fff;\n .borderRadius(5px);\n }\n }\n}\n\n.colorpicker-hue,\n.colorpicker-alpha {\n width: 15px;\n height: 100px;\n float: left;\n cursor: row-resize;\n margin-left: 4px;\n margin-bottom: 4px;\n}\n\n.colorpicker-hue i,\n.colorpicker-alpha i {\n display: block;\n height: 1px;\n background: #000;\n border-top: 1px solid #fff;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n margin-top: -1px;\n}\n\n.colorpicker-hue {\n .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC');\n}\n\n.colorpicker-alpha {\n .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');\n display: none;\n}\n\n.colorpicker-saturation,\n.colorpicker-hue,\n.colorpicker-alpha {\n background-size: contain;\n}\n\n.colorpicker {\n padding: 4px;\n min-width: 130px;\n margin-top: 1px;\n .borderRadius(4px);\n z-index: 2500;\n}\n\n.colorpicker:before,\n.colorpicker:after {\n display: table;\n content: \"\";\n line-height: 0;\n}\n\n.colorpicker:after {\n clear: both;\n}\n\n.colorpicker:before {\n content: '';\n display: inline-block;\n border-left: 7px solid transparent;\n border-right: 7px solid transparent;\n border-bottom: 7px solid #ccc;\n border-bottom-color: rgba(0, 0, 0, 0.2);\n position: absolute;\n top: -7px;\n left: 6px;\n}\n\n.colorpicker:after {\n content: '';\n display: inline-block;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 6px solid #ffffff;\n position: absolute;\n top: -6px;\n left: 7px;\n}\n\n.colorpicker div {\n position: relative;\n}\n\n.colorpicker.colorpicker-with-alpha {\n min-width: 140px;\n}\n\n.colorpicker.colorpicker-with-alpha .colorpicker-alpha {\n display: block;\n}\n\n.colorpicker-color {\n height: 10px;\n margin-top: 5px;\n clear: both;\n .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');\n background-position: 0 100%;\n}\n\n.colorpicker-color div {\n height: 10px;\n}\n\n.colorpicker-selectors {\n display: none;\n height: 10px;\n margin-top: 5px;\n clear: both;\n}\n\n.colorpicker-selectors i {\n cursor: pointer;\n float: left;\n height: 10px;\n width: 10px;\n}\n\n.colorpicker-selectors i + i {\n margin-left: 3px;\n}\n\n.colorpicker-element .input-group-addon i,\n.colorpicker-element .add-on i {\n display: inline-block;\n cursor: pointer;\n height: 16px;\n vertical-align: text-top;\n width: 16px;\n}\n\n.colorpicker.colorpicker-inline {\n position: relative;\n display: inline-block;\n float: none;\n z-index: auto;\n}\n\n.colorpicker.colorpicker-horizontal {\n width: 110px;\n min-width: 110px;\n height: auto;\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-saturation {\n margin-bottom: 4px;\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-color {\n width: 100px;\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-hue,\n.colorpicker.colorpicker-horizontal .colorpicker-alpha {\n width: 100px;\n height: 15px;\n float: left;\n cursor: col-resize;\n margin-left: 0px;\n margin-bottom: 4px;\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-hue i,\n.colorpicker.colorpicker-horizontal .colorpicker-alpha i {\n display: block;\n height: 15px;\n background: #ffffff;\n position: absolute;\n top: 0;\n left: 0;\n width: 1px;\n border: none;\n margin-top: 0px;\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-hue {\n .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==');\n}\n\n.colorpicker.colorpicker-horizontal .colorpicker-alpha {\n .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=');\n}\n\n.colorpicker-right:before {\n left: auto;\n right: 6px;\n}\n\n.colorpicker-right:after {\n left: auto;\n right: 7px;\n}\n\n.colorpicker-no-arrow:before {\n border-right: 0;\n border-left: 0;\n}\n\n.colorpicker-no-arrow:after {\n border-right: 0;\n border-left: 0;\n}\n\n.colorpicker,\n.colorpicker-alpha,\n.colorpicker-saturation,\n.colorpicker-hue,\n.colorpicker-selectors {\n &.colorpicker-visible {\n display: block;\n }\n}\n\n.colorpicker,\n.colorpicker-alpha,\n.colorpicker-saturation,\n.colorpicker-hue,\n.colorpicker-selectors {\n &.colorpicker-hidden {\n display: none;\n }\n}\n\n.colorpicker-inline.colorpicker-visible {\n display: inline-block;\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css
deleted file mode 100755
index 589b84ab2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css
+++ /dev/null
@@ -1,10 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */.colorpicker-saturation{width:100px;height:100px;background-image:url(data:image/png;base64,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);cursor:crosshair;float:left}.colorpicker-saturation i{display:block;height:5px;width:5px;border:1px solid #000;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;position:absolute;top:0;left:0;margin:-4px 0 0 -4px}.colorpicker-saturation i b{display:block;height:5px;width:5px;border:1px solid #fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.colorpicker-alpha,.colorpicker-hue{width:15px;height:100px;float:left;cursor:row-resize;margin-left:4px;margin-bottom:4px}.colorpicker-alpha i,.colorpicker-hue i{display:block;height:1px;background:#000;border-top:1px solid #fff;position:absolute;top:0;left:0;width:100%;margin-top:-1px}.colorpicker-hue{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC)}.colorpicker-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=);display:none}.colorpicker-alpha,.colorpicker-hue,.colorpicker-saturation{background-size:contain}.colorpicker{padding:4px;min-width:130px;margin-top:1px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;z-index:2500}.colorpicker:after,.colorpicker:before{display:table;content:"";line-height:0}.colorpicker:after{clear:both}.colorpicker:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:6px}.colorpicker:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.colorpicker div{position:relative}.colorpicker.colorpicker-with-alpha{min-width:140px}.colorpicker.colorpicker-with-alpha .colorpicker-alpha{display:block}.colorpicker-color{height:10px;margin-top:5px;clear:both;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=);background-position:0 100%}.colorpicker-color div{height:10px}.colorpicker-selectors{display:none;height:10px;margin-top:5px;clear:both}.colorpicker-selectors i{cursor:pointer;float:left;height:10px;width:10px}.colorpicker-selectors i+i{margin-left:3px}.colorpicker-element .add-on i,.colorpicker-element .input-group-addon i{display:inline-block;cursor:pointer;height:16px;vertical-align:text-top;width:16px}.colorpicker.colorpicker-inline{position:relative;display:inline-block;float:none;z-index:auto}.colorpicker.colorpicker-horizontal{width:110px;min-width:110px;height:auto}.colorpicker.colorpicker-horizontal .colorpicker-saturation{margin-bottom:4px}.colorpicker.colorpicker-horizontal .colorpicker-color{width:100px}.colorpicker.colorpicker-horizontal .colorpicker-alpha,.colorpicker.colorpicker-horizontal .colorpicker-hue{width:100px;height:15px;float:left;cursor:col-resize;margin-left:0;margin-bottom:4px}.colorpicker.colorpicker-horizontal .colorpicker-alpha i,.colorpicker.colorpicker-horizontal .colorpicker-hue i{display:block;height:15px;background:#fff;position:absolute;top:0;left:0;width:1px;border:none;margin-top:0}.colorpicker.colorpicker-horizontal .colorpicker-hue{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==)}.colorpicker.colorpicker-horizontal .colorpicker-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=)}.colorpicker-right:before{left:auto;right:6px}.colorpicker-right:after{left:auto;right:7px}.colorpicker-no-arrow:before{border-right:0;border-left:0}.colorpicker-no-arrow:after{border-right:0;border-left:0}.colorpicker-alpha.colorpicker-visible,.colorpicker-hue.colorpicker-visible,.colorpicker-saturation.colorpicker-visible,.colorpicker-selectors.colorpicker-visible,.colorpicker.colorpicker-visible{display:block}.colorpicker-alpha.colorpicker-hidden,.colorpicker-hue.colorpicker-hidden,.colorpicker-saturation.colorpicker-hidden,.colorpicker-selectors.colorpicker-hidden,.colorpicker.colorpicker-hidden{display:none}.colorpicker-inline.colorpicker-visible{display:inline-block}
-/*# sourceMappingURL=bootstrap-colorpicker.min.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css.map b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css.map
deleted file mode 100755
index 82c3ed06a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/css/bootstrap-colorpicker.min.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["src/less/colorpicker.less"],"names":[],"mappings":";;;;;;;;AAoBA,wBACE,MAAA,MACA,OAAA,MAXA,iBAAsB,g7KAatB,OAAA,UACA,MAAA,KACA,0BACE,QAAA,MACA,OAAA,IACA,MAAA,IACA,OAAA,IAAA,MAAA,KAfF,sBAAA,IACA,mBAAA,IACA,cAAA,IAeE,SAAA,SACA,IAAA,EACA,KAAA,EACA,OAAA,KAAA,EAAA,EAAA,KACA,4BACE,QAAA,MACA,OAAA,IACA,MAAA,IACA,OAAA,IAAA,MAAA,KAzBJ,sBAAA,IACA,mBAAA,IACA,cAAA,IA8BF,mBADA,iBAEE,MAAA,KACA,OAAA,MACA,MAAA,KACA,OAAA,WACA,YAAA,IACA,cAAA,IAIiB,qBADF,mBAEf,QAAA,MACA,OAAA,IACA,WAAA,KACA,WAAA,IAAA,MAAA,KACA,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,KACA,WAAA,KAGF,iBA1DE,iBAAsB,4rBA8DxB,mBA9DE,iBAAsB,wqBAgEtB,QAAA,KAKF,mBADA,iBADA,wBAGE,gBAAA,QAGF,aACE,QAAA,IACA,UAAA,MACA,WAAA,IAxEA,sBAAA,IACA,mBAAA,IACA,cAAA,IAwEA,QAAA,KAIU,mBADA,oBAEV,QAAA,MACA,QAAA,GACA,YAAA,EAGU,mBACV,MAAA,KAGU,oBACV,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,KACA,oBAAA,eACA,SAAA,SACA,IAAA,KACA,KAAA,IAGU,mBACV,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,KACA,SAAA,SACA,IAAA,KACA,KAAA,IAGW,iBACX,SAAA,SAGU,oCACV,UAAA,MAGkC,uDAClC,QAAA,MAGF,mBACE,OAAA,KACA,WAAA,IACA,MAAA,KAlIA,iBAAsB,wqBAoItB,oBAAA,EAAA,KAGiB,uBACjB,OAAA,KAGF,uBACE,QAAA,KACA,OAAA,KACA,WAAA,IACA,MAAA,KAGqB,yBACrB,OAAA,QACA,MAAA,KACA,OAAA,KACA,MAAA,KAGuB,2BACvB,YAAA,IAI2B,+BADW,0CAEtC,QAAA,aACA,OAAA,QACA,OAAA,KACA,eAAA,SACA,MAAA,KAGU,gCACV,SAAA,SACA,QAAA,aACA,MAAA,KACA,QAAA,KAGU,oCACV,MAAA,MACA,UAAA,MACA,OAAA,KAGkC,4DAClC,cAAA,IAGkC,uDAClC,MAAA,MAIkC,uDADA,qDAElC,MAAA,MACA,OAAA,KACA,MAAA,KACA,OAAA,WACA,YAAA,EACA,cAAA,IAIqD,yDADF,uDAEnD,QAAA,MACA,OAAA,KACA,WAAA,KACA,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,IACA,OAAA,KACA,WAAA,EAGkC,qDAlNlC,iBAAsB,4pBAsNY,uDAtNlC,iBAAsB,owBA0NN,0BAChB,KAAA,KACA,MAAA,IAGgB,yBAChB,KAAA,KACA,MAAA,IAGmB,6BACnB,aAAA,EACA,YAAA,EAGmB,4BACnB,aAAA,EACA,YAAA,EAQC,uCAAA,qCAAA,4CAAA,2CAAA,iCACC,QAAA,MASD,sCAAA,oCAAA,2CAAA,0CAAA,gCACC,QAAA,KAIe,wCACjB,QAAA"}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha-horizontal.png b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha-horizontal.png
deleted file mode 100755
index f83188951..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha-horizontal.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha.png b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha.png
deleted file mode 100755
index 2e53a30e7..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/alpha.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue-horizontal.png b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue-horizontal.png
deleted file mode 100755
index 3dcd5946a..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue-horizontal.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue.png b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue.png
deleted file mode 100755
index 6f5ec2e50..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/hue.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/saturation.png b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/saturation.png
deleted file mode 100755
index 170841cba..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/img/bootstrap-colorpicker/saturation.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.js
deleted file mode 100755
index ac22ed526..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.js
+++ /dev/null
@@ -1,1327 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */
-
-(function(root, factory) {
- if (typeof define === 'function' && define.amd) {
- // AMD. Register as an anonymous module unless amdModuleId is set
- define(["jquery"], function(jq) {
- return (factory(jq));
- });
- } else if (typeof exports === 'object') {
- // Node. Does not work with strict CommonJS, but
- // only CommonJS-like environments that support module.exports,
- // like Node.
- module.exports = factory(require("jquery"));
- } else if (jQuery && !jQuery.fn.colorpicker) {
- factory(jQuery);
- }
-}(this, function($) {
- 'use strict';
- /**
- * Color manipulation helper class
- *
- * @param {Object|String} [val]
- * @param {Object} [predefinedColors]
- * @param {String|null} [fallbackColor]
- * @param {String|null} [fallbackFormat]
- * @param {Boolean} [hexNumberSignPrefix]
- * @constructor
- */
- var Color = function(
- val, predefinedColors, fallbackColor, fallbackFormat, hexNumberSignPrefix) {
- this.fallbackValue = fallbackColor ?
- (
- (typeof fallbackColor === 'string') ?
- this.parse(fallbackColor) :
- fallbackColor
- ) :
- null;
-
- this.fallbackFormat = fallbackFormat ? fallbackFormat : 'rgba';
-
- this.hexNumberSignPrefix = hexNumberSignPrefix === true;
-
- this.value = this.fallbackValue;
-
- this.origFormat = null; // original string format
-
- this.predefinedColors = predefinedColors ? predefinedColors : {};
-
- // We don't want to share aliases across instances so we extend new object
- this.colors = $.extend({}, Color.webColors, this.predefinedColors);
-
- if (val) {
- if (typeof val.h !== 'undefined') {
- this.value = val;
- } else {
- this.setColor(String(val));
- }
- }
-
- if (!this.value) {
- // Initial value is always black if no arguments are passed or val is empty
- this.value = {
- h: 0,
- s: 0,
- b: 0,
- a: 1
- };
- }
- };
-
- Color.webColors = { // 140 predefined colors from the HTML Colors spec
- "aliceblue": "f0f8ff",
- "antiquewhite": "faebd7",
- "aqua": "00ffff",
- "aquamarine": "7fffd4",
- "azure": "f0ffff",
- "beige": "f5f5dc",
- "bisque": "ffe4c4",
- "black": "000000",
- "blanchedalmond": "ffebcd",
- "blue": "0000ff",
- "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",
- "darkkhaki": "bdb76b",
- "darkmagenta": "8b008b",
- "darkolivegreen": "556b2f",
- "darkorange": "ff8c00",
- "darkorchid": "9932cc",
- "darkred": "8b0000",
- "darksalmon": "e9967a",
- "darkseagreen": "8fbc8f",
- "darkslateblue": "483d8b",
- "darkslategray": "2f4f4f",
- "darkturquoise": "00ced1",
- "darkviolet": "9400d3",
- "deeppink": "ff1493",
- "deepskyblue": "00bfff",
- "dimgray": "696969",
- "dodgerblue": "1e90ff",
- "firebrick": "b22222",
- "floralwhite": "fffaf0",
- "forestgreen": "228b22",
- "fuchsia": "ff00ff",
- "gainsboro": "dcdcdc",
- "ghostwhite": "f8f8ff",
- "gold": "ffd700",
- "goldenrod": "daa520",
- "gray": "808080",
- "green": "008000",
- "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",
- "lightgrey": "d3d3d3",
- "lightgreen": "90ee90",
- "lightpink": "ffb6c1",
- "lightsalmon": "ffa07a",
- "lightseagreen": "20b2aa",
- "lightskyblue": "87cefa",
- "lightslategray": "778899",
- "lightsteelblue": "b0c4de",
- "lightyellow": "ffffe0",
- "lime": "00ff00",
- "limegreen": "32cd32",
- "linen": "faf0e6",
- "magenta": "ff00ff",
- "maroon": "800000",
- "mediumaquamarine": "66cdaa",
- "mediumblue": "0000cd",
- "mediumorchid": "ba55d3",
- "mediumpurple": "9370d8",
- "mediumseagreen": "3cb371",
- "mediumslateblue": "7b68ee",
- "mediumspringgreen": "00fa9a",
- "mediumturquoise": "48d1cc",
- "mediumvioletred": "c71585",
- "midnightblue": "191970",
- "mintcream": "f5fffa",
- "mistyrose": "ffe4e1",
- "moccasin": "ffe4b5",
- "navajowhite": "ffdead",
- "navy": "000080",
- "oldlace": "fdf5e6",
- "olive": "808000",
- "olivedrab": "6b8e23",
- "orange": "ffa500",
- "orangered": "ff4500",
- "orchid": "da70d6",
- "palegoldenrod": "eee8aa",
- "palegreen": "98fb98",
- "paleturquoise": "afeeee",
- "palevioletred": "d87093",
- "papayawhip": "ffefd5",
- "peachpuff": "ffdab9",
- "peru": "cd853f",
- "pink": "ffc0cb",
- "plum": "dda0dd",
- "powderblue": "b0e0e6",
- "purple": "800080",
- "red": "ff0000",
- "rosybrown": "bc8f8f",
- "royalblue": "4169e1",
- "saddlebrown": "8b4513",
- "salmon": "fa8072",
- "sandybrown": "f4a460",
- "seagreen": "2e8b57",
- "seashell": "fff5ee",
- "sienna": "a0522d",
- "silver": "c0c0c0",
- "skyblue": "87ceeb",
- "slateblue": "6a5acd",
- "slategray": "708090",
- "snow": "fffafa",
- "springgreen": "00ff7f",
- "steelblue": "4682b4",
- "tan": "d2b48c",
- "teal": "008080",
- "thistle": "d8bfd8",
- "tomato": "ff6347",
- "turquoise": "40e0d0",
- "violet": "ee82ee",
- "wheat": "f5deb3",
- "white": "ffffff",
- "whitesmoke": "f5f5f5",
- "yellow": "ffff00",
- "yellowgreen": "9acd32",
- "transparent": "transparent"
- };
-
- Color.prototype = {
- constructor: Color,
- colors: {}, // merged web and predefined colors
- predefinedColors: {},
- /**
- * @return {Object}
- */
- getValue: function() {
- return this.value;
- },
- /**
- * @param {Object} val
- */
- setValue: function(val) {
- this.value = val;
- },
- _sanitizeNumber: function(val) {
- if (typeof val === 'number') {
- return val;
- }
- if (isNaN(val) || (val === null) || (val === '') || (val === undefined)) {
- return 1;
- }
- if (val === '') {
- return 0;
- }
- if (typeof val.toLowerCase !== 'undefined') {
- if (val.match(/^\./)) {
- val = "0" + val;
- }
- return Math.ceil(parseFloat(val) * 100) / 100;
- }
- return 1;
- },
- isTransparent: function(strVal) {
- if (!strVal || !(typeof strVal === 'string' || strVal instanceof String)) {
- return false;
- }
- strVal = strVal.toLowerCase().trim();
- return (strVal === 'transparent') || (strVal.match(/#?00000000/)) || (strVal.match(/(rgba|hsla)\(0,0,0,0?\.?0\)/));
- },
- rgbaIsTransparent: function(rgba) {
- return ((rgba.r === 0) && (rgba.g === 0) && (rgba.b === 0) && (rgba.a === 0));
- },
- // parse a string to HSB
- /**
- * @protected
- * @param {String} strVal
- * @returns {boolean} Returns true if it could be parsed, false otherwise
- */
- setColor: function(strVal) {
- strVal = strVal.toLowerCase().trim();
- if (strVal) {
- if (this.isTransparent(strVal)) {
- this.value = {
- h: 0,
- s: 0,
- b: 0,
- a: 0
- };
- return true;
- } else {
- var parsedColor = this.parse(strVal);
- if (parsedColor) {
- this.value = this.value = {
- h: parsedColor.h,
- s: parsedColor.s,
- b: parsedColor.b,
- a: parsedColor.a
- };
- if (!this.origFormat) {
- this.origFormat = parsedColor.format;
- }
- } else if (this.fallbackValue) {
- // if parser fails, defaults to fallbackValue if defined, otherwise the value won't be changed
- this.value = this.fallbackValue;
- }
- }
- }
- return false;
- },
- setHue: function(h) {
- this.value.h = 1 - h;
- },
- setSaturation: function(s) {
- this.value.s = s;
- },
- setBrightness: function(b) {
- this.value.b = 1 - b;
- },
- setAlpha: function(a) {
- this.value.a = Math.round((parseInt((1 - a) * 100, 10) / 100) * 100) / 100;
- },
- toRGB: function(h, s, b, a) {
- if (arguments.length === 0) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- h *= 360;
- var R, G, B, X, C;
- h = (h % 360) / 60;
- C = b * s;
- X = C * (1 - Math.abs(h % 2 - 1));
- R = G = B = b - C;
-
- h = ~~h;
- R += [C, X, 0, 0, X, C][h];
- G += [X, C, C, X, 0, 0][h];
- B += [0, 0, X, C, C, X][h];
-
- return {
- r: Math.round(R * 255),
- g: Math.round(G * 255),
- b: Math.round(B * 255),
- a: a
- };
- },
- toHex: function(ignoreFormat, h, s, b, a) {
- if (arguments.length <= 1) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- var prefix = '#';
- var rgb = this.toRGB(h, s, b, a);
-
- if (this.rgbaIsTransparent(rgb)) {
- return 'transparent';
- }
-
- if (!ignoreFormat) {
- prefix = (this.hexNumberSignPrefix ? '#' : '');
- }
-
- var hexStr = prefix + (
- (1 << 24) +
- (parseInt(rgb.r) << 16) +
- (parseInt(rgb.g) << 8) +
- parseInt(rgb.b))
- .toString(16)
- .slice(1);
-
- return hexStr;
- },
- toHSL: function(h, s, b, a) {
- if (arguments.length === 0) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- var H = h,
- L = (2 - s) * b,
- S = s * b;
- if (L > 0 && L <= 1) {
- S /= L;
- } else {
- S /= 2 - L;
- }
- L /= 2;
- if (S > 1) {
- S = 1;
- }
- return {
- h: isNaN(H) ? 0 : H,
- s: isNaN(S) ? 0 : S,
- l: isNaN(L) ? 0 : L,
- a: isNaN(a) ? 0 : a
- };
- },
- toAlias: function(r, g, b, a) {
- var c, rgb = (arguments.length === 0) ? this.toHex(true) : this.toHex(true, r, g, b, a);
-
- // support predef. colors in non-hex format too, as defined in the alias itself
- var original = this.origFormat === 'alias' ? rgb : this.toString(false, this.origFormat);
-
- for (var alias in this.colors) {
- c = this.colors[alias].toLowerCase().trim();
- if ((c === rgb) || (c === original)) {
- return alias;
- }
- }
- return false;
- },
- RGBtoHSB: function(r, g, b, a) {
- r /= 255;
- g /= 255;
- b /= 255;
-
- var H, S, V, C;
- V = Math.max(r, g, b);
- C = V - Math.min(r, g, b);
- H = (C === 0 ? null :
- V === r ? (g - b) / C :
- V === g ? (b - r) / C + 2 :
- (r - g) / C + 4
- );
- H = ((H + 360) % 6) * 60 / 360;
- S = C === 0 ? 0 : C / V;
- return {
- h: this._sanitizeNumber(H),
- s: S,
- b: V,
- a: this._sanitizeNumber(a)
- };
- },
- HueToRGB: function(p, q, h) {
- if (h < 0) {
- h += 1;
- } else if (h > 1) {
- h -= 1;
- }
- if ((h * 6) < 1) {
- return p + (q - p) * h * 6;
- } else if ((h * 2) < 1) {
- return q;
- } else if ((h * 3) < 2) {
- return p + (q - p) * ((2 / 3) - h) * 6;
- } else {
- return p;
- }
- },
- HSLtoRGB: function(h, s, l, a) {
- if (s < 0) {
- s = 0;
- }
- var q;
- if (l <= 0.5) {
- q = l * (1 + s);
- } else {
- q = l + s - (l * s);
- }
-
- var p = 2 * l - q;
-
- var tr = h + (1 / 3);
- var tg = h;
- var tb = h - (1 / 3);
-
- var r = Math.round(this.HueToRGB(p, q, tr) * 255);
- var g = Math.round(this.HueToRGB(p, q, tg) * 255);
- var b = Math.round(this.HueToRGB(p, q, tb) * 255);
- return [r, g, b, this._sanitizeNumber(a)];
- },
- /**
- * @param {String} strVal
- * @returns {Object} Object containing h,s,b,a,format properties or FALSE if failed to parse
- */
- parse: function(strVal) {
- if (typeof strVal !== 'string') {
- return this.fallbackValue;
- }
- if (arguments.length === 0) {
- return false;
- }
-
- var that = this,
- result = false,
- isAlias = (typeof this.colors[strVal] !== 'undefined'),
- values, format;
-
- if (isAlias) {
- strVal = this.colors[strVal].toLowerCase().trim();
- }
-
- $.each(this.stringParsers, function(i, parser) {
- var match = parser.re.exec(strVal);
- values = match && parser.parse.apply(that, [match]);
- if (values) {
- result = {};
- format = (isAlias ? 'alias' : (parser.format ? parser.format : that.getValidFallbackFormat()));
- if (format.match(/hsla?/)) {
- result = that.RGBtoHSB.apply(that, that.HSLtoRGB.apply(that, values));
- } else {
- result = that.RGBtoHSB.apply(that, values);
- }
- if (result instanceof Object) {
- result.format = format;
- }
- return false; // stop iterating
- }
- return true;
- });
- return result;
- },
- getValidFallbackFormat: function() {
- var formats = [
- 'rgba', 'rgb', 'hex', 'hsla', 'hsl'
- ];
- if (this.origFormat && (formats.indexOf(this.origFormat) !== -1)) {
- return this.origFormat;
- }
- if (this.fallbackFormat && (formats.indexOf(this.fallbackFormat) !== -1)) {
- return this.fallbackFormat;
- }
-
- return 'rgba'; // By default, return a format that will not lose the alpha info
- },
- /**
- *
- * @param {string} [format] (default: rgba)
- * @param {boolean} [translateAlias] Return real color for pre-defined (non-standard) aliases (default: false)
- * @param {boolean} [forceRawValue] Forces hashtag prefix when getting hex color (default: false)
- * @returns {String}
- */
- toString: function(forceRawValue, format, translateAlias) {
- format = format || this.origFormat || this.fallbackFormat;
- translateAlias = translateAlias || false;
-
- var c = false;
-
- switch (format) {
- case 'rgb':
- {
- c = this.toRGB();
- if (this.rgbaIsTransparent(c)) {
- return 'transparent';
- }
- return 'rgb(' + c.r + ',' + c.g + ',' + c.b + ')';
- }
- break;
- case 'rgba':
- {
- c = this.toRGB();
- return 'rgba(' + c.r + ',' + c.g + ',' + c.b + ',' + c.a + ')';
- }
- break;
- case 'hsl':
- {
- c = this.toHSL();
- return 'hsl(' + Math.round(c.h * 360) + ',' + Math.round(c.s * 100) + '%,' + Math.round(c.l * 100) + '%)';
- }
- break;
- case 'hsla':
- {
- c = this.toHSL();
- return 'hsla(' + Math.round(c.h * 360) + ',' + Math.round(c.s * 100) + '%,' + Math.round(c.l * 100) + '%,' + c.a + ')';
- }
- break;
- case 'hex':
- {
- return this.toHex(forceRawValue);
- }
- break;
- case 'alias':
- {
- c = this.toAlias();
-
- if (c === false) {
- return this.toString(forceRawValue, this.getValidFallbackFormat());
- }
-
- if (translateAlias && !(c in Color.webColors) && (c in this.predefinedColors)) {
- return this.predefinedColors[c];
- }
-
- return c;
- }
- default:
- {
- return c;
- }
- break;
- }
- },
- // a set of RE's that can match strings and generate color tuples.
- // from John Resig color plugin
- // https://github.com/jquery/jquery-color/
- stringParsers: [{
- re: /rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*?\)/,
- format: 'rgb',
- parse: function(execResult) {
- return [
- execResult[1],
- execResult[2],
- execResult[3],
- 1
- ];
- }
- }, {
- re: /rgb\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,
- format: 'rgb',
- parse: function(execResult) {
- return [
- 2.55 * execResult[1],
- 2.55 * execResult[2],
- 2.55 * execResult[3],
- 1
- ];
- }
- }, {
- re: /rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'rgba',
- parse: function(execResult) {
- return [
- execResult[1],
- execResult[2],
- execResult[3],
- execResult[4]
- ];
- }
- }, {
- re: /rgba\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'rgba',
- parse: function(execResult) {
- return [
- 2.55 * execResult[1],
- 2.55 * execResult[2],
- 2.55 * execResult[3],
- execResult[4]
- ];
- }
- }, {
- re: /hsl\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,
- format: 'hsl',
- parse: function(execResult) {
- return [
- execResult[1] / 360,
- execResult[2] / 100,
- execResult[3] / 100,
- execResult[4]
- ];
- }
- }, {
- re: /hsla\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'hsla',
- parse: function(execResult) {
- return [
- execResult[1] / 360,
- execResult[2] / 100,
- execResult[3] / 100,
- execResult[4]
- ];
- }
- }, {
- re: /#?([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,
- format: 'hex',
- parse: function(execResult) {
- return [
- parseInt(execResult[1], 16),
- parseInt(execResult[2], 16),
- parseInt(execResult[3], 16),
- 1
- ];
- }
- }, {
- re: /#?([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,
- format: 'hex',
- parse: function(execResult) {
- return [
- parseInt(execResult[1] + execResult[1], 16),
- parseInt(execResult[2] + execResult[2], 16),
- parseInt(execResult[3] + execResult[3], 16),
- 1
- ];
- }
- }],
- colorNameToHex: function(name) {
- if (typeof this.colors[name.toLowerCase()] !== 'undefined') {
- return this.colors[name.toLowerCase()];
- }
- return false;
- }
- };
-
- /*
- * Default plugin options
- */
- var defaults = {
- horizontal: false, // horizontal mode layout ?
- inline: false, //forces to show the colorpicker as an inline element
- color: false, //forces a color
- format: false, //forces a format
- input: 'input', // children input selector
- container: false, // container selector
- component: '.add-on, .input-group-addon', // children component selector
- fallbackColor: false, // fallback color value. null = keeps current color.
- fallbackFormat: 'hex', // fallback color format
- hexNumberSignPrefix: true, // put a '#' (number sign) before hex strings
- sliders: {
- saturation: {
- maxLeft: 100,
- maxTop: 100,
- callLeft: 'setSaturation',
- callTop: 'setBrightness'
- },
- hue: {
- maxLeft: 0,
- maxTop: 100,
- callLeft: false,
- callTop: 'setHue'
- },
- alpha: {
- maxLeft: 0,
- maxTop: 100,
- callLeft: false,
- callTop: 'setAlpha'
- }
- },
- slidersHorz: {
- saturation: {
- maxLeft: 100,
- maxTop: 100,
- callLeft: 'setSaturation',
- callTop: 'setBrightness'
- },
- hue: {
- maxLeft: 100,
- maxTop: 0,
- callLeft: 'setHue',
- callTop: false
- },
- alpha: {
- maxLeft: 100,
- maxTop: 0,
- callLeft: 'setAlpha',
- callTop: false
- }
- },
- template: '',
- align: 'right',
- customClass: null, // custom class added to the colorpicker element
- colorSelectors: null // custom color aliases
- };
-
- /**
- * Colorpicker component class
- *
- * @param {Object|String} element
- * @param {Object} options
- * @constructor
- */
- var Colorpicker = function(element, options) {
- this.element = $(element).addClass('colorpicker-element');
- this.options = $.extend(true, {}, defaults, this.element.data(), options);
- this.component = this.options.component;
- this.component = (this.component !== false) ? this.element.find(this.component) : false;
- if (this.component && (this.component.length === 0)) {
- this.component = false;
- }
- this.container = (this.options.container === true) ? this.element : this.options.container;
- this.container = (this.container !== false) ? $(this.container) : false;
-
- // Is the element an input? Should we search inside for any input?
- this.input = this.element.is('input') ? this.element : (this.options.input ?
- this.element.find(this.options.input) : false);
- if (this.input && (this.input.length === 0)) {
- this.input = false;
- }
- // Set HSB color
- this.color = this.createColor(this.options.color !== false ? this.options.color : this.getValue());
-
- this.format = this.options.format !== false ? this.options.format : this.color.origFormat;
-
- if (this.options.color !== false) {
- this.updateInput(this.color);
- this.updateData(this.color);
- }
-
- this.disabled = false;
-
- // Setup picker
- var $picker = this.picker = $(this.options.template);
- if (this.options.customClass) {
- $picker.addClass(this.options.customClass);
- }
- if (this.options.inline) {
- $picker.addClass('colorpicker-inline colorpicker-visible');
- } else {
- $picker.addClass('colorpicker-hidden');
- }
- if (this.options.horizontal) {
- $picker.addClass('colorpicker-horizontal');
- }
- if (
- (['rgba', 'hsla', 'alias'].indexOf(this.format) !== -1) ||
- this.options.format === false ||
- this.getValue() === 'transparent'
- ) {
- $picker.addClass('colorpicker-with-alpha');
- }
- if (this.options.align === 'right') {
- $picker.addClass('colorpicker-right');
- }
- if (this.options.inline === true) {
- $picker.addClass('colorpicker-no-arrow');
- }
- if (this.options.colorSelectors) {
- var colorpicker = this,
- selectorsContainer = colorpicker.picker.find('.colorpicker-selectors');
-
- if (selectorsContainer.length > 0) {
- $.each(this.options.colorSelectors, function(name, color) {
- var $btn = $(' ')
- .addClass('colorpicker-selectors-color')
- .css('background-color', color)
- .data('class', name).data('alias', name);
-
- $btn.on('mousedown.colorpicker touchstart.colorpicker', function(event) {
- event.preventDefault();
- colorpicker.setValue(
- colorpicker.format === 'alias' ? $(this).data('alias') : $(this).css('background-color')
- );
- });
- selectorsContainer.append($btn);
- });
- selectorsContainer.show().addClass('colorpicker-visible');
- }
- }
-
- // Prevent closing the colorpicker when clicking on itself
- $picker.on('mousedown.colorpicker touchstart.colorpicker', $.proxy(function(e) {
- if (e.target === e.currentTarget) {
- e.preventDefault();
- }
- }, this));
-
- // Bind click/tap events on the sliders
- $picker.find('.colorpicker-saturation, .colorpicker-hue, .colorpicker-alpha')
- .on('mousedown.colorpicker touchstart.colorpicker', $.proxy(this.mousedown, this));
-
- $picker.appendTo(this.container ? this.container : $('body'));
-
- // Bind other events
- if (this.input !== false) {
- this.input.on({
- 'keyup.colorpicker': $.proxy(this.keyup, this)
- });
- this.input.on({
- 'input.colorpicker': $.proxy(this.change, this)
- });
- if (this.component === false) {
- this.element.on({
- 'focus.colorpicker': $.proxy(this.show, this)
- });
- }
- if (this.options.inline === false) {
- this.element.on({
- 'focusout.colorpicker': $.proxy(this.hide, this)
- });
- }
- }
-
- if (this.component !== false) {
- this.component.on({
- 'click.colorpicker': $.proxy(this.show, this)
- });
- }
-
- if ((this.input === false) && (this.component === false)) {
- this.element.on({
- 'click.colorpicker': $.proxy(this.show, this)
- });
- }
-
- // for HTML5 input[type='color']
- if ((this.input !== false) && (this.component !== false) && (this.input.attr('type') === 'color')) {
-
- this.input.on({
- 'click.colorpicker': $.proxy(this.show, this),
- 'focus.colorpicker': $.proxy(this.show, this)
- });
- }
- this.update();
-
- $($.proxy(function() {
- this.element.trigger('create');
- }, this));
- };
-
- Colorpicker.Color = Color;
-
- Colorpicker.prototype = {
- constructor: Colorpicker,
- destroy: function() {
- this.picker.remove();
- this.element.removeData('colorpicker', 'color').off('.colorpicker');
- if (this.input !== false) {
- this.input.off('.colorpicker');
- }
- if (this.component !== false) {
- this.component.off('.colorpicker');
- }
- this.element.removeClass('colorpicker-element');
- this.element.trigger({
- type: 'destroy'
- });
- },
- reposition: function() {
- if (this.options.inline !== false || this.options.container) {
- return false;
- }
- var type = this.container && this.container[0] !== window.document.body ? 'position' : 'offset';
- var element = this.component || this.element;
- var offset = element[type]();
- if (this.options.align === 'right') {
- offset.left -= this.picker.outerWidth() - element.outerWidth();
- }
- this.picker.css({
- top: offset.top + element.outerHeight(),
- left: offset.left
- });
- },
- show: function(e) {
- if (this.isDisabled()) {
- // Don't show the widget if it's disabled (the input)
- return;
- }
- this.picker.addClass('colorpicker-visible').removeClass('colorpicker-hidden');
- this.reposition();
- $(window).on('resize.colorpicker', $.proxy(this.reposition, this));
- if (e && (!this.hasInput() || this.input.attr('type') === 'color')) {
- if (e.stopPropagation && e.preventDefault) {
- e.stopPropagation();
- e.preventDefault();
- }
- }
- if ((this.component || !this.input) && (this.options.inline === false)) {
- $(window.document).on({
- 'mousedown.colorpicker': $.proxy(this.hide, this)
- });
- }
- this.element.trigger({
- type: 'showPicker',
- color: this.color
- });
- },
- hide: function(e) {
- if ((typeof e !== 'undefined') && e.target) {
- // Prevent hide if triggered by an event and an element inside the colorpicker has been clicked/touched
- if (
- $(e.currentTarget).parents('.colorpicker').length > 0 ||
- $(e.target).parents('.colorpicker').length > 0
- ) {
- return false;
- }
- }
- this.picker.addClass('colorpicker-hidden').removeClass('colorpicker-visible');
- $(window).off('resize.colorpicker', this.reposition);
- $(window.document).off({
- 'mousedown.colorpicker': this.hide
- });
- this.update();
- this.element.trigger({
- type: 'hidePicker',
- color: this.color
- });
- },
- updateData: function(val) {
- val = val || this.color.toString(false, this.format);
- this.element.data('color', val);
- return val;
- },
- updateInput: function(val) {
- val = val || this.color.toString(false, this.format);
- if (this.input !== false) {
- this.input.prop('value', val);
- this.input.trigger('change');
- }
- return val;
- },
- updatePicker: function(val) {
- if (typeof val !== 'undefined') {
- this.color = this.createColor(val);
- }
- var sl = (this.options.horizontal === false) ? this.options.sliders : this.options.slidersHorz;
- var icns = this.picker.find('i');
- if (icns.length === 0) {
- return;
- }
- if (this.options.horizontal === false) {
- sl = this.options.sliders;
- icns.eq(1).css('top', sl.hue.maxTop * (1 - this.color.value.h)).end()
- .eq(2).css('top', sl.alpha.maxTop * (1 - this.color.value.a));
- } else {
- sl = this.options.slidersHorz;
- icns.eq(1).css('left', sl.hue.maxLeft * (1 - this.color.value.h)).end()
- .eq(2).css('left', sl.alpha.maxLeft * (1 - this.color.value.a));
- }
- icns.eq(0).css({
- 'top': sl.saturation.maxTop - this.color.value.b * sl.saturation.maxTop,
- 'left': this.color.value.s * sl.saturation.maxLeft
- });
-
- this.picker.find('.colorpicker-saturation')
- .css('backgroundColor', this.color.toHex(true, this.color.value.h, 1, 1, 1));
-
- this.picker.find('.colorpicker-alpha')
- .css('backgroundColor', this.color.toHex(true));
-
- this.picker.find('.colorpicker-color, .colorpicker-color div')
- .css('backgroundColor', this.color.toString(true, this.format));
-
- return val;
- },
- updateComponent: function(val) {
- var color;
-
- if (typeof val !== 'undefined') {
- color = this.createColor(val);
- } else {
- color = this.color;
- }
-
- if (this.component !== false) {
- var icn = this.component.find('i').eq(0);
- if (icn.length > 0) {
- icn.css({
- 'backgroundColor': color.toString(true, this.format)
- });
- } else {
- this.component.css({
- 'backgroundColor': color.toString(true, this.format)
- });
- }
- }
-
- return color.toString(false, this.format);
- },
- update: function(force) {
- var val;
- if ((this.getValue(false) !== false) || (force === true)) {
- // Update input/data only if the current value is not empty
- val = this.updateComponent();
- this.updateInput(val);
- this.updateData(val);
- this.updatePicker(); // only update picker if value is not empty
- }
- return val;
-
- },
- setValue: function(val) { // set color manually
- this.color = this.createColor(val);
- this.update(true);
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: val
- });
- },
- /**
- * Creates a new color using the instance options
- * @protected
- * @param {String} val
- * @returns {Color}
- */
- createColor: function(val) {
- return new Color(
- val ? val : null,
- this.options.colorSelectors,
- this.options.fallbackColor ? this.options.fallbackColor : this.color,
- this.options.fallbackFormat,
- this.options.hexNumberSignPrefix
- );
- },
- getValue: function(defaultValue) {
- defaultValue = (typeof defaultValue === 'undefined') ? this.options.fallbackColor : defaultValue;
- var val;
- if (this.hasInput()) {
- val = this.input.val();
- } else {
- val = this.element.data('color');
- }
- if ((val === undefined) || (val === '') || (val === null)) {
- // if not defined or empty, return default
- val = defaultValue;
- }
- return val;
- },
- hasInput: function() {
- return (this.input !== false);
- },
- isDisabled: function() {
- return this.disabled;
- },
- disable: function() {
- if (this.hasInput()) {
- this.input.prop('disabled', true);
- }
- this.disabled = true;
- this.element.trigger({
- type: 'disable',
- color: this.color,
- value: this.getValue()
- });
- return true;
- },
- enable: function() {
- if (this.hasInput()) {
- this.input.prop('disabled', false);
- }
- this.disabled = false;
- this.element.trigger({
- type: 'enable',
- color: this.color,
- value: this.getValue()
- });
- return true;
- },
- currentSlider: null,
- mousePointer: {
- left: 0,
- top: 0
- },
- mousedown: function(e) {
- if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {
- e.pageX = e.originalEvent.touches[0].pageX;
- e.pageY = e.originalEvent.touches[0].pageY;
- }
- e.stopPropagation();
- e.preventDefault();
-
- var target = $(e.target);
-
- //detect the slider and set the limits and callbacks
- var zone = target.closest('div');
- var sl = this.options.horizontal ? this.options.slidersHorz : this.options.sliders;
- if (!zone.is('.colorpicker')) {
- if (zone.is('.colorpicker-saturation')) {
- this.currentSlider = $.extend({}, sl.saturation);
- } else if (zone.is('.colorpicker-hue')) {
- this.currentSlider = $.extend({}, sl.hue);
- } else if (zone.is('.colorpicker-alpha')) {
- this.currentSlider = $.extend({}, sl.alpha);
- } else {
- return false;
- }
- var offset = zone.offset();
- //reference to guide's style
- this.currentSlider.guide = zone.find('i')[0].style;
- this.currentSlider.left = e.pageX - offset.left;
- this.currentSlider.top = e.pageY - offset.top;
- this.mousePointer = {
- left: e.pageX,
- top: e.pageY
- };
- //trigger mousemove to move the guide to the current position
- $(window.document).on({
- 'mousemove.colorpicker': $.proxy(this.mousemove, this),
- 'touchmove.colorpicker': $.proxy(this.mousemove, this),
- 'mouseup.colorpicker': $.proxy(this.mouseup, this),
- 'touchend.colorpicker': $.proxy(this.mouseup, this)
- }).trigger('mousemove');
- }
- return false;
- },
- mousemove: function(e) {
- if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {
- e.pageX = e.originalEvent.touches[0].pageX;
- e.pageY = e.originalEvent.touches[0].pageY;
- }
- e.stopPropagation();
- e.preventDefault();
- var left = Math.max(
- 0,
- Math.min(
- this.currentSlider.maxLeft,
- this.currentSlider.left + ((e.pageX || this.mousePointer.left) - this.mousePointer.left)
- )
- );
- var top = Math.max(
- 0,
- Math.min(
- this.currentSlider.maxTop,
- this.currentSlider.top + ((e.pageY || this.mousePointer.top) - this.mousePointer.top)
- )
- );
- this.currentSlider.guide.left = left + 'px';
- this.currentSlider.guide.top = top + 'px';
- if (this.currentSlider.callLeft) {
- this.color[this.currentSlider.callLeft].call(this.color, left / this.currentSlider.maxLeft);
- }
- if (this.currentSlider.callTop) {
- this.color[this.currentSlider.callTop].call(this.color, top / this.currentSlider.maxTop);
- }
- // Change format dynamically
- // Only occurs if user choose the dynamic format by
- // setting option format to false
- if (
- this.options.format === false &&
- (this.currentSlider.callTop === 'setAlpha' ||
- this.currentSlider.callLeft === 'setAlpha')
- ) {
-
- // Converting from hex / rgb to rgba
- if (this.color.value.a !== 1) {
- this.format = 'rgba';
- this.color.origFormat = 'rgba';
- }
-
- // Converting from rgba to hex
- else {
- this.format = 'hex';
- this.color.origFormat = 'hex';
- }
- }
- this.update(true);
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color
- });
- return false;
- },
- mouseup: function(e) {
- e.stopPropagation();
- e.preventDefault();
- $(window.document).off({
- 'mousemove.colorpicker': this.mousemove,
- 'touchmove.colorpicker': this.mousemove,
- 'mouseup.colorpicker': this.mouseup,
- 'touchend.colorpicker': this.mouseup
- });
- return false;
- },
- change: function(e) {
- this.color = this.createColor(this.input.val());
- // Change format dynamically
- // Only occurs if user choose the dynamic format by
- // setting option format to false
- if (this.color.origFormat && this.options.format === false) {
- this.format = this.color.origFormat;
- }
- if (this.getValue(false) !== false) {
- this.updateData();
- this.updateComponent();
- this.updatePicker();
- }
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: this.input.val()
- });
- },
- keyup: function(e) {
- if ((e.keyCode === 38)) {
- if (this.color.value.a < 1) {
- this.color.value.a = Math.round((this.color.value.a + 0.01) * 100) / 100;
- }
- this.update(true);
- } else if ((e.keyCode === 40)) {
- if (this.color.value.a > 0) {
- this.color.value.a = Math.round((this.color.value.a - 0.01) * 100) / 100;
- }
- this.update(true);
- }
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: this.input.val()
- });
- }
- };
-
- $.colorpicker = Colorpicker;
-
- $.fn.colorpicker = function(option) {
- var apiArgs = Array.prototype.slice.call(arguments, 1),
- isSingleElement = (this.length === 1),
- returnValue = null;
-
- var $jq = this.each(function() {
- var $this = $(this),
- inst = $this.data('colorpicker'),
- options = ((typeof option === 'object') ? option : {});
-
- if (!inst) {
- inst = new Colorpicker(this, options);
- $this.data('colorpicker', inst);
- }
-
- if (typeof option === 'string') {
- if ($.isFunction(inst[option])) {
- returnValue = inst[option].apply(inst, apiArgs);
- } else { // its a property ?
- if (apiArgs.length) {
- // set property
- inst[option] = apiArgs[0];
- }
- returnValue = inst[option];
- }
- } else {
- returnValue = $this;
- }
- });
- return isSingleElement ? returnValue : $jq;
- };
-
- $.fn.colorpicker.constructor = Colorpicker;
-
-}));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.min.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.min.js
deleted file mode 100755
index 2d6217cf2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.min.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- */
-!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):jQuery&&!jQuery.fn.colorpicker&&b(jQuery)}(this,function(a){"use strict";var b=function(c,d,e,f,g){this.fallbackValue=e?"string"==typeof e?this.parse(e):e:null,this.fallbackFormat=f?f:"rgba",this.hexNumberSignPrefix=g===!0,this.value=this.fallbackValue,this.origFormat=null,this.predefinedColors=d?d:{},this.colors=a.extend({},b.webColors,this.predefinedColors),c&&("undefined"!=typeof c.h?this.value=c:this.setColor(String(c))),this.value||(this.value={h:0,s:0,b:0,a:1})};b.webColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",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",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",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",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32",transparent:"transparent"},b.prototype={constructor:b,colors:{},predefinedColors:{},getValue:function(){return this.value},setValue:function(a){this.value=a},_sanitizeNumber:function(a){return"number"==typeof a?a:isNaN(a)||null===a||""===a||void 0===a?1:""===a?0:"undefined"!=typeof a.toLowerCase?(a.match(/^\./)&&(a="0"+a),Math.ceil(100*parseFloat(a))/100):1},isTransparent:function(a){return!(!a||!("string"==typeof a||a instanceof String))&&(a=a.toLowerCase().trim(),"transparent"===a||a.match(/#?00000000/)||a.match(/(rgba|hsla)\(0,0,0,0?\.?0\)/))},rgbaIsTransparent:function(a){return 0===a.r&&0===a.g&&0===a.b&&0===a.a},setColor:function(a){if(a=a.toLowerCase().trim()){if(this.isTransparent(a))return this.value={h:0,s:0,b:0,a:0},!0;var b=this.parse(a);b?(this.value=this.value={h:b.h,s:b.s,b:b.b,a:b.a},this.origFormat||(this.origFormat=b.format)):this.fallbackValue&&(this.value=this.fallbackValue)}return!1},setHue:function(a){this.value.h=1-a},setSaturation:function(a){this.value.s=a},setBrightness:function(a){this.value.b=1-a},setAlpha:function(a){this.value.a=Math.round(parseInt(100*(1-a),10)/100*100)/100},toRGB:function(a,b,c,d){0===arguments.length&&(a=this.value.h,b=this.value.s,c=this.value.b,d=this.value.a),a*=360;var e,f,g,h,i;return a=a%360/60,i=c*b,h=i*(1-Math.abs(a%2-1)),e=f=g=c-i,a=~~a,e+=[i,h,0,0,h,i][a],f+=[h,i,i,h,0,0][a],g+=[0,0,h,i,i,h][a],{r:Math.round(255*e),g:Math.round(255*f),b:Math.round(255*g),a:d}},toHex:function(a,b,c,d,e){arguments.length<=1&&(b=this.value.h,c=this.value.s,d=this.value.b,e=this.value.a);var f="#",g=this.toRGB(b,c,d,e);if(this.rgbaIsTransparent(g))return"transparent";a||(f=this.hexNumberSignPrefix?"#":"");var h=f+((1<<24)+(parseInt(g.r)<<16)+(parseInt(g.g)<<8)+parseInt(g.b)).toString(16).slice(1);return h},toHSL:function(a,b,c,d){0===arguments.length&&(a=this.value.h,b=this.value.s,c=this.value.b,d=this.value.a);var e=a,f=(2-b)*c,g=b*c;return g/=f>0&&f<=1?f:2-f,f/=2,g>1&&(g=1),{h:isNaN(e)?0:e,s:isNaN(g)?0:g,l:isNaN(f)?0:f,a:isNaN(d)?0:d}},toAlias:function(a,b,c,d){var e,f=0===arguments.length?this.toHex(!0):this.toHex(!0,a,b,c,d),g="alias"===this.origFormat?f:this.toString(!1,this.origFormat);for(var h in this.colors)if(e=this.colors[h].toLowerCase().trim(),e===f||e===g)return h;return!1},RGBtoHSB:function(a,b,c,d){a/=255,b/=255,c/=255;var e,f,g,h;return g=Math.max(a,b,c),h=g-Math.min(a,b,c),e=0===h?null:g===a?(b-c)/h:g===b?(c-a)/h+2:(a-b)/h+4,e=(e+360)%6*60/360,f=0===h?0:h/g,{h:this._sanitizeNumber(e),s:f,b:g,a:this._sanitizeNumber(d)}},HueToRGB:function(a,b,c){return c<0?c+=1:c>1&&(c-=1),6*c<1?a+(b-a)*c*6:2*c<1?b:3*c<2?a+(b-a)*(2/3-c)*6:a},HSLtoRGB:function(a,b,c,d){b<0&&(b=0);var e;e=c<=.5?c*(1+b):c+b-c*b;var f=2*c-e,g=a+1/3,h=a,i=a-1/3,j=Math.round(255*this.HueToRGB(f,e,g)),k=Math.round(255*this.HueToRGB(f,e,h)),l=Math.round(255*this.HueToRGB(f,e,i));return[j,k,l,this._sanitizeNumber(d)]},parse:function(b){if("string"!=typeof b)return this.fallbackValue;if(0===arguments.length)return!1;var c,d,e=this,f=!1,g="undefined"!=typeof this.colors[b];return g&&(b=this.colors[b].toLowerCase().trim()),a.each(this.stringParsers,function(a,h){var i=h.re.exec(b);return c=i&&h.parse.apply(e,[i]),!c||(f={},d=g?"alias":h.format?h.format:e.getValidFallbackFormat(),f=d.match(/hsla?/)?e.RGBtoHSB.apply(e,e.HSLtoRGB.apply(e,c)):e.RGBtoHSB.apply(e,c),f instanceof Object&&(f.format=d),!1)}),f},getValidFallbackFormat:function(){var a=["rgba","rgb","hex","hsla","hsl"];return this.origFormat&&a.indexOf(this.origFormat)!==-1?this.origFormat:this.fallbackFormat&&a.indexOf(this.fallbackFormat)!==-1?this.fallbackFormat:"rgba"},toString:function(a,c,d){c=c||this.origFormat||this.fallbackFormat,d=d||!1;var e=!1;switch(c){case"rgb":return e=this.toRGB(),this.rgbaIsTransparent(e)?"transparent":"rgb("+e.r+","+e.g+","+e.b+")";case"rgba":return e=this.toRGB(),"rgba("+e.r+","+e.g+","+e.b+","+e.a+")";case"hsl":return e=this.toHSL(),"hsl("+Math.round(360*e.h)+","+Math.round(100*e.s)+"%,"+Math.round(100*e.l)+"%)";case"hsla":return e=this.toHSL(),"hsla("+Math.round(360*e.h)+","+Math.round(100*e.s)+"%,"+Math.round(100*e.l)+"%,"+e.a+")";case"hex":return this.toHex(a);case"alias":return e=this.toAlias(),e===!1?this.toString(a,this.getValidFallbackFormat()):d&&!(e in b.webColors)&&e in this.predefinedColors?this.predefinedColors[e]:e;default:return e}},stringParsers:[{re:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*?\)/,format:"rgb",parse:function(a){return[a[1],a[2],a[3],1]}},{re:/rgb\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,format:"rgb",parse:function(a){return[2.55*a[1],2.55*a[2],2.55*a[3],1]}},{re:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,format:"rgba",parse:function(a){return[a[1],a[2],a[3],a[4]]}},{re:/rgba\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,format:"rgba",parse:function(a){return[2.55*a[1],2.55*a[2],2.55*a[3],a[4]]}},{re:/hsl\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,format:"hsl",parse:function(a){return[a[1]/360,a[2]/100,a[3]/100,a[4]]}},{re:/hsla\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,format:"hsla",parse:function(a){return[a[1]/360,a[2]/100,a[3]/100,a[4]]}},{re:/#?([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,format:"hex",parse:function(a){return[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16),1]}},{re:/#?([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,format:"hex",parse:function(a){return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16),1]}}],colorNameToHex:function(a){return"undefined"!=typeof this.colors[a.toLowerCase()]&&this.colors[a.toLowerCase()]}};var c={horizontal:!1,inline:!1,color:!1,format:!1,input:"input",container:!1,component:".add-on, .input-group-addon",fallbackColor:!1,fallbackFormat:"hex",hexNumberSignPrefix:!0,sliders:{saturation:{maxLeft:100,maxTop:100,callLeft:"setSaturation",callTop:"setBrightness"},hue:{maxLeft:0,maxTop:100,callLeft:!1,callTop:"setHue"},alpha:{maxLeft:0,maxTop:100,callLeft:!1,callTop:"setAlpha"}},slidersHorz:{saturation:{maxLeft:100,maxTop:100,callLeft:"setSaturation",callTop:"setBrightness"},hue:{maxLeft:100,maxTop:0,callLeft:"setHue",callTop:!1},alpha:{maxLeft:100,maxTop:0,callLeft:"setAlpha",callTop:!1}},template:'',align:"right",customClass:null,colorSelectors:null},d=function(b,d){this.element=a(b).addClass("colorpicker-element"),this.options=a.extend(!0,{},c,this.element.data(),d),this.component=this.options.component,this.component=this.component!==!1&&this.element.find(this.component),this.component&&0===this.component.length&&(this.component=!1),this.container=this.options.container===!0?this.element:this.options.container,this.container=this.container!==!1&&a(this.container),this.input=this.element.is("input")?this.element:!!this.options.input&&this.element.find(this.options.input),this.input&&0===this.input.length&&(this.input=!1),this.color=this.createColor(this.options.color!==!1?this.options.color:this.getValue()),this.format=this.options.format!==!1?this.options.format:this.color.origFormat,this.options.color!==!1&&(this.updateInput(this.color),this.updateData(this.color)),this.disabled=!1;var e=this.picker=a(this.options.template);if(this.options.customClass&&e.addClass(this.options.customClass),this.options.inline?e.addClass("colorpicker-inline colorpicker-visible"):e.addClass("colorpicker-hidden"),this.options.horizontal&&e.addClass("colorpicker-horizontal"),["rgba","hsla","alias"].indexOf(this.format)===-1&&this.options.format!==!1&&"transparent"!==this.getValue()||e.addClass("colorpicker-with-alpha"),"right"===this.options.align&&e.addClass("colorpicker-right"),this.options.inline===!0&&e.addClass("colorpicker-no-arrow"),this.options.colorSelectors){var f=this,g=f.picker.find(".colorpicker-selectors");g.length>0&&(a.each(this.options.colorSelectors,function(b,c){var d=a(" ").addClass("colorpicker-selectors-color").css("background-color",c).data("class",b).data("alias",b);d.on("mousedown.colorpicker touchstart.colorpicker",function(b){b.preventDefault(),f.setValue("alias"===f.format?a(this).data("alias"):a(this).css("background-color"))}),g.append(d)}),g.show().addClass("colorpicker-visible"))}e.on("mousedown.colorpicker touchstart.colorpicker",a.proxy(function(a){a.target===a.currentTarget&&a.preventDefault()},this)),e.find(".colorpicker-saturation, .colorpicker-hue, .colorpicker-alpha").on("mousedown.colorpicker touchstart.colorpicker",a.proxy(this.mousedown,this)),e.appendTo(this.container?this.container:a("body")),this.input!==!1&&(this.input.on({"keyup.colorpicker":a.proxy(this.keyup,this)}),this.input.on({"input.colorpicker":a.proxy(this.change,this)}),this.component===!1&&this.element.on({"focus.colorpicker":a.proxy(this.show,this)}),this.options.inline===!1&&this.element.on({"focusout.colorpicker":a.proxy(this.hide,this)})),this.component!==!1&&this.component.on({"click.colorpicker":a.proxy(this.show,this)}),this.input===!1&&this.component===!1&&this.element.on({"click.colorpicker":a.proxy(this.show,this)}),this.input!==!1&&this.component!==!1&&"color"===this.input.attr("type")&&this.input.on({"click.colorpicker":a.proxy(this.show,this),"focus.colorpicker":a.proxy(this.show,this)}),this.update(),a(a.proxy(function(){this.element.trigger("create")},this))};d.Color=b,d.prototype={constructor:d,destroy:function(){this.picker.remove(),this.element.removeData("colorpicker","color").off(".colorpicker"),this.input!==!1&&this.input.off(".colorpicker"),this.component!==!1&&this.component.off(".colorpicker"),this.element.removeClass("colorpicker-element"),this.element.trigger({type:"destroy"})},reposition:function(){if(this.options.inline!==!1||this.options.container)return!1;var a=this.container&&this.container[0]!==window.document.body?"position":"offset",b=this.component||this.element,c=b[a]();"right"===this.options.align&&(c.left-=this.picker.outerWidth()-b.outerWidth()),this.picker.css({top:c.top+b.outerHeight(),left:c.left})},show:function(b){this.isDisabled()||(this.picker.addClass("colorpicker-visible").removeClass("colorpicker-hidden"),this.reposition(),a(window).on("resize.colorpicker",a.proxy(this.reposition,this)),!b||this.hasInput()&&"color"!==this.input.attr("type")||b.stopPropagation&&b.preventDefault&&(b.stopPropagation(),b.preventDefault()),!this.component&&this.input||this.options.inline!==!1||a(window.document).on({"mousedown.colorpicker":a.proxy(this.hide,this)}),this.element.trigger({type:"showPicker",color:this.color}))},hide:function(b){return("undefined"==typeof b||!b.target||!(a(b.currentTarget).parents(".colorpicker").length>0||a(b.target).parents(".colorpicker").length>0))&&(this.picker.addClass("colorpicker-hidden").removeClass("colorpicker-visible"),a(window).off("resize.colorpicker",this.reposition),a(window.document).off({"mousedown.colorpicker":this.hide}),this.update(),void this.element.trigger({type:"hidePicker",color:this.color}))},updateData:function(a){return a=a||this.color.toString(!1,this.format),this.element.data("color",a),a},updateInput:function(a){return a=a||this.color.toString(!1,this.format),this.input!==!1&&(this.input.prop("value",a),this.input.trigger("change")),a},updatePicker:function(a){"undefined"!=typeof a&&(this.color=this.createColor(a));var b=this.options.horizontal===!1?this.options.sliders:this.options.slidersHorz,c=this.picker.find("i");if(0!==c.length)return this.options.horizontal===!1?(b=this.options.sliders,c.eq(1).css("top",b.hue.maxTop*(1-this.color.value.h)).end().eq(2).css("top",b.alpha.maxTop*(1-this.color.value.a))):(b=this.options.slidersHorz,c.eq(1).css("left",b.hue.maxLeft*(1-this.color.value.h)).end().eq(2).css("left",b.alpha.maxLeft*(1-this.color.value.a))),c.eq(0).css({top:b.saturation.maxTop-this.color.value.b*b.saturation.maxTop,left:this.color.value.s*b.saturation.maxLeft}),this.picker.find(".colorpicker-saturation").css("backgroundColor",this.color.toHex(!0,this.color.value.h,1,1,1)),this.picker.find(".colorpicker-alpha").css("backgroundColor",this.color.toHex(!0)),this.picker.find(".colorpicker-color, .colorpicker-color div").css("backgroundColor",this.color.toString(!0,this.format)),a},updateComponent:function(a){var b;if(b="undefined"!=typeof a?this.createColor(a):this.color,this.component!==!1){var c=this.component.find("i").eq(0);c.length>0?c.css({backgroundColor:b.toString(!0,this.format)}):this.component.css({backgroundColor:b.toString(!0,this.format)})}return b.toString(!1,this.format)},update:function(a){var b;return this.getValue(!1)===!1&&a!==!0||(b=this.updateComponent(),this.updateInput(b),this.updateData(b),this.updatePicker()),b},setValue:function(a){this.color=this.createColor(a),this.update(!0),this.element.trigger({type:"changeColor",color:this.color,value:a})},createColor:function(a){return new b(a?a:null,this.options.colorSelectors,this.options.fallbackColor?this.options.fallbackColor:this.color,this.options.fallbackFormat,this.options.hexNumberSignPrefix)},getValue:function(a){a="undefined"==typeof a?this.options.fallbackColor:a;var b;return b=this.hasInput()?this.input.val():this.element.data("color"),void 0!==b&&""!==b&&null!==b||(b=a),b},hasInput:function(){return this.input!==!1},isDisabled:function(){return this.disabled},disable:function(){return this.hasInput()&&this.input.prop("disabled",!0),this.disabled=!0,this.element.trigger({type:"disable",color:this.color,value:this.getValue()}),!0},enable:function(){return this.hasInput()&&this.input.prop("disabled",!1),this.disabled=!1,this.element.trigger({type:"enable",color:this.color,value:this.getValue()}),!0},currentSlider:null,mousePointer:{left:0,top:0},mousedown:function(b){!b.pageX&&!b.pageY&&b.originalEvent&&b.originalEvent.touches&&(b.pageX=b.originalEvent.touches[0].pageX,b.pageY=b.originalEvent.touches[0].pageY),b.stopPropagation(),b.preventDefault();var c=a(b.target),d=c.closest("div"),e=this.options.horizontal?this.options.slidersHorz:this.options.sliders;if(!d.is(".colorpicker")){if(d.is(".colorpicker-saturation"))this.currentSlider=a.extend({},e.saturation);else if(d.is(".colorpicker-hue"))this.currentSlider=a.extend({},e.hue);else{if(!d.is(".colorpicker-alpha"))return!1;this.currentSlider=a.extend({},e.alpha)}var f=d.offset();this.currentSlider.guide=d.find("i")[0].style,this.currentSlider.left=b.pageX-f.left,this.currentSlider.top=b.pageY-f.top,this.mousePointer={left:b.pageX,top:b.pageY},a(window.document).on({"mousemove.colorpicker":a.proxy(this.mousemove,this),"touchmove.colorpicker":a.proxy(this.mousemove,this),"mouseup.colorpicker":a.proxy(this.mouseup,this),"touchend.colorpicker":a.proxy(this.mouseup,this)}).trigger("mousemove")}return!1},mousemove:function(a){!a.pageX&&!a.pageY&&a.originalEvent&&a.originalEvent.touches&&(a.pageX=a.originalEvent.touches[0].pageX,a.pageY=a.originalEvent.touches[0].pageY),a.stopPropagation(),a.preventDefault();var b=Math.max(0,Math.min(this.currentSlider.maxLeft,this.currentSlider.left+((a.pageX||this.mousePointer.left)-this.mousePointer.left))),c=Math.max(0,Math.min(this.currentSlider.maxTop,this.currentSlider.top+((a.pageY||this.mousePointer.top)-this.mousePointer.top)));return this.currentSlider.guide.left=b+"px",this.currentSlider.guide.top=c+"px",this.currentSlider.callLeft&&this.color[this.currentSlider.callLeft].call(this.color,b/this.currentSlider.maxLeft),this.currentSlider.callTop&&this.color[this.currentSlider.callTop].call(this.color,c/this.currentSlider.maxTop),this.options.format!==!1||"setAlpha"!==this.currentSlider.callTop&&"setAlpha"!==this.currentSlider.callLeft||(1!==this.color.value.a?(this.format="rgba",this.color.origFormat="rgba"):(this.format="hex",this.color.origFormat="hex")),this.update(!0),this.element.trigger({type:"changeColor",color:this.color}),!1},mouseup:function(b){return b.stopPropagation(),b.preventDefault(),a(window.document).off({"mousemove.colorpicker":this.mousemove,"touchmove.colorpicker":this.mousemove,"mouseup.colorpicker":this.mouseup,"touchend.colorpicker":this.mouseup}),!1},change:function(a){this.color=this.createColor(this.input.val()),this.color.origFormat&&this.options.format===!1&&(this.format=this.color.origFormat),this.getValue(!1)!==!1&&(this.updateData(),this.updateComponent(),this.updatePicker()),this.element.trigger({type:"changeColor",color:this.color,value:this.input.val()})},keyup:function(a){38===a.keyCode?(this.color.value.a<1&&(this.color.value.a=Math.round(100*(this.color.value.a+.01))/100),this.update(!0)):40===a.keyCode&&(this.color.value.a>0&&(this.color.value.a=Math.round(100*(this.color.value.a-.01))/100),this.update(!0)),this.element.trigger({type:"changeColor",color:this.color,value:this.input.val()})}},a.colorpicker=d,a.fn.colorpicker=function(b){var c=Array.prototype.slice.call(arguments,1),e=1===this.length,f=null,g=this.each(function(){var e=a(this),g=e.data("colorpicker"),h="object"==typeof b?b:{};g||(g=new d(this,h),e.data("colorpicker",g)),"string"==typeof b?a.isFunction(g[b])?f=g[b].apply(g,c):(c.length&&(g[b]=c[0]),f=g[b]):f=e});return e?f:g},a.fn.colorpicker.constructor=d});
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/assets/main.css b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/assets/main.css
deleted file mode 100755
index b325da963..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/assets/main.css
+++ /dev/null
@@ -1,61 +0,0 @@
-.container {
- background: #fff;
-}
-
-h4 ~ p {
- padding-left: 20px;
-}
-
-.well .markup,
-.example-content .example-code {
- background: #2B2B2B;
- color: #BABABA;
- position: relative;
- padding: 15px 15px 15px;
- margin: 15px 0 0 0;
- border-radius: 0 0 4px 4px;
- box-shadow: none;
- font-size: 12px;
- line-height: 1.42857143;
- word-break: break-all;
- word-wrap: break-word;
- border: 1px solid #000;
- font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
- white-space: pre;
- overflow: auto;
-}
-
-.well .markup::after {
- content: "Source code";
- position: absolute;
- top: 15px;
- left: 15px;
- font-size: 12px;
- font-weight: bold;
- color: #eee;
- text-transform: uppercase;
- letter-spacing: 1px;
-}
-
-.share-btn {
- vertical-align: middle;
- display: inline-block;
- font-size: 12px;
- line-height: 1.5;
-}
-
-
-.example-title{
- font-size: 14px;
- margin: 10px 0 10px 2px;
- font-weight: bold;
-}
-.example-description{
- margin: 10px 0 10px 2px;
-}
-.example-code{
- display:none;
-}
-.example-content-widget{
- margin-bottom: 2px;
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/helpers/code/index.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/helpers/code/index.js
deleted file mode 100755
index 85cf59b25..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/helpers/code/index.js
+++ /dev/null
@@ -1,23 +0,0 @@
-var beautify = require('js-beautify').html;
-
-var entityMap = {
- "&": "&",
- "<": "<",
- ">": ">",
- '"': '"',
- "'": ''',
- "/": '/'
-};
-module.exports.register = function (Handlebars, options) {
- Handlebars.registerHelper('code', function (hboptions) {
- var codeStr = beautify(String(hboptions.fn(this)).trim(), {
- "wrap_line_length": 80,
- "wrap_attributes": "auto",
- "indent_scripts": "normal"
- }).replace(/[&<>"'\/]/g, function (s) {
- return entityMap[s];
- });
-
- return '' + codeStr + '
';
- });
-};
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/api.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/api.hbs
deleted file mode 100755
index 93edaf28b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/api.hbs
+++ /dev/null
@@ -1,278 +0,0 @@
-Documentation
-
-
-
-Call the colopicker via javascript:
-$('.sample-selector').colorpicker({ /*options...*/ });
-Options
-
-
- You can set colorpicker options either as a plugin parameter or data-* attributes
-
-
-
-
- Name
- Type
- Default
- Description
-
-
-
-
- format
- string
- false
- If not false, forces the color format to be hex, rgb or rgba, otherwise the format is
- automatically detected.
-
-
-
- color
- string
- false
- If not false, sets the color to this value.
-
-
- container
- string or jQuery Element
- false
- If not false, the picker will be contained inside this element, otherwise it will be
- appended to the document body.
-
-
-
- component
- string or jQuery Element
- '.add-on, .input-group-addon'
- Children selector for the component or element that trigger the colorpicker and which
- background color will change (needs an inner <i> element).
-
-
-
- input
- string or jQuery Element
- 'input'
- Children selector for the input that will store the picker selected value.
-
-
- hexNumberSignPrefix
- boolean
- true
- If true, put a '#' (number sign) before hex strings.
-
-
-
- horizontal
- boolean
- false
- If true, the hue and alpha channel bars will be rendered horizontally, above the saturation
- selector.
-
-
-
- inline
- boolean
- false
- If true, forces to show the colorpicker as an inline element.
-
-
- sliders
- object
- [...]
- Vertical sliders configuration (read source code if you really need to tweak this).
-
-
- slidersHorz
- object
- [...]
- Horizontal sliders configuration (read source code if you really need to tweak this).
-
-
- template
- string
- [...]
- Customizes the default colorpicker HTML template.
-
-
- align
- string
- 'right'
- By default, the colorpicker is aligned to the right of the input. If you need to switch it
- to the left, set align to 'left'.
-
-
-
- customClass
- string
- null
- Adds this class to the colorpicker widget.
-
-
- colorSelectors
- object
- null
- List of pre selected colors (hex format). If you choose one of these colors, the alias is returned instead of the hex
- code.
-
-
-
- fallbackColor
- string
- null
-
- Fallback color string that will be applied when the color failed to be parsed.
- If null , it will keep the current color if any.
-
-
-
- fallbackFormat
- string
- hex
-
- Fallback color format (e.g. when not specified or for alias mode, when selecting non aliased colors)
-
-
-
-
-
-jQuery API Methods
-
-General usage methods
-.colorpicker(options)
-
-Initializes an colorpicker.
-
-.colorpicker('getValue', defaultValue)
-
-Gets the value from the input or the data attribute (if has no input), otherwise returns the default
- value, which defaults to #000000 if not specified.
-
-.colorpicker('setValue', value)
-
-Set a new value for the color picker (also updates everything). Triggers 'changeColor' event.
-
-.colorpicker('show')
-
-Show the color picker
-
-.colorpicker('hide')
-
-Hide the color picker
-
-.colorpicker('reposition')
-
-Updates the color picker's position relative to the element
-
-.colorpicker('update')
-
-Refreshes the widget colors (this is done automatically)
-
-.colorpicker('enable')
-
-Enable the color picker.
-
-.colorpicker('disable')
-
-Disable the color picker.
-
-.colorpicker('destroy')
-
-Destroys the colorpicker widget and unbind all .colorpicker events from the element and component
-
-.data('colorpicker')
-
-Access to the colorpicker API directly
-
-.data('colorpicker').color
-
-Access to the colorpicker Color object information
-
-
-
-Color object methods
-
-Each triggered events have a color object (avaliable through event.color, see the example at the
- bottom) used internally by the picker. This object has several useful methods. These are the more
- commonly used:
-
-.setColor(value)
-
-Set a new color. The value is parsed and tries to do a quess on the format.
-
-.setHue(value)
-
-Set the HUE with a value between 0 and 1.
-
-.setSaturation(value)
-
-Set the saturation with a value between 0 and 1.
-
-.setBrightness(value)
-
-Set the brightness with a value between 0 and 1.
-
-.setAlpha(value)
-
-Set the transparency with a value between 0 and 1.
-
-.toRGB()
-
-Returns a hash with red, green, blue and alpha.
-
-.toHex()
-
-Returns a string with HEX format for the current color.
-
-.toHSL()
-
-Returns a hash with HSLA values.
-
-
-
-Events
-
-The colorpicker plugin exposes some events
-
-
-
-
- Event
- Description
-
-
-
-
- create
- This event fires immediately when the color picker is created.
-
-
- showPicker
- This event fires immediately when the color picker is displayed.
-
-
- hidePicker
- This event is fired immediately when the color picker is hidden.
-
-
- changeColor
- This event is fired when the color is changed.
-
-
- disable
- This event is fired immediately when the color picker is disabled, except if it was
- initialized as disabled.
-
-
-
- enable
- This event is fired immediately when the color picker is enabled, except upon
- initialization.
-
-
-
- destroy
- This event fires immediately when the color picker is destroyed.
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/example.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/example.hbs
deleted file mode 100755
index 6a0f048a1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/example.hbs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
{{title}}
- {{#if description}}
{{description}}
{{/if}}
-
-
- {{> (lookup . 'content') }}
-
-
View source
- {{#code}}
- {{> (lookup . 'content') }}
- {{/code}}
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples.hbs
deleted file mode 100755
index 4d0fee272..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples.hbs
+++ /dev/null
@@ -1,23 +0,0 @@
-Examples
-
-
-{{> example title="Simple input field" content="01_basic" }}
-{{> example title="As a component" content="02_component" }}
-{{> example title="With custom options" description="Sample overriding the initial color and format" content="03_component_options" }}
-{{> example title="Working with events" content="04_events" }}
-{{> example title="Transparent color support" content="05_transparent" }}
-{{> example title="Horizontal mode" content="06_horizontal" }}
-{{> example title="Inline mode" content="07_inline" }}
-{{> example title="Aliased color palette" content="08_palette" }}
-{{> example title="Customized widget size" description="Also showing the support of HTML color names" content="09_size" }}
-{{> example title="Disabled / enabled status" content="10_disabled" }}
-{{> example title="Inside a modal" content="11_modal" }}
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/01_basic.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/01_basic.hbs
deleted file mode 100755
index d5ae24463..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/01_basic.hbs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/02_component.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/02_component.hbs
deleted file mode 100755
index 42b539ee9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/02_component.hbs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/03_component_options.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/03_component_options.hbs
deleted file mode 100755
index a405207ec..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/03_component_options.hbs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/04_events.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/04_events.hbs
deleted file mode 100755
index 86e3c0ed7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/04_events.hbs
+++ /dev/null
@@ -1,8 +0,0 @@
-Change background color
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/05_transparent.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/05_transparent.hbs
deleted file mode 100755
index af9ba13f4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/05_transparent.hbs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/06_horizontal.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/06_horizontal.hbs
deleted file mode 100755
index 3d990e2cb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/06_horizontal.hbs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/07_inline.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/07_inline.hbs
deleted file mode 100755
index 14371e770..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/07_inline.hbs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/08_palette.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/08_palette.hbs
deleted file mode 100755
index dac0f9867..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/08_palette.hbs
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/09_size.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/09_size.hbs
deleted file mode 100755
index ae49f29f3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/09_size.hbs
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/10_disabled.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/10_disabled.hbs
deleted file mode 100755
index a7b0a98df..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/10_disabled.hbs
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
- Enable
- Disable
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/11_modal.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/11_modal.hbs
deleted file mode 100755
index 31524b692..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/examples/11_modal.hbs
+++ /dev/null
@@ -1,20 +0,0 @@
-
- Show modal
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/social.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/social.hbs
deleted file mode 100755
index 5c47d8931..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/includes/social.hbs
+++ /dev/null
@@ -1,20 +0,0 @@
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/layout.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/layout.hbs
deleted file mode 100755
index f250e8f13..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/layout.hbs
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
- Colorpicker for Twitter Bootstrap
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{> body }}
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/pages/index.hbs b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/pages/index.hbs
deleted file mode 100755
index d4979fd44..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/docs/pages/index.hbs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
- {{package.description}}.
- Originally written by Stefan Petre and maintained by
- Javi Aguilar and the Github community.
-
-
- NOTE That this is an older version of the library documentation, please check
- the project README
- to find the documentation for the newer and latest versions.
-
-
-
-{{> social }}
-
-
- {{> api }}
-
-
-{{> examples }}
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/index.html b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/index.html
deleted file mode 100755
index ae40a0b8d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/index.html
+++ /dev/null
@@ -1,794 +0,0 @@
-
-
-
-
-
-
- Colorpicker for Twitter Bootstrap
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Fancy and customizable colorpicker plugin for Twitter Bootstrap.
- Originally written by Stefan Petre and maintained by
- Javi Aguilar and the Github community.
-
-
- NOTE That this is an older version of the library documentation, please check
- the project README
- to find the documentation for the newer and latest versions.
-
-
-
-
-
-
-
Documentation
-
-
-
-
Call the colopicker via javascript:
-
$('.sample-selector').colorpicker({ /*options...*/ });
-
Options
-
-
- You can set colorpicker options either as a plugin parameter or data-* attributes
-
-
-
-
- Name
- Type
- Default
- Description
-
-
-
-
- format
- string
- false
- If not false, forces the color format to be hex, rgb or rgba, otherwise the format is
- automatically detected.
-
-
-
- color
- string
- false
- If not false, sets the color to this value.
-
-
- container
- string or jQuery Element
- false
- If not false, the picker will be contained inside this element, otherwise it will be
- appended to the document body.
-
-
-
- component
- string or jQuery Element
- '.add-on, .input-group-addon'
- Children selector for the component or element that trigger the colorpicker and which
- background color will change (needs an inner <i> element).
-
-
-
- input
- string or jQuery Element
- 'input'
- Children selector for the input that will store the picker selected value.
-
-
- hexNumberSignPrefix
- boolean
- true
- If true, put a '#' (number sign) before hex strings.
-
-
-
- horizontal
- boolean
- false
- If true, the hue and alpha channel bars will be rendered horizontally, above the saturation
- selector.
-
-
-
- inline
- boolean
- false
- If true, forces to show the colorpicker as an inline element.
-
-
- sliders
- object
- [...]
- Vertical sliders configuration (read source code if you really need to tweak this).
-
-
- slidersHorz
- object
- [...]
- Horizontal sliders configuration (read source code if you really need to tweak this).
-
-
- template
- string
- [...]
- Customizes the default colorpicker HTML template.
-
-
- align
- string
- 'right'
- By default, the colorpicker is aligned to the right of the input. If you need to switch it
- to the left, set align to 'left'.
-
-
-
- customClass
- string
- null
- Adds this class to the colorpicker widget.
-
-
- colorSelectors
- object
- null
- List of pre selected colors (hex format). If you choose one of these colors, the alias is returned instead of the hex
- code.
-
-
-
- fallbackColor
- string
- null
-
- Fallback color string that will be applied when the color failed to be parsed.
- If null , it will keep the current color if any.
-
-
-
- fallbackFormat
- string
- hex
-
- Fallback color format (e.g. when not specified or for alias mode, when selecting non aliased colors)
-
-
-
-
-
-
jQuery API Methods
-
-
General usage methods
-
.colorpicker(options)
-
-
Initializes an colorpicker.
-
-
.colorpicker('getValue', defaultValue)
-
-
Gets the value from the input or the data attribute (if has no input), otherwise returns the default
- value, which defaults to #000000 if not specified.
-
-
.colorpicker('setValue', value)
-
-
Set a new value for the color picker (also updates everything). Triggers 'changeColor' event.
-
-
.colorpicker('show')
-
-
Show the color picker
-
-
.colorpicker('hide')
-
-
Hide the color picker
-
-
.colorpicker('reposition')
-
-
Updates the color picker's position relative to the element
-
-
.colorpicker('update')
-
-
Refreshes the widget colors (this is done automatically)
-
-
.colorpicker('enable')
-
-
Enable the color picker.
-
-
.colorpicker('disable')
-
-
Disable the color picker.
-
-
.colorpicker('destroy')
-
-
Destroys the colorpicker widget and unbind all .colorpicker events from the element and component
-
-
.data('colorpicker')
-
-
Access to the colorpicker API directly
-
-
.data('colorpicker').color
-
-
Access to the colorpicker Color object information
-
-
-
-
Color object methods
-
-
Each triggered events have a color object (avaliable through event.color, see the example at the
- bottom) used internally by the picker. This object has several useful methods. These are the more
- commonly used:
-
-
.setColor(value)
-
-
Set a new color. The value is parsed and tries to do a quess on the format.
-
-
.setHue(value)
-
-
Set the HUE with a value between 0 and 1.
-
-
.setSaturation(value)
-
-
Set the saturation with a value between 0 and 1.
-
-
.setBrightness(value)
-
-
Set the brightness with a value between 0 and 1.
-
-
.setAlpha(value)
-
-
Set the transparency with a value between 0 and 1.
-
-
.toRGB()
-
-
Returns a hash with red, green, blue and alpha.
-
-
.toHex()
-
-
Returns a string with HEX format for the current color.
-
-
.toHSL()
-
-
Returns a hash with HSLA values.
-
-
-
-
Events
-
-
The colorpicker plugin exposes some events
-
-
-
-
- Event
- Description
-
-
-
-
- create
- This event fires immediately when the color picker is created.
-
-
- showPicker
- This event fires immediately when the color picker is displayed.
-
-
- hidePicker
- This event is fired immediately when the color picker is hidden.
-
-
- changeColor
- This event is fired when the color is changed.
-
-
- disable
- This event is fired immediately when the color picker is disabled, except if it was
- initialized as disabled.
-
-
-
- enable
- This event is fired immediately when the color picker is enabled, except upon
- initialization.
-
-
-
- destroy
- This event fires immediately when the color picker is destroyed.
-
-
-
-
-
-
Examples
-
-
-
-
Simple input field
-
-
-
-
-
-
-
View source
-
<input id="cp1" type="text" class="form-control" value="#5367ce" />
-<script>
- $(function() {
- $('#cp1').colorpicker();
- });
-</script>
-
-
-
As a component
-
-
-
-
View source
-
<div id="cp2" class="input-group colorpicker-component">
- <input type="text" value="#00AABB" class="form-control" />
- <span class="input-group-addon"><i></i></span>
-</div>
-<script>
- $(function() {
- $('#cp2').colorpicker();
- });
-</script>
-
-
-
With custom options
-
Sample overriding the initial color and format
-
-
-
View source
-
<div id="cp3" class="input-group colorpicker-component">
- <input type="text" value="#00AABB" class="form-control" />
- <span class="input-group-addon"><i></i></span>
-</div>
-<script>
- $(function() {
- $('#cp3').colorpicker({
- color: '#AA3399',
- format: 'rgb'
- });
- });
-</script>
-
-
-
Working with events
-
-
-
-
View source
-
<a href="#" class="btn btn-default" id="cp4">Change background color</a>
-<script>
- $(function() {
- $('#cp4').colorpicker().on('changeColor', function(e) {
- $('body')[0].style.backgroundColor = e.color.toString(
- 'rgba');
- });
- });
-</script>
-
-
-
Transparent color support
-
-
-
-
-
-
-
View source
-
<input type="text" class="form-control" id="cp5" />
-<script>
- $(function() {
- $('#cp5').colorpicker({
- color: "transparent",
- format: "hex"
- });
- });
-</script>
-
-
-
Horizontal mode
-
-
-
-
-
-
-
View source
-
<input type="text" class="form-control" id="cp6" />
-<script>
- $(function() {
- $('#cp6').colorpicker({
- color: "#88cc33",
- horizontal: true
- });
- });
-</script>
-
-
-
Inline mode
-
-
-
-
View source
-
<div id="cp7" class="inl-bl"></div>
-<style>
- .inl-bl {
- display: inline-block;
- }
-</style>
-<script>
- $(function() {
- $('#cp7').colorpicker({
- color: '#ffaa00',
- container: true,
- inline: true
- });
- });
-</script>
-
-
-
Aliased color palette
-
-
-
-
View source
-
<div id="cp8" data-format="alias" class="input-group colorpicker-component">
- <input type="text" value="primary" class="form-control" />
- <span class="input-group-addon"><i></i></span>
-</div>
-<script>
- $(function() {
- $('#cp8').colorpicker({
- colorSelectors: {
- 'black': '#000000',
- 'white': '#ffffff',
- 'red': '#FF0000',
- 'default': '#777777',
- 'primary': '#337ab7',
- 'success': '#5cb85c',
- 'info': '#5bc0de',
- 'warning': '#f0ad4e',
- 'danger': '#d9534f'
- }
- });
- });
-</script>
-
-
-
Customized widget size
-
Also showing the support of HTML color names
-
-
-
-
-
-
-
View source
-
<input id="cp9" type="text" class="form-control" value="pink" />
-<style>
- .colorpicker-2x .colorpicker-saturation {
- width: 200px;
- height: 200px;
- }
-
- .colorpicker-2x .colorpicker-hue,
- .colorpicker-2x .colorpicker-alpha {
- width: 30px;
- height: 200px;
- }
-
- .colorpicker-2x .colorpicker-color,
- .colorpicker-2x .colorpicker-color div {
- height: 30px;
- }
-</style>
-<script>
- $(function() {
- $('#cp9').colorpicker({
- customClass: 'colorpicker-2x',
- sliders: {
- saturation: {
- maxLeft: 200,
- maxTop: 200
- },
- hue: {
- maxTop: 200
- },
- alpha: {
- maxTop: 200
- }
- }
- });
- });
-</script>
-
-
-
Disabled / enabled status
-
-
-
-
View source
-
<div id="cp10" class="input-group colorpicker-component">
- <input disabled type="text" value="" class="form-control" />
- <span class="input-group-addon"><i></i></span>
-</div>
-<br>
-<p>
- <a class="btn btn-sm btn-default enable-button" href="#">Enable</a>
- <a class="btn btn-sm btn-default disable-button" href="#">Disable</a>
-</p>
-<script>
- $(function() {
- $(".disable-button").click(function(e) {
- e.preventDefault();
- $("#cp10").colorpicker('disable');
- });
-
- $(".enable-button").click(function(e) {
- e.preventDefault();
- $("#cp10").colorpicker('enable');
- });
- $('#cp10').colorpicker();
- });
-</script>
-
-
-
Inside a modal
-
-
-
-
View source
-
<button class="btn btn-primary btn-md" data-toggle="modal" data-target="#myModal">
- Show modal
- </button>
-<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
- aria-hidden="true">
- <div class="modal-dialog">
- <div class="modal-content">
- <div class="modal-body">
- <div id="cp11" class="input-group colorpicker-component">
- <input type="text" value="" class="form-control" />
- <span class="input-group-addon"><i></i></span>
- </div>
- </div>
- </div>
- </div>
-</div>
-<script>
- $(function() {
- $('#cp11').colorpicker();
- });
-</script>
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/package.json b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/package.json
deleted file mode 100755
index 306979f4c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/package.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "name": "bootstrap-colorpicker",
- "version": "2.5.3",
- "description": "Fancy and customizable colorpicker plugin for Twitter Bootstrap",
- "main": "./dist/js/bootstrap-colorpicker.js",
- "homepage": "https://itsjavi.com/bootstrap-colorpicker/",
- "repository": {
- "type": "git",
- "url": "https://github.com/itsjavi/bootstrap-colorpicker.git"
- },
- "bugs": {
- "url": "https://github.com/itsjavi/bootstrap-colorpicker/issues"
- },
- "keywords": [
- "bootstrap",
- "colorpicker"
- ],
- "author": "Javier Aguilar",
- "license": "Apache-2.0",
- "licenses": [
- {
- "type": "Apache-2.0",
- "url": "http://opensource.org/licenses/Apache-2.0"
- }
- ],
- "dependencies": {
- "jquery": ">=1.10"
- },
- "scripts": {
- "test": "jasmine"
- },
- "devDependencies": {
- "grunt": "~0.4.5",
- "grunt-assemble": "~0.4.0",
- "grunt-combine": "~0.8.3",
- "grunt-contrib-clean": "~1.0.0",
- "grunt-contrib-cssmin": "~1.0.1",
- "grunt-contrib-jshint": "~1.0.0",
- "grunt-contrib-less": "~1.2.0",
- "grunt-contrib-uglify": "~1.0.0",
- "grunt-contrib-watch": "~1.0.0",
- "grunt-jsbeautifier": "~0.2.10",
- "grunt-strip-code": "^1.0.6",
- "jasmine": "^2.6.0",
- "jquery": ">=1.10",
- "jsdom": "^10.1.0"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/serve.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/serve.js
deleted file mode 100755
index f4768c6bd..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/serve.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- Script for serving index.html and other static content with Node.
- Run it using `node serve` from your terminal and navigate to http://localhost:5000
- in order to test your changes in the browser.
- */
-
-var http = require('http'), fs = require('fs'), mimeTypes = {
- 'html': 'text/html',
- 'css': 'text/css',
- 'js': 'text/javascript',
- 'json': 'application/json',
- 'png': 'image/png',
- 'jpg': 'image/jpg'
-};
-
-http.createServer(function (req, res) {
- var file = (req.url === '/') ? 'index.html' : "." + req.url;
- var ext = require('path').extname(file),
- type = (mimeTypes[ext] ? mimeTypes[ext] : '');
-
- fs.exists(file, function (exists) {
- if (exists) {
- res.writeHead(200, {'Content-Type': type});
- fs.createReadStream(file).pipe(res);
- } else {
- console.warn(file, ' does not exit');
- }
- });
-}).listen(5000);
-
-console.log("Your bootstrap-colorpicker development URL is http://localhost:5000");
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/color/hex-color-spec.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/color/hex-color-spec.js
deleted file mode 100755
index caa89d3f4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/color/hex-color-spec.js
+++ /dev/null
@@ -1,11 +0,0 @@
-var Color = require("../../src/js/colorpicker-color.js");
-
-it("should return color in raw format", function(){
- var color = new Color('aabbcc');
- expect(color.toHex(true)).toEqual("#aabbcc");
-});
-
-it("should return color formatted", function(){
- var color = new Color('aabbcc');
- expect(color.toHex()).toEqual("aabbcc");
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/support/jasmine.json b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/support/jasmine.json
deleted file mode 100755
index 3ea316690..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/spec/support/jasmine.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "spec_dir": "spec",
- "spec_files": [
- "**/*[sS]pec.js"
- ],
- "helpers": [
- "helpers/**/*.js"
- ],
- "stopSpecOnExpectationFailure": false,
- "random": false
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-color.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-color.js
deleted file mode 100755
index 792d3f137..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-color.js
+++ /dev/null
@@ -1,676 +0,0 @@
-/* test-code */
-if (typeof module === "object" && typeof module.exports === "object") {
- var jsdom = require("jsdom");
- var JSDOM = jsdom.JSDOM;
- var $ = require('jquery')((new JSDOM('Hello world
')).window);
-}
-/* end-test-code */
-/**
- * Color manipulation helper class
- *
- * @param {Object|String} [val]
- * @param {Object} [predefinedColors]
- * @param {String|null} [fallbackColor]
- * @param {String|null} [fallbackFormat]
- * @param {Boolean} [hexNumberSignPrefix]
- * @constructor
- */
-var Color = function(
- val, predefinedColors, fallbackColor, fallbackFormat, hexNumberSignPrefix) {
- this.fallbackValue = fallbackColor ?
- (
- (typeof fallbackColor === 'string') ?
- this.parse(fallbackColor) :
- fallbackColor
- ) :
- null;
-
- this.fallbackFormat = fallbackFormat ? fallbackFormat : 'rgba';
-
- this.hexNumberSignPrefix = hexNumberSignPrefix === true;
-
- this.value = this.fallbackValue;
-
- this.origFormat = null; // original string format
-
- this.predefinedColors = predefinedColors ? predefinedColors : {};
-
- // We don't want to share aliases across instances so we extend new object
- this.colors = $.extend({}, Color.webColors, this.predefinedColors);
-
- if (val) {
- if (typeof val.h !== 'undefined') {
- this.value = val;
- } else {
- this.setColor(String(val));
- }
- }
-
- if (!this.value) {
- // Initial value is always black if no arguments are passed or val is empty
- this.value = {
- h: 0,
- s: 0,
- b: 0,
- a: 1
- };
- }
-};
-
-Color.webColors = { // 140 predefined colors from the HTML Colors spec
- "aliceblue": "f0f8ff",
- "antiquewhite": "faebd7",
- "aqua": "00ffff",
- "aquamarine": "7fffd4",
- "azure": "f0ffff",
- "beige": "f5f5dc",
- "bisque": "ffe4c4",
- "black": "000000",
- "blanchedalmond": "ffebcd",
- "blue": "0000ff",
- "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",
- "darkkhaki": "bdb76b",
- "darkmagenta": "8b008b",
- "darkolivegreen": "556b2f",
- "darkorange": "ff8c00",
- "darkorchid": "9932cc",
- "darkred": "8b0000",
- "darksalmon": "e9967a",
- "darkseagreen": "8fbc8f",
- "darkslateblue": "483d8b",
- "darkslategray": "2f4f4f",
- "darkturquoise": "00ced1",
- "darkviolet": "9400d3",
- "deeppink": "ff1493",
- "deepskyblue": "00bfff",
- "dimgray": "696969",
- "dodgerblue": "1e90ff",
- "firebrick": "b22222",
- "floralwhite": "fffaf0",
- "forestgreen": "228b22",
- "fuchsia": "ff00ff",
- "gainsboro": "dcdcdc",
- "ghostwhite": "f8f8ff",
- "gold": "ffd700",
- "goldenrod": "daa520",
- "gray": "808080",
- "green": "008000",
- "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",
- "lightgrey": "d3d3d3",
- "lightgreen": "90ee90",
- "lightpink": "ffb6c1",
- "lightsalmon": "ffa07a",
- "lightseagreen": "20b2aa",
- "lightskyblue": "87cefa",
- "lightslategray": "778899",
- "lightsteelblue": "b0c4de",
- "lightyellow": "ffffe0",
- "lime": "00ff00",
- "limegreen": "32cd32",
- "linen": "faf0e6",
- "magenta": "ff00ff",
- "maroon": "800000",
- "mediumaquamarine": "66cdaa",
- "mediumblue": "0000cd",
- "mediumorchid": "ba55d3",
- "mediumpurple": "9370d8",
- "mediumseagreen": "3cb371",
- "mediumslateblue": "7b68ee",
- "mediumspringgreen": "00fa9a",
- "mediumturquoise": "48d1cc",
- "mediumvioletred": "c71585",
- "midnightblue": "191970",
- "mintcream": "f5fffa",
- "mistyrose": "ffe4e1",
- "moccasin": "ffe4b5",
- "navajowhite": "ffdead",
- "navy": "000080",
- "oldlace": "fdf5e6",
- "olive": "808000",
- "olivedrab": "6b8e23",
- "orange": "ffa500",
- "orangered": "ff4500",
- "orchid": "da70d6",
- "palegoldenrod": "eee8aa",
- "palegreen": "98fb98",
- "paleturquoise": "afeeee",
- "palevioletred": "d87093",
- "papayawhip": "ffefd5",
- "peachpuff": "ffdab9",
- "peru": "cd853f",
- "pink": "ffc0cb",
- "plum": "dda0dd",
- "powderblue": "b0e0e6",
- "purple": "800080",
- "red": "ff0000",
- "rosybrown": "bc8f8f",
- "royalblue": "4169e1",
- "saddlebrown": "8b4513",
- "salmon": "fa8072",
- "sandybrown": "f4a460",
- "seagreen": "2e8b57",
- "seashell": "fff5ee",
- "sienna": "a0522d",
- "silver": "c0c0c0",
- "skyblue": "87ceeb",
- "slateblue": "6a5acd",
- "slategray": "708090",
- "snow": "fffafa",
- "springgreen": "00ff7f",
- "steelblue": "4682b4",
- "tan": "d2b48c",
- "teal": "008080",
- "thistle": "d8bfd8",
- "tomato": "ff6347",
- "turquoise": "40e0d0",
- "violet": "ee82ee",
- "wheat": "f5deb3",
- "white": "ffffff",
- "whitesmoke": "f5f5f5",
- "yellow": "ffff00",
- "yellowgreen": "9acd32",
- "transparent": "transparent"
-};
-
-Color.prototype = {
- constructor: Color,
- colors: {}, // merged web and predefined colors
- predefinedColors: {},
- /**
- * @return {Object}
- */
- getValue: function() {
- return this.value;
- },
- /**
- * @param {Object} val
- */
- setValue: function(val) {
- this.value = val;
- },
- _sanitizeNumber: function(val) {
- if (typeof val === 'number') {
- return val;
- }
- if (isNaN(val) || (val === null) || (val === '') || (val === undefined)) {
- return 1;
- }
- if (val === '') {
- return 0;
- }
- if (typeof val.toLowerCase !== 'undefined') {
- if (val.match(/^\./)) {
- val = "0" + val;
- }
- return Math.ceil(parseFloat(val) * 100) / 100;
- }
- return 1;
- },
- isTransparent: function(strVal) {
- if (!strVal || !(typeof strVal === 'string' || strVal instanceof String)) {
- return false;
- }
- strVal = strVal.toLowerCase().trim();
- return (strVal === 'transparent') || (strVal.match(/#?00000000/)) || (strVal.match(/(rgba|hsla)\(0,0,0,0?\.?0\)/));
- },
- rgbaIsTransparent: function(rgba) {
- return ((rgba.r === 0) && (rgba.g === 0) && (rgba.b === 0) && (rgba.a === 0));
- },
- // parse a string to HSB
- /**
- * @protected
- * @param {String} strVal
- * @returns {boolean} Returns true if it could be parsed, false otherwise
- */
- setColor: function(strVal) {
- strVal = strVal.toLowerCase().trim();
- if (strVal) {
- if (this.isTransparent(strVal)) {
- this.value = {
- h: 0,
- s: 0,
- b: 0,
- a: 0
- };
- return true;
- } else {
- var parsedColor = this.parse(strVal);
- if (parsedColor) {
- this.value = this.value = {
- h: parsedColor.h,
- s: parsedColor.s,
- b: parsedColor.b,
- a: parsedColor.a
- };
- if (!this.origFormat) {
- this.origFormat = parsedColor.format;
- }
- } else if (this.fallbackValue) {
- // if parser fails, defaults to fallbackValue if defined, otherwise the value won't be changed
- this.value = this.fallbackValue;
- }
- }
- }
- return false;
- },
- setHue: function(h) {
- this.value.h = 1 - h;
- },
- setSaturation: function(s) {
- this.value.s = s;
- },
- setBrightness: function(b) {
- this.value.b = 1 - b;
- },
- setAlpha: function(a) {
- this.value.a = Math.round((parseInt((1 - a) * 100, 10) / 100) * 100) / 100;
- },
- toRGB: function(h, s, b, a) {
- if (arguments.length === 0) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- h *= 360;
- var R, G, B, X, C;
- h = (h % 360) / 60;
- C = b * s;
- X = C * (1 - Math.abs(h % 2 - 1));
- R = G = B = b - C;
-
- h = ~~h;
- R += [C, X, 0, 0, X, C][h];
- G += [X, C, C, X, 0, 0][h];
- B += [0, 0, X, C, C, X][h];
-
- return {
- r: Math.round(R * 255),
- g: Math.round(G * 255),
- b: Math.round(B * 255),
- a: a
- };
- },
- toHex: function(ignoreFormat, h, s, b, a) {
- if (arguments.length <= 1) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- var prefix = '#';
- var rgb = this.toRGB(h, s, b, a);
-
- if (this.rgbaIsTransparent(rgb)) {
- return 'transparent';
- }
-
- if (!ignoreFormat) {
- prefix = (this.hexNumberSignPrefix ? '#' : '');
- }
-
- var hexStr = prefix + (
- (1 << 24) +
- (parseInt(rgb.r) << 16) +
- (parseInt(rgb.g) << 8) +
- parseInt(rgb.b))
- .toString(16)
- .slice(1);
-
- return hexStr;
- },
- toHSL: function(h, s, b, a) {
- if (arguments.length === 0) {
- h = this.value.h;
- s = this.value.s;
- b = this.value.b;
- a = this.value.a;
- }
-
- var H = h,
- L = (2 - s) * b,
- S = s * b;
- if (L > 0 && L <= 1) {
- S /= L;
- } else {
- S /= 2 - L;
- }
- L /= 2;
- if (S > 1) {
- S = 1;
- }
- return {
- h: isNaN(H) ? 0 : H,
- s: isNaN(S) ? 0 : S,
- l: isNaN(L) ? 0 : L,
- a: isNaN(a) ? 0 : a
- };
- },
- toAlias: function(r, g, b, a) {
- var c, rgb = (arguments.length === 0) ? this.toHex(true) : this.toHex(true, r, g, b, a);
-
- // support predef. colors in non-hex format too, as defined in the alias itself
- var original = this.origFormat === 'alias' ? rgb : this.toString(false, this.origFormat);
-
- for (var alias in this.colors) {
- c = this.colors[alias].toLowerCase().trim();
- if ((c === rgb) || (c === original)) {
- return alias;
- }
- }
- return false;
- },
- RGBtoHSB: function(r, g, b, a) {
- r /= 255;
- g /= 255;
- b /= 255;
-
- var H, S, V, C;
- V = Math.max(r, g, b);
- C = V - Math.min(r, g, b);
- H = (C === 0 ? null :
- V === r ? (g - b) / C :
- V === g ? (b - r) / C + 2 :
- (r - g) / C + 4
- );
- H = ((H + 360) % 6) * 60 / 360;
- S = C === 0 ? 0 : C / V;
- return {
- h: this._sanitizeNumber(H),
- s: S,
- b: V,
- a: this._sanitizeNumber(a)
- };
- },
- HueToRGB: function(p, q, h) {
- if (h < 0) {
- h += 1;
- } else if (h > 1) {
- h -= 1;
- }
- if ((h * 6) < 1) {
- return p + (q - p) * h * 6;
- } else if ((h * 2) < 1) {
- return q;
- } else if ((h * 3) < 2) {
- return p + (q - p) * ((2 / 3) - h) * 6;
- } else {
- return p;
- }
- },
- HSLtoRGB: function(h, s, l, a) {
- if (s < 0) {
- s = 0;
- }
- var q;
- if (l <= 0.5) {
- q = l * (1 + s);
- } else {
- q = l + s - (l * s);
- }
-
- var p = 2 * l - q;
-
- var tr = h + (1 / 3);
- var tg = h;
- var tb = h - (1 / 3);
-
- var r = Math.round(this.HueToRGB(p, q, tr) * 255);
- var g = Math.round(this.HueToRGB(p, q, tg) * 255);
- var b = Math.round(this.HueToRGB(p, q, tb) * 255);
- return [r, g, b, this._sanitizeNumber(a)];
- },
- /**
- * @param {String} strVal
- * @returns {Object} Object containing h,s,b,a,format properties or FALSE if failed to parse
- */
- parse: function(strVal) {
- if (typeof strVal !== 'string') {
- return this.fallbackValue;
- }
- if (arguments.length === 0) {
- return false;
- }
-
- var that = this,
- result = false,
- isAlias = (typeof this.colors[strVal] !== 'undefined'),
- values, format;
-
- if (isAlias) {
- strVal = this.colors[strVal].toLowerCase().trim();
- }
-
- $.each(this.stringParsers, function(i, parser) {
- var match = parser.re.exec(strVal);
- values = match && parser.parse.apply(that, [match]);
- if (values) {
- result = {};
- format = (isAlias ? 'alias' : (parser.format ? parser.format : that.getValidFallbackFormat()));
- if (format.match(/hsla?/)) {
- result = that.RGBtoHSB.apply(that, that.HSLtoRGB.apply(that, values));
- } else {
- result = that.RGBtoHSB.apply(that, values);
- }
- if (result instanceof Object) {
- result.format = format;
- }
- return false; // stop iterating
- }
- return true;
- });
- return result;
- },
- getValidFallbackFormat: function() {
- var formats = [
- 'rgba', 'rgb', 'hex', 'hsla', 'hsl'
- ];
- if (this.origFormat && (formats.indexOf(this.origFormat) !== -1)) {
- return this.origFormat;
- }
- if (this.fallbackFormat && (formats.indexOf(this.fallbackFormat) !== -1)) {
- return this.fallbackFormat;
- }
-
- return 'rgba'; // By default, return a format that will not lose the alpha info
- },
- /**
- *
- * @param {string} [format] (default: rgba)
- * @param {boolean} [translateAlias] Return real color for pre-defined (non-standard) aliases (default: false)
- * @param {boolean} [forceRawValue] Forces hashtag prefix when getting hex color (default: false)
- * @returns {String}
- */
- toString: function(forceRawValue, format, translateAlias) {
- format = format || this.origFormat || this.fallbackFormat;
- translateAlias = translateAlias || false;
-
- var c = false;
-
- switch (format) {
- case 'rgb':
- {
- c = this.toRGB();
- if (this.rgbaIsTransparent(c)) {
- return 'transparent';
- }
- return 'rgb(' + c.r + ',' + c.g + ',' + c.b + ')';
- }
- break;
- case 'rgba':
- {
- c = this.toRGB();
- return 'rgba(' + c.r + ',' + c.g + ',' + c.b + ',' + c.a + ')';
- }
- break;
- case 'hsl':
- {
- c = this.toHSL();
- return 'hsl(' + Math.round(c.h * 360) + ',' + Math.round(c.s * 100) + '%,' + Math.round(c.l * 100) + '%)';
- }
- break;
- case 'hsla':
- {
- c = this.toHSL();
- return 'hsla(' + Math.round(c.h * 360) + ',' + Math.round(c.s * 100) + '%,' + Math.round(c.l * 100) + '%,' + c.a + ')';
- }
- break;
- case 'hex':
- {
- return this.toHex(forceRawValue);
- }
- break;
- case 'alias':
- {
- c = this.toAlias();
-
- if (c === false) {
- return this.toString(forceRawValue, this.getValidFallbackFormat());
- }
-
- if (translateAlias && !(c in Color.webColors) && (c in this.predefinedColors)) {
- return this.predefinedColors[c];
- }
-
- return c;
- }
- default:
- {
- return c;
- }
- break;
- }
- },
- // a set of RE's that can match strings and generate color tuples.
- // from John Resig color plugin
- // https://github.com/jquery/jquery-color/
- stringParsers: [{
- re: /rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*?\)/,
- format: 'rgb',
- parse: function(execResult) {
- return [
- execResult[1],
- execResult[2],
- execResult[3],
- 1
- ];
- }
- }, {
- re: /rgb\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,
- format: 'rgb',
- parse: function(execResult) {
- return [
- 2.55 * execResult[1],
- 2.55 * execResult[2],
- 2.55 * execResult[3],
- 1
- ];
- }
- }, {
- re: /rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'rgba',
- parse: function(execResult) {
- return [
- execResult[1],
- execResult[2],
- execResult[3],
- execResult[4]
- ];
- }
- }, {
- re: /rgba\(\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'rgba',
- parse: function(execResult) {
- return [
- 2.55 * execResult[1],
- 2.55 * execResult[2],
- 2.55 * execResult[3],
- execResult[4]
- ];
- }
- }, {
- re: /hsl\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*?\)/,
- format: 'hsl',
- parse: function(execResult) {
- return [
- execResult[1] / 360,
- execResult[2] / 100,
- execResult[3] / 100,
- execResult[4]
- ];
- }
- }, {
- re: /hsla\(\s*(\d*(?:\.\d+)?)\s*,\s*(\d*(?:\.\d+)?)\%\s*,\s*(\d*(?:\.\d+)?)\%\s*(?:,\s*(\d*(?:\.\d+)?)\s*)?\)/,
- format: 'hsla',
- parse: function(execResult) {
- return [
- execResult[1] / 360,
- execResult[2] / 100,
- execResult[3] / 100,
- execResult[4]
- ];
- }
- }, {
- re: /#?([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,
- format: 'hex',
- parse: function(execResult) {
- return [
- parseInt(execResult[1], 16),
- parseInt(execResult[2], 16),
- parseInt(execResult[3], 16),
- 1
- ];
- }
- }, {
- re: /#?([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,
- format: 'hex',
- parse: function(execResult) {
- return [
- parseInt(execResult[1] + execResult[1], 16),
- parseInt(execResult[2] + execResult[2], 16),
- parseInt(execResult[3] + execResult[3], 16),
- 1
- ];
- }
- }],
- colorNameToHex: function(name) {
- if (typeof this.colors[name.toLowerCase()] !== 'undefined') {
- return this.colors[name.toLowerCase()];
- }
- return false;
- }
-};
-/* test-code */
-module.exports = Color;
-/* end-test-code */
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-component.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-component.js
deleted file mode 100755
index 124fa3d17..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-component.js
+++ /dev/null
@@ -1,566 +0,0 @@
-/**
- * Colorpicker component class
- *
- * @param {Object|String} element
- * @param {Object} options
- * @constructor
- */
-var Colorpicker = function(element, options) {
- this.element = $(element).addClass('colorpicker-element');
- this.options = $.extend(true, {}, defaults, this.element.data(), options);
- this.component = this.options.component;
- this.component = (this.component !== false) ? this.element.find(this.component) : false;
- if (this.component && (this.component.length === 0)) {
- this.component = false;
- }
- this.container = (this.options.container === true) ? this.element : this.options.container;
- this.container = (this.container !== false) ? $(this.container) : false;
-
- // Is the element an input? Should we search inside for any input?
- this.input = this.element.is('input') ? this.element : (this.options.input ?
- this.element.find(this.options.input) : false);
- if (this.input && (this.input.length === 0)) {
- this.input = false;
- }
- // Set HSB color
- this.color = this.createColor(this.options.color !== false ? this.options.color : this.getValue());
-
- this.format = this.options.format !== false ? this.options.format : this.color.origFormat;
-
- if (this.options.color !== false) {
- this.updateInput(this.color);
- this.updateData(this.color);
- }
-
- this.disabled = false;
-
- // Setup picker
- var $picker = this.picker = $(this.options.template);
- if (this.options.customClass) {
- $picker.addClass(this.options.customClass);
- }
- if (this.options.inline) {
- $picker.addClass('colorpicker-inline colorpicker-visible');
- } else {
- $picker.addClass('colorpicker-hidden');
- }
- if (this.options.horizontal) {
- $picker.addClass('colorpicker-horizontal');
- }
- if (
- (['rgba', 'hsla', 'alias'].indexOf(this.format) !== -1) ||
- this.options.format === false ||
- this.getValue() === 'transparent'
- ) {
- $picker.addClass('colorpicker-with-alpha');
- }
- if (this.options.align === 'right') {
- $picker.addClass('colorpicker-right');
- }
- if (this.options.inline === true) {
- $picker.addClass('colorpicker-no-arrow');
- }
- if (this.options.colorSelectors) {
- var colorpicker = this,
- selectorsContainer = colorpicker.picker.find('.colorpicker-selectors');
-
- if (selectorsContainer.length > 0) {
- $.each(this.options.colorSelectors, function(name, color) {
- var $btn = $(' ')
- .addClass('colorpicker-selectors-color')
- .css('background-color', color)
- .data('class', name).data('alias', name);
-
- $btn.on('mousedown.colorpicker touchstart.colorpicker', function(event) {
- event.preventDefault();
- colorpicker.setValue(
- colorpicker.format === 'alias' ? $(this).data('alias') : $(this).css('background-color')
- );
- });
- selectorsContainer.append($btn);
- });
- selectorsContainer.show().addClass('colorpicker-visible');
- }
- }
-
- // Prevent closing the colorpicker when clicking on itself
- $picker.on('mousedown.colorpicker touchstart.colorpicker', $.proxy(function(e) {
- if (e.target === e.currentTarget) {
- e.preventDefault();
- }
- }, this));
-
- // Bind click/tap events on the sliders
- $picker.find('.colorpicker-saturation, .colorpicker-hue, .colorpicker-alpha')
- .on('mousedown.colorpicker touchstart.colorpicker', $.proxy(this.mousedown, this));
-
- $picker.appendTo(this.container ? this.container : $('body'));
-
- // Bind other events
- if (this.input !== false) {
- this.input.on({
- 'keyup.colorpicker': $.proxy(this.keyup, this)
- });
- this.input.on({
- 'input.colorpicker': $.proxy(this.change, this)
- });
- if (this.component === false) {
- this.element.on({
- 'focus.colorpicker': $.proxy(this.show, this)
- });
- }
- if (this.options.inline === false) {
- this.element.on({
- 'focusout.colorpicker': $.proxy(this.hide, this)
- });
- }
- }
-
- if (this.component !== false) {
- this.component.on({
- 'click.colorpicker': $.proxy(this.show, this)
- });
- }
-
- if ((this.input === false) && (this.component === false)) {
- this.element.on({
- 'click.colorpicker': $.proxy(this.show, this)
- });
- }
-
- // for HTML5 input[type='color']
- if ((this.input !== false) && (this.component !== false) && (this.input.attr('type') === 'color')) {
-
- this.input.on({
- 'click.colorpicker': $.proxy(this.show, this),
- 'focus.colorpicker': $.proxy(this.show, this)
- });
- }
- this.update();
-
- $($.proxy(function() {
- this.element.trigger('create');
- }, this));
-};
-
-Colorpicker.Color = Color;
-
-Colorpicker.prototype = {
- constructor: Colorpicker,
- destroy: function() {
- this.picker.remove();
- this.element.removeData('colorpicker', 'color').off('.colorpicker');
- if (this.input !== false) {
- this.input.off('.colorpicker');
- }
- if (this.component !== false) {
- this.component.off('.colorpicker');
- }
- this.element.removeClass('colorpicker-element');
- this.element.trigger({
- type: 'destroy'
- });
- },
- reposition: function() {
- if (this.options.inline !== false || this.options.container) {
- return false;
- }
- var type = this.container && this.container[0] !== window.document.body ? 'position' : 'offset';
- var element = this.component || this.element;
- var offset = element[type]();
- if (this.options.align === 'right') {
- offset.left -= this.picker.outerWidth() - element.outerWidth();
- }
- this.picker.css({
- top: offset.top + element.outerHeight(),
- left: offset.left
- });
- },
- show: function(e) {
- if (this.isDisabled()) {
- // Don't show the widget if it's disabled (the input)
- return;
- }
- this.picker.addClass('colorpicker-visible').removeClass('colorpicker-hidden');
- this.reposition();
- $(window).on('resize.colorpicker', $.proxy(this.reposition, this));
- if (e && (!this.hasInput() || this.input.attr('type') === 'color')) {
- if (e.stopPropagation && e.preventDefault) {
- e.stopPropagation();
- e.preventDefault();
- }
- }
- if ((this.component || !this.input) && (this.options.inline === false)) {
- $(window.document).on({
- 'mousedown.colorpicker': $.proxy(this.hide, this)
- });
- }
- this.element.trigger({
- type: 'showPicker',
- color: this.color
- });
- },
- hide: function(e) {
- if ((typeof e !== 'undefined') && e.target) {
- // Prevent hide if triggered by an event and an element inside the colorpicker has been clicked/touched
- if (
- $(e.currentTarget).parents('.colorpicker').length > 0 ||
- $(e.target).parents('.colorpicker').length > 0
- ) {
- return false;
- }
- }
- this.picker.addClass('colorpicker-hidden').removeClass('colorpicker-visible');
- $(window).off('resize.colorpicker', this.reposition);
- $(window.document).off({
- 'mousedown.colorpicker': this.hide
- });
- this.update();
- this.element.trigger({
- type: 'hidePicker',
- color: this.color
- });
- },
- updateData: function(val) {
- val = val || this.color.toString(false, this.format);
- this.element.data('color', val);
- return val;
- },
- updateInput: function(val) {
- val = val || this.color.toString(false, this.format);
- if (this.input !== false) {
- this.input.prop('value', val);
- this.input.trigger('change');
- }
- return val;
- },
- updatePicker: function(val) {
- if (typeof val !== 'undefined') {
- this.color = this.createColor(val);
- }
- var sl = (this.options.horizontal === false) ? this.options.sliders : this.options.slidersHorz;
- var icns = this.picker.find('i');
- if (icns.length === 0) {
- return;
- }
- if (this.options.horizontal === false) {
- sl = this.options.sliders;
- icns.eq(1).css('top', sl.hue.maxTop * (1 - this.color.value.h)).end()
- .eq(2).css('top', sl.alpha.maxTop * (1 - this.color.value.a));
- } else {
- sl = this.options.slidersHorz;
- icns.eq(1).css('left', sl.hue.maxLeft * (1 - this.color.value.h)).end()
- .eq(2).css('left', sl.alpha.maxLeft * (1 - this.color.value.a));
- }
- icns.eq(0).css({
- 'top': sl.saturation.maxTop - this.color.value.b * sl.saturation.maxTop,
- 'left': this.color.value.s * sl.saturation.maxLeft
- });
-
- this.picker.find('.colorpicker-saturation')
- .css('backgroundColor', this.color.toHex(true, this.color.value.h, 1, 1, 1));
-
- this.picker.find('.colorpicker-alpha')
- .css('backgroundColor', this.color.toHex(true));
-
- this.picker.find('.colorpicker-color, .colorpicker-color div')
- .css('backgroundColor', this.color.toString(true, this.format));
-
- return val;
- },
- updateComponent: function(val) {
- var color;
-
- if (typeof val !== 'undefined') {
- color = this.createColor(val);
- } else {
- color = this.color;
- }
-
- if (this.component !== false) {
- var icn = this.component.find('i').eq(0);
- if (icn.length > 0) {
- icn.css({
- 'backgroundColor': color.toString(true, this.format)
- });
- } else {
- this.component.css({
- 'backgroundColor': color.toString(true, this.format)
- });
- }
- }
-
- return color.toString(false, this.format);
- },
- update: function(force) {
- var val;
- if ((this.getValue(false) !== false) || (force === true)) {
- // Update input/data only if the current value is not empty
- val = this.updateComponent();
- this.updateInput(val);
- this.updateData(val);
- this.updatePicker(); // only update picker if value is not empty
- }
- return val;
-
- },
- setValue: function(val) { // set color manually
- this.color = this.createColor(val);
- this.update(true);
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: val
- });
- },
- /**
- * Creates a new color using the instance options
- * @protected
- * @param {String} val
- * @returns {Color}
- */
- createColor: function(val) {
- return new Color(
- val ? val : null,
- this.options.colorSelectors,
- this.options.fallbackColor ? this.options.fallbackColor : this.color,
- this.options.fallbackFormat,
- this.options.hexNumberSignPrefix
- );
- },
- getValue: function(defaultValue) {
- defaultValue = (typeof defaultValue === 'undefined') ? this.options.fallbackColor : defaultValue;
- var val;
- if (this.hasInput()) {
- val = this.input.val();
- } else {
- val = this.element.data('color');
- }
- if ((val === undefined) || (val === '') || (val === null)) {
- // if not defined or empty, return default
- val = defaultValue;
- }
- return val;
- },
- hasInput: function() {
- return (this.input !== false);
- },
- isDisabled: function() {
- return this.disabled;
- },
- disable: function() {
- if (this.hasInput()) {
- this.input.prop('disabled', true);
- }
- this.disabled = true;
- this.element.trigger({
- type: 'disable',
- color: this.color,
- value: this.getValue()
- });
- return true;
- },
- enable: function() {
- if (this.hasInput()) {
- this.input.prop('disabled', false);
- }
- this.disabled = false;
- this.element.trigger({
- type: 'enable',
- color: this.color,
- value: this.getValue()
- });
- return true;
- },
- currentSlider: null,
- mousePointer: {
- left: 0,
- top: 0
- },
- mousedown: function(e) {
- if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {
- e.pageX = e.originalEvent.touches[0].pageX;
- e.pageY = e.originalEvent.touches[0].pageY;
- }
- e.stopPropagation();
- e.preventDefault();
-
- var target = $(e.target);
-
- //detect the slider and set the limits and callbacks
- var zone = target.closest('div');
- var sl = this.options.horizontal ? this.options.slidersHorz : this.options.sliders;
- if (!zone.is('.colorpicker')) {
- if (zone.is('.colorpicker-saturation')) {
- this.currentSlider = $.extend({}, sl.saturation);
- } else if (zone.is('.colorpicker-hue')) {
- this.currentSlider = $.extend({}, sl.hue);
- } else if (zone.is('.colorpicker-alpha')) {
- this.currentSlider = $.extend({}, sl.alpha);
- } else {
- return false;
- }
- var offset = zone.offset();
- //reference to guide's style
- this.currentSlider.guide = zone.find('i')[0].style;
- this.currentSlider.left = e.pageX - offset.left;
- this.currentSlider.top = e.pageY - offset.top;
- this.mousePointer = {
- left: e.pageX,
- top: e.pageY
- };
- //trigger mousemove to move the guide to the current position
- $(window.document).on({
- 'mousemove.colorpicker': $.proxy(this.mousemove, this),
- 'touchmove.colorpicker': $.proxy(this.mousemove, this),
- 'mouseup.colorpicker': $.proxy(this.mouseup, this),
- 'touchend.colorpicker': $.proxy(this.mouseup, this)
- }).trigger('mousemove');
- }
- return false;
- },
- mousemove: function(e) {
- if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {
- e.pageX = e.originalEvent.touches[0].pageX;
- e.pageY = e.originalEvent.touches[0].pageY;
- }
- e.stopPropagation();
- e.preventDefault();
- var left = Math.max(
- 0,
- Math.min(
- this.currentSlider.maxLeft,
- this.currentSlider.left + ((e.pageX || this.mousePointer.left) - this.mousePointer.left)
- )
- );
- var top = Math.max(
- 0,
- Math.min(
- this.currentSlider.maxTop,
- this.currentSlider.top + ((e.pageY || this.mousePointer.top) - this.mousePointer.top)
- )
- );
- this.currentSlider.guide.left = left + 'px';
- this.currentSlider.guide.top = top + 'px';
- if (this.currentSlider.callLeft) {
- this.color[this.currentSlider.callLeft].call(this.color, left / this.currentSlider.maxLeft);
- }
- if (this.currentSlider.callTop) {
- this.color[this.currentSlider.callTop].call(this.color, top / this.currentSlider.maxTop);
- }
- // Change format dynamically
- // Only occurs if user choose the dynamic format by
- // setting option format to false
- if (
- this.options.format === false &&
- (this.currentSlider.callTop === 'setAlpha' ||
- this.currentSlider.callLeft === 'setAlpha')
- ) {
-
- // Converting from hex / rgb to rgba
- if (this.color.value.a !== 1) {
- this.format = 'rgba';
- this.color.origFormat = 'rgba';
- }
-
- // Converting from rgba to hex
- else {
- this.format = 'hex';
- this.color.origFormat = 'hex';
- }
- }
- this.update(true);
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color
- });
- return false;
- },
- mouseup: function(e) {
- e.stopPropagation();
- e.preventDefault();
- $(window.document).off({
- 'mousemove.colorpicker': this.mousemove,
- 'touchmove.colorpicker': this.mousemove,
- 'mouseup.colorpicker': this.mouseup,
- 'touchend.colorpicker': this.mouseup
- });
- return false;
- },
- change: function(e) {
- this.color = this.createColor(this.input.val());
- // Change format dynamically
- // Only occurs if user choose the dynamic format by
- // setting option format to false
- if (this.color.origFormat && this.options.format === false) {
- this.format = this.color.origFormat;
- }
- if (this.getValue(false) !== false) {
- this.updateData();
- this.updateComponent();
- this.updatePicker();
- }
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: this.input.val()
- });
- },
- keyup: function(e) {
- if ((e.keyCode === 38)) {
- if (this.color.value.a < 1) {
- this.color.value.a = Math.round((this.color.value.a + 0.01) * 100) / 100;
- }
- this.update(true);
- } else if ((e.keyCode === 40)) {
- if (this.color.value.a > 0) {
- this.color.value.a = Math.round((this.color.value.a - 0.01) * 100) / 100;
- }
- this.update(true);
- }
-
- this.element.trigger({
- type: 'changeColor',
- color: this.color,
- value: this.input.val()
- });
- }
-};
-
-$.colorpicker = Colorpicker;
-
-$.fn.colorpicker = function(option) {
- var apiArgs = Array.prototype.slice.call(arguments, 1),
- isSingleElement = (this.length === 1),
- returnValue = null;
-
- var $jq = this.each(function() {
- var $this = $(this),
- inst = $this.data('colorpicker'),
- options = ((typeof option === 'object') ? option : {});
-
- if (!inst) {
- inst = new Colorpicker(this, options);
- $this.data('colorpicker', inst);
- }
-
- if (typeof option === 'string') {
- if ($.isFunction(inst[option])) {
- returnValue = inst[option].apply(inst, apiArgs);
- } else { // its a property ?
- if (apiArgs.length) {
- // set property
- inst[option] = apiArgs[0];
- }
- returnValue = inst[option];
- }
- } else {
- returnValue = $this;
- }
- });
- return isSingleElement ? returnValue : $jq;
-};
-
-$.fn.colorpicker.constructor = Colorpicker;
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-defaults.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-defaults.js
deleted file mode 100755
index 5af7bdd37..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-defaults.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Default plugin options
- */
-var defaults = {
- horizontal: false, // horizontal mode layout ?
- inline: false, //forces to show the colorpicker as an inline element
- color: false, //forces a color
- format: false, //forces a format
- input: 'input', // children input selector
- container: false, // container selector
- component: '.add-on, .input-group-addon', // children component selector
- fallbackColor: false, // fallback color value. null = keeps current color.
- fallbackFormat: 'hex', // fallback color format
- hexNumberSignPrefix: true, // put a '#' (number sign) before hex strings
- sliders: {
- saturation: {
- maxLeft: 100,
- maxTop: 100,
- callLeft: 'setSaturation',
- callTop: 'setBrightness'
- },
- hue: {
- maxLeft: 0,
- maxTop: 100,
- callLeft: false,
- callTop: 'setHue'
- },
- alpha: {
- maxLeft: 0,
- maxTop: 100,
- callLeft: false,
- callTop: 'setAlpha'
- }
- },
- slidersHorz: {
- saturation: {
- maxLeft: 100,
- maxTop: 100,
- callLeft: 'setSaturation',
- callTop: 'setBrightness'
- },
- hue: {
- maxLeft: 100,
- maxTop: 0,
- callLeft: 'setHue',
- callTop: false
- },
- alpha: {
- maxLeft: 100,
- maxTop: 0,
- callLeft: 'setAlpha',
- callTop: false
- }
- },
- template: '',
- align: 'right',
- customClass: null, // custom class added to the colorpicker element
- colorSelectors: null // custom color aliases
-};
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-plugin-wrapper.js b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-plugin-wrapper.js
deleted file mode 100755
index 379dc1cdb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/js/colorpicker-plugin-wrapper.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */
-
-(function(root, factory) {
- if (typeof define === 'function' && define.amd) {
- // AMD. Register as an anonymous module unless amdModuleId is set
- define(["jquery"], function(jq) {
- return (factory(jq));
- });
- } else if (typeof exports === 'object') {
- // Node. Does not work with strict CommonJS, but
- // only CommonJS-like environments that support module.exports,
- // like Node.
- module.exports = factory(require("jquery"));
- } else if (jQuery && !jQuery.fn.colorpicker) {
- factory(jQuery);
- }
-}(this, function($) {
- 'use strict';
- //@colorpicker-color
- //@colorpicker-defaults
- //@colorpicker-component
-}));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/less/colorpicker.less b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/less/colorpicker.less
deleted file mode 100755
index 42ed95e04..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/less/colorpicker.less
+++ /dev/null
@@ -1,272 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */
-
-.bgImg(@imgBase64) {
- background-image: url("@{imgBase64}");
-}
-
-.borderRadius(@size) {
- -webkit-border-radius: @size;
- -moz-border-radius: @size;
- border-radius: @size;
-}
-
-.colorpicker-saturation {
- width: 100px;
- height: 100px;
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAQAAADa613fAAAP9klEQVR4XnRWC47rNgwcKjlA0bv2VL1Qi/YELRav7203iS1ppqZoiXCAhuBHVLI74xFtG3/Hz2joIOjRGuR5eMYuRn9YA1fds859KX8ZvczLr9/pImiR3Rqky9/wlajRIdVE/1Rufeu/0No3/ASgBZAJUkwgi0iCaEatekJJoEqiTQncd67/gyOfRCZshTed0Nl8LbLj8D6qxtoq9/7kJz/aH/3Xfu8VwI5+AUH8DxE7gUyiIpZ5LwiGzUqE3CScJsCDQHAsvBnxWpkbC0QMHmBp6latWS0bnvrCN/x1+xPfce+Ij0GAyeAGGz15sOiax2UylPhKrFaMPnVWClwepKh07hdhkVDsK2uoyEIySergjdbY2VBtV8VLr8Mf9mF/4wMb7kR8FOhzFWZZe7HIZD9JRIbee28eJKBweTB6TwjYkAgWaUmtDveGw1Wx3zZ76YlPPfQd/+gTTUFkiGiJ+NQAszU1EPT/QJEgufolAMPkNU4CVOyUIBLg4xglEZHGQnTFOFV0VaulYddBhA986ge/7N/yQi/3flFgwfQq2ibLnTDBRl9TmUHyJASPV/eoN0UISIr+ICQKIFV4EpljSjV1uFVUq9hRtet5e9gXvuyHPW0zMhQxWaoBBa9Tg8vsCEhww23Smd0CKjIkmPIoxWrUBDgJqFCyESF43ctQxLUoHN7Q1KyVhqrNNm3cy2vMyQNPVKjc29Rh5SSU+giWdRJHkLnQG71FQEuNyNGBTDdBQQAKCuGiEUS/jcyGbkMPq931OIzb/dUPGuVlG7f+slqkO5NAAlzTMdcq0NkzmsEBmAQkbI+pSHbiqnuWIA6lijhvqwIxMyWxMGZiPU669XJE1tADDTs2HWpwKxuqdnTpOiOR42xlzLtm3pXGel3xd8/oTs8Xy0MV8GM1RlsC2Y3Wy3wut3M+2mEVux0Gt9fhzTWyLvGiiJYaqY5DWRFIwAiQ5r6gB9GpQihJw4I9j5Mkscj3BnzGjBhv8xna5P1Jo428o6IOPY5KFZtVOkEKqUjqQY9Gi+jrIOFwJUDzRtA9xyoIrGGmkNRmxVAnZoK+TkUIeUYni5wEzgOG5iZX5HCr2JyQNqdk++G0rgb1ochSIGutTj4P7F0PuRUAolmh5sCzAHn1BYyaADh6bgFeoBx6vst091CEvcSLWBBpqGq384jZ5llVHSwEShLx+D4d0mU3D5eEAJQ9KEhOZUYnDENV2qKgmIlQhWfdvcoXYaegPp/n1oKIOgYFqxrzQSciqNhv/5FqPpy6b0UcX2vf13DfWySRSEgkEYlEJJGQSyKJSEQSCYlEEpHexIVO3XOevffze2a+PfPv9x1rne1c3b3Mmlmz9mE++zuzngfnw/E+Dlc4LL4NwHdFy7u3KGPVmZ6/4eeMoDyre3i/KHADIHYO04w9zO0mAotuKnrc7XaPjvu66bNe5cDT7RlPepEnfS2X8dF1/utDvD+OwGDBxEgQywLCvIMYWBY+DShwAAORAdv9PswhDAqOUCi5+71AbFcDMR4xBDNfhySKXPXZ1+Vub+Q1Ltf5z7eC0AjVldHI26rIFdKIAyYBJCFVUhVDwttAnM52B3Ect1TFQXzJ0z33lOuib/QO8g+CuO0gKBRU80A8hkeJ0b1KRQWmFQVSh8mf3lpUpNaRulzN5NArrmKKGMijXgzk7w5ijdFVgT8f1IdFNjVWjDWicUYWEEMmSFDtILdzHW5XueHp7p+yuS54ep5/c5BE2Gw/gWPNYU4/PZaak2VGEsFjSbOf8irea6KQgojGCk0KxZY31tWWgzwayF8N5KYyo3VADVicWWrhwzr3ZqIOa5xW5zbqMPPMiyDURHDIHQTeWq7KFXcQPOqzPOL5Ov/iIDEDy7DHEwx0PTgjO8SS0fOEHcZNMt+XKEFMj8Q4QUSvPu6HPuvd4N9/x12RPwcIVRCAakSOUzHgsUSMFWYzDQ+PiOJqAOuYc9jh5TecnA+xHfFyOYhebeTH89P80wrCJzUjlsx7euIV0g4zQFUSiBPioIWBACFC7GgDj8P91ZSJOQmQP74MAnQo8H5RIe8kZ0kBcQCMAlEpRDiKROBxbR0ksdhWFq0gR9q9uQzkDzuIFQSPqAgRCAsCaVNF2ZAAhxvtzcqcnDk6tpXxSsayqXLIgSOb6zqeH+fvO0i9XEu5EVV+OZehRZJ6BGTeaRhCkTzVIZeAzaWGAFfErIPogQI5CuR3HQQx7DzBB16R3s7e0MBUPedjWutgG/JUTPqMeAQNEiytJRnJearWUgdwFNxN7rtBoECuj/O3BMHaTIxQ0a4GctireElTJHJvLTaalih5kvBCGMvkdESUMAdCFaI4yG8SpDfRWAptqkAJUwCG6B7lOREFSZBqKs57MEHqVJEBwHa2lp0OiKtiQ18gx9P89QrSXyc0vObBM4vPmBADqJZLAo/yzK7qPSZstCy+fDSZlhrm+Zkyjsf5q2otdC14zkLjHLf0me9wjNqQo0B1a6wBJRaIEgC2Qw9oby/cRHA+xHCQy/xlB1HVSV3Y/5yVhsc7dBi2UoIWCMcbELZWgxNCGUZ5y4ceBaLlE8dAfrEosrYT+z8ya3sxXndFBxuQivNGEHFCbLGBlBLKGYHZoeoQpcjtMn/uICPefcxecpuDOEemg9S/44cflZPIlWolyHkLrEpgbS9IQRlAgZgi0WDjsEiPh+PN/Fkogq4GdzPtarlRGW2tJwEK1RMTEvdVdmhAKHO1pdUuGQsVcX+rSfGzDbwGyE8NRPQc83HCaOkTZwPqABZBdFq8zAN1gue0FPO8wYUFBE1WkMwVzM1iQ4BItFh+H36Qy/yJg0DRQICmBl+tbKUC5cCj3yXI+SUFBS78ZAcBtHt+e9lBuiqpTNh9zTvIjzuIWxVYGQJpAZY+VWS3QKh84iSZbwuIdiDpc4KztQa/sjhMaDJEJDSZ8mZ+kCBdC0JpKVNQzZdKu+EsOeFCosrngVAkDS/uy6iGnW7UxmMpkB8FyFKo6iQW8z1HuBdMu1pdkZdB8jWTjlFtNaiJRYniIDcD+eECMqFLS9ED6DgxzCMKnRD3HYYA2uMCJUh70OK8G0EUnJV8lqe8nj84QdqLhdoJskNlEw1ivajM8LtPBhIeN99LESXI9xcQIHFQudHngZjUhXOQeGlUYmAddh5pxMhzV0M1vMAtMFIVmfp6fq+DgEWefjQVenstaqUy3bJQAiVlEihDghCDINFQg8oUhoQPkO8SBEM7SFQ72VYBwPuE7k8uYF5LNwg/TEd2zkuKjIIhTiJRlYrDfNS1QL7DYUcbcCyKJNwOwucVCVSwBBj/DwghXA2hQtACgCBBPprfXkAIFIYRXhONQARFU00Tsh6LEmmQUbkTImMi9me5qaHDIeBgHeRbdxAIqAJBCDSoCNVQglrciqX/ZCD9RRP6rgpBvhmKAFhg2ForBLXBYPtUjj7vCHPe8SXbYAY47gHB9mKeqjjIg/53fmMD0fR9Bug7SFcHI6EA1OC/E8QTL4NgBSGiCiyTChnI1zcQxmyfRZGM6w701KRybDvsIK3LWDx6mxGkcglEZQLkawnCdppZ6sgCh8trWWBUQaUWCEOlOs7HAenFE45QSu9RQQDAqchXNxDq4orQR44qRIFUQvM+mRJuB6GDEixgCbSBQGXghEEbdn1P/zO/QhAWCsWsmRhLa2VFkSZIgSVKmgEQhvk6K8YKMRZl7Dwg4amOUYvFBfLlE4RasOCB5S9PXKq0AqGDMiYIReXF0mYctITWBmqR5F38X5Y7yJfeCtKBzNbWYm5XpsMpf3dRZD3jPDesvdVCOs6KYQXIFw1E4fcE8dHWOepZBXpLJcACWUZVMRZbfvgXR4Ak8A7VVSKSVuu9p6/mFxyE7cOWavtLp952O8huK83+gmHzHaAsVXLgAvl8gPCvHzAFsM8GNXGKPH5cmN02sXTLa8QdKRXMzHv67/k5A9k1UIx36UH/VlWWtuKssNiRapB6BaLXl6MA+ayDcNS3v/sYXgCL620F1kk8QhKAEOvKu4DvajDO5zkHc4fBg76anyEIIcamBPex5EK8AoVHhMW7QAqWrYD1204CJB1hCfOAV/PTBPH0zBmJmsZZKCEaAmdqm4zMcYxYLN0JuHThIAjirAnp3px7TRgD+ZSD/K92M1CNIgbC8Ex7FkSEIlQEEUQEQQQBRBABEUQQEQTx3X0Evap9AhP39jL5OvuzAWuvbDaTTDIzX2aypUCJ0i7nAigoQAk9gUIUSxXEoCFyyVIuL9ZQcMZoArnwr4D0OLS8jGNGTgGnsZQWMYrcOARoIReAALBeWhf+RUCAIEsECFQHLkwR5zj4JW3t5WOUU5djvgQIawD53EDsctmYz8xGaZGPBUR3qNkiGwqDICUYIFpqBgRaayCfFiAWR2wWvoobmzxdF8N5kyxXmvap/sgGcLF/aoBosbG+lE395R8zCA4BqUYgOgYq+HtvBrT0LK15X8lZwx5f9klCX0rdgXzIIGbdhXMqZtHzJhuptEjmsFc4KzmN5IFPtfM7gWw2kPczSIqQSPUDYKYBMamsBCpKphW0iA5H8AbMDPJOQYjLZg1Vk4G49GlCYNYAkdOd0kwRQ8FCyAHydgLZ6Z2AqrVtjDUQ7hCEmrkEooDAsB2YnBCvkBpZ6yBvJpCd7Mn5zJ6C4QF2BUQPgHEIGUrGnHzQ8rlMekBeTyAzwDJksxwM4+w3BY02B8mIl0CmFRm+ZscxAuSnvwqQsECTIGSV6FEoJFTygVuzB5xAsKqBvAQE3+nkVoJDI1BJIaPBWik7ZSu5NIp5A3mRQaTFvLgkO9fVgEgMqqeVfb+p55tijWH+Kea71ubq4v8Sl8089sZKbKEZNq+VUfISJJF7j79WrbYgS994ZEf+nIz0pNFRWqapSmK6P45i3OQuItIiPDyg6RnxZ4D0g+CFPxAzluoRsWsaA6I6JOqVWCisDvJ0BgHTzMSRgMi0vmi8R+sR6tg/XUh7kCc7kMRqSNkTBDx0OkAUegFcMazciBXNpm798R6klXap/WZz49TQwBHqEcj4oCToUPjUuP9lfxcbyKMAwT6bTf1qqIIQDl3i5oCERNmVm0wgW4A8BGRxMX3hWh8bEV5Rvfp4DS5F3djWH2ztDNWKW7OBjgjIwsDWaKRknJjqMsh9QCa1p608lLovFkBE969DYtYelSzwSRcg535vAsFeNU9SzRCYZb4LDmxmFQKkwYGM+5y/G7b1uxMIylLdyE5yxIyYsoXWhQIpzQhYPi3JkJoKkB9+BxD0OMuyOEBe36DgyPSrxscmATldgKj8PxrkA/kA5PYMgkrocwIQ6GSRGmF0VaNqBKQZ5FYDEZSDzFTzq9mBQjAayE1A+ryDTzcQZe0Ibbxj7EwpAmTrJwEimZR9CCPtODhzxuNtY19Zd2Lf/fjCTnEiDAOg62j1utb/dv9mZ/aHCj4AyOHbsW3/As0BTzIgeJU7AAAAAElFTkSuQmCC');
- cursor: crosshair;
- float: left;
- i {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #000;
- .borderRadius(5px);
- position: absolute;
- top: 0;
- left: 0;
- margin: -4px 0 0 -4px;
- b {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #fff;
- .borderRadius(5px);
- }
- }
-}
-
-.colorpicker-hue,
-.colorpicker-alpha {
- width: 15px;
- height: 100px;
- float: left;
- cursor: row-resize;
- margin-left: 4px;
- margin-bottom: 4px;
-}
-
-.colorpicker-hue i,
-.colorpicker-alpha i {
- display: block;
- height: 1px;
- background: #000;
- border-top: 1px solid #fff;
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- margin-top: -1px;
-}
-
-.colorpicker-hue {
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC');
-}
-
-.colorpicker-alpha {
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');
- display: none;
-}
-
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-alpha {
- background-size: contain;
-}
-
-.colorpicker {
- padding: 4px;
- min-width: 130px;
- margin-top: 1px;
- .borderRadius(4px);
- z-index: 2500;
-}
-
-.colorpicker:before,
-.colorpicker:after {
- display: table;
- content: "";
- line-height: 0;
-}
-
-.colorpicker:after {
- clear: both;
-}
-
-.colorpicker:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid #ccc;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
- top: -7px;
- left: 6px;
-}
-
-.colorpicker:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #ffffff;
- position: absolute;
- top: -6px;
- left: 7px;
-}
-
-.colorpicker div {
- position: relative;
-}
-
-.colorpicker.colorpicker-with-alpha {
- min-width: 140px;
-}
-
-.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
- display: block;
-}
-
-.colorpicker-color {
- height: 10px;
- margin-top: 5px;
- clear: both;
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');
- background-position: 0 100%;
-}
-
-.colorpicker-color div {
- height: 10px;
-}
-
-.colorpicker-selectors {
- display: none;
- height: 10px;
- margin-top: 5px;
- clear: both;
-}
-
-.colorpicker-selectors i {
- cursor: pointer;
- float: left;
- height: 10px;
- width: 10px;
-}
-
-.colorpicker-selectors i + i {
- margin-left: 3px;
-}
-
-.colorpicker-element .input-group-addon i,
-.colorpicker-element .add-on i {
- display: inline-block;
- cursor: pointer;
- height: 16px;
- vertical-align: text-top;
- width: 16px;
-}
-
-.colorpicker.colorpicker-inline {
- position: relative;
- display: inline-block;
- float: none;
- z-index: auto;
-}
-
-.colorpicker.colorpicker-horizontal {
- width: 110px;
- min-width: 110px;
- height: auto;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-saturation {
- margin-bottom: 4px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-color {
- width: 100px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- width: 100px;
- height: 15px;
- float: left;
- cursor: col-resize;
- margin-left: 0px;
- margin-bottom: 4px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue i,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
- display: block;
- height: 15px;
- background: #ffffff;
- position: absolute;
- top: 0;
- left: 0;
- width: 1px;
- border: none;
- margin-top: 0px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue {
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==');
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- .bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=');
-}
-
-.colorpicker-right:before {
- left: auto;
- right: 6px;
-}
-
-.colorpicker-right:after {
- left: auto;
- right: 7px;
-}
-
-.colorpicker-no-arrow:before {
- border-right: 0;
- border-left: 0;
-}
-
-.colorpicker-no-arrow:after {
- border-right: 0;
- border-left: 0;
-}
-
-.colorpicker,
-.colorpicker-alpha,
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-selectors {
- &.colorpicker-visible {
- display: block;
- }
-}
-
-.colorpicker,
-.colorpicker-alpha,
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-selectors {
- &.colorpicker-hidden {
- display: none;
- }
-}
-
-.colorpicker-inline.colorpicker-visible {
- display: inline-block;
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/sass/_colorpicker.scss b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/sass/_colorpicker.scss
deleted file mode 100755
index 42b6b33fd..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/src/sass/_colorpicker.scss
+++ /dev/null
@@ -1,272 +0,0 @@
-/*!
- * Bootstrap Colorpicker v2.5.2
- * https://itsjavi.com/bootstrap-colorpicker/
- *
- * Originally written by (c) 2012 Stefan Petre
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0.txt
- *
- */
-
-@mixin bgImg($imgBase64) {
- background-image: url("#{$imgBase64}");
-}
-
-@mixin borderRadius($size) {
- -webkit-border-radius: $size;
- -moz-border-radius: $size;
- border-radius: $size;
-}
-
-.colorpicker-saturation {
- width: 100px;
- height: 100px;
- @include bgImg('data:image/png;base64,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');
- cursor: crosshair;
- float: left;
- i {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #000;
- @include borderRadius(5px);
- position: absolute;
- top: 0;
- left: 0;
- margin: -4px 0 0 -4px;
- b {
- display: block;
- height: 5px;
- width: 5px;
- border: 1px solid #fff;
- @include borderRadius(5px);
- }
- }
-}
-
-.colorpicker-hue,
-.colorpicker-alpha {
- width: 15px;
- height: 100px;
- float: left;
- cursor: row-resize;
- margin-left: 4px;
- margin-bottom: 4px;
-}
-
-.colorpicker-hue i,
-.colorpicker-alpha i {
- display: block;
- height: 1px;
- background: #000;
- border-top: 1px solid #fff;
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- margin-top: -1px;
-}
-
-.colorpicker-hue {
- @include bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC');
-}
-
-.colorpicker-alpha {
- @include bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');
- display: none;
-}
-
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-alpha {
- background-size: contain;
-}
-
-.colorpicker {
- padding: 4px;
- min-width: 130px;
- margin-top: 1px;
- @include borderRadius(4px);
- z-index: 2500;
-}
-
-.colorpicker:before,
-.colorpicker:after {
- display: table;
- content: "";
- line-height: 0;
-}
-
-.colorpicker:after {
- clear: both;
-}
-
-.colorpicker:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid #ccc;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
- top: -7px;
- left: 6px;
-}
-
-.colorpicker:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #ffffff;
- position: absolute;
- top: -6px;
- left: 7px;
-}
-
-.colorpicker div {
- position: relative;
-}
-
-.colorpicker.colorpicker-with-alpha {
- min-width: 140px;
-}
-
-.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
- display: block;
-}
-
-.colorpicker-color {
- height: 10px;
- margin-top: 5px;
- clear: both;
- @include bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=');
- background-position: 0 100%;
-}
-
-.colorpicker-color div {
- height: 10px;
-}
-
-.colorpicker-selectors {
- display: none;
- height: 10px;
- margin-top: 5px;
- clear: both;
-}
-
-.colorpicker-selectors i {
- cursor: pointer;
- float: left;
- height: 10px;
- width: 10px;
-}
-
-.colorpicker-selectors i + i {
- margin-left: 3px;
-}
-
-.colorpicker-element .input-group-addon i,
-.colorpicker-element .add-on i {
- display: inline-block;
- cursor: pointer;
- height: 16px;
- vertical-align: text-top;
- width: 16px;
-}
-
-.colorpicker.colorpicker-inline {
- position: relative;
- display: inline-block;
- float: none;
- z-index: auto;
-}
-
-.colorpicker.colorpicker-horizontal {
- width: 110px;
- min-width: 110px;
- height: auto;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-saturation {
- margin-bottom: 4px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-color {
- width: 100px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- width: 100px;
- height: 15px;
- float: left;
- cursor: col-resize;
- margin-left: 0px;
- margin-bottom: 4px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue i,
-.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
- display: block;
- height: 15px;
- background: #ffffff;
- position: absolute;
- top: 0;
- left: 0;
- width: 1px;
- border: none;
- margin-top: 0px;
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-hue {
- @include bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==');
-}
-
-.colorpicker.colorpicker-horizontal .colorpicker-alpha {
- @include bgImg('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=');
-}
-
-.colorpicker-right:before {
- left: auto;
- right: 6px;
-}
-
-.colorpicker-right:after {
- left: auto;
- right: 7px;
-}
-
-.colorpicker-no-arrow:before {
- border-right: 0;
- border-left: 0;
-}
-
-.colorpicker-no-arrow:after {
- border-right: 0;
- border-left: 0;
-}
-
-.colorpicker,
-.colorpicker-alpha,
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-selectors {
- &.colorpicker-visible {
- display: block;
- }
-}
-
-.colorpicker,
-.colorpicker-alpha,
-.colorpicker-saturation,
-.colorpicker-hue,
-.colorpicker-selectors {
- &.colorpicker-hidden {
- display: none;
- }
-}
-
-.colorpicker-inline.colorpicker-visible {
- display: inline-block;
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/yarn.lock b/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/yarn.lock
deleted file mode 100755
index 37743a480..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-colorpicker/yarn.lock
+++ /dev/null
@@ -1,2362 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-abab@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"
-
-abbrev@1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
-
-acorn-globals@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf"
- dependencies:
- acorn "^4.0.4"
-
-acorn@^4.0.4:
- version "4.0.13"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
-
-ajv@^5.1.0:
- version "5.5.2"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
- dependencies:
- co "^4.6.0"
- fast-deep-equal "^1.0.0"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.3.0"
-
-align-text@^0.1.1, align-text@^0.1.3:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
- dependencies:
- kind-of "^3.0.2"
- longest "^1.0.1"
- repeat-string "^1.5.2"
-
-amdefine@>=0.0.4:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- dependencies:
- color-convert "^1.9.0"
-
-ansi-styles@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-0.2.0.tgz#359ab4b15dcd64ba6d74734b72c36360a9af2c19"
-
-ansi-styles@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178"
-
-argparse@^1.0.2, argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
- dependencies:
- sprintf-js "~1.0.2"
-
-"argparse@~ 0.1.11":
- version "0.1.16"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-0.1.16.tgz#cfd01e0fbba3d6caed049fbd758d40f65196f57c"
- dependencies:
- underscore "~1.7.0"
- underscore.string "~2.4.0"
-
-array-differ@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-0.1.0.tgz#12e2c9b706bed47c8b483b57e487473fb0861f3a"
-
-array-equal@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
-
-array-find-index@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
-
-array-flatten@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-0.0.2.tgz#51b2f144f36fd656f627740a1fd0ad57979ad6c2"
-
-array-last@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/array-last/-/array-last-0.1.0.tgz#da044b5e1524f8a08f99e40553a560a050537e5f"
-
-array-union@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-0.1.0.tgz#ede98088330665e699e1ebf0227cbc6034e627db"
- dependencies:
- array-uniq "^0.1.0"
-
-array-uniq@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-0.1.1.tgz#5861f3ed4e4bb6175597a4e078e8aa78ebe958c7"
-
-asap@~2.0.3:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
-
-asn1@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86"
-
-assemble-handlebars@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/assemble-handlebars/-/assemble-handlebars-0.3.0.tgz#01f2a194e9a640340d7ea1048216b7c2d11879c7"
- dependencies:
- handlebars "^3.0.1"
- handlebars-helpers "^0.5.8"
-
-assert-plus@1.0.0, assert-plus@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
-
-async@^0.9.0:
- version "0.9.2"
- resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
-
-async@^1.5.0, async@^1.5.2, async@~1.5.2:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
-
-async@^2.0.0-rc.3:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610"
- dependencies:
- lodash "^4.17.10"
-
-async@~0.1.22:
- version "0.1.22"
- resolved "https://registry.yarnpkg.com/async/-/async-0.1.22.tgz#0fc1aaa088a0e3ef0ebe2d8831bab0dcf8845061"
-
-async@~0.2.6:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
-
-async@~0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/async/-/async-0.6.2.tgz#41fd038a3812c0a8bc1842ecf08ba63eb0392bef"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
-
-aws-sign2@~0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
-
-aws4@^1.6.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289"
-
-balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
- dependencies:
- tweetnacl "^0.14.3"
-
-bluebird@^3.0.5:
- version "3.5.1"
- resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
-
-body-parser@~1.14.0:
- version "1.14.2"
- resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.14.2.tgz#1015cb1fe2c443858259581db53332f8d0cf50f9"
- dependencies:
- bytes "2.2.0"
- content-type "~1.0.1"
- debug "~2.2.0"
- depd "~1.1.0"
- http-errors "~1.3.1"
- iconv-lite "0.4.13"
- on-finished "~2.3.0"
- qs "5.2.0"
- raw-body "~2.1.5"
- type-is "~1.6.10"
-
-brace-expansion@^1.0.0, brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-browserify-zlib@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d"
- dependencies:
- pako "~0.2.0"
-
-buffer-from@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.0.tgz#87fcaa3a298358e0ade6e442cfce840740d1ad04"
-
-builtin-modules@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
-
-bytes@2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.2.0.tgz#fd35464a403f6f9117c2de3609ecff9cae000588"
-
-bytes@2.4.0:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.4.0.tgz#7d97196f9d5baf7f6935e25985549edd2a6c2339"
-
-camelcase-keys@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
- dependencies:
- camelcase "^2.0.0"
- map-obj "^1.0.0"
-
-camelcase@^1.0.2:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
-
-camelcase@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-
-center-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
- dependencies:
- align-text "^0.1.3"
- lazy-cache "^1.0.3"
-
-chalk@^1.0.0, chalk@^1.1.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
- dependencies:
- ansi-styles "^2.2.1"
- escape-string-regexp "^1.0.2"
- has-ansi "^2.0.0"
- strip-ansi "^3.0.0"
- supports-color "^2.0.0"
-
-chalk@~0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.2.1.tgz#7613e1575145b21386483f7f485aa5ffa8cbd10c"
- dependencies:
- ansi-styles "~0.2.0"
- has-color "~0.1.0"
-
-chalk@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f"
- dependencies:
- ansi-styles "~1.0.0"
- has-color "~0.1.0"
- strip-ansi "~0.1.0"
-
-chalk@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e"
- dependencies:
- ansi-styles "^3.2.1"
- escape-string-regexp "^1.0.5"
- supports-color "^5.3.0"
-
-clean-css@~3.4.2:
- version "3.4.28"
- resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.28.tgz#bf1945e82fc808f55695e6ddeaec01400efd03ff"
- dependencies:
- commander "2.8.x"
- source-map "0.4.x"
-
-cli@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14"
- dependencies:
- exit "0.1.2"
- glob "^7.1.1"
-
-cliui@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
- dependencies:
- center-align "^0.1.1"
- right-align "^0.1.1"
- wordwrap "0.0.2"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
-
-coffee-script@~1:
- version "1.12.7"
- resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.7.tgz#c05dae0cb79591d05b3070a8433a98c9a89ccc53"
-
-coffee-script@~1.3.3:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.3.3.tgz#150d6b4cb522894369efed6a2101c20bc7f4a4f4"
-
-coffeescript@~1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/coffeescript/-/coffeescript-1.10.0.tgz#e7aa8301917ef621b35d8a39f348dcdd1db7e33e"
-
-color-convert@^1.9.0:
- version "1.9.2"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.2.tgz#49881b8fba67df12a96bdf3f56c0aab9e7913147"
- dependencies:
- color-name "1.1.1"
-
-color-name@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689"
-
-colors@~0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc"
-
-colors@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
-
-combined-stream@1.0.6, combined-stream@~1.0.5:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818"
- dependencies:
- delayed-stream "~1.0.0"
-
-commander@2.8.x:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
- dependencies:
- graceful-readlink ">= 1.0.0"
-
-commander@^2.9.0:
- version "2.16.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.16.0.tgz#f16390593996ceb4f3eeb020b31d78528f7f8a50"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-
-concat-stream@^1.4.1:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
- dependencies:
- buffer-from "^1.0.0"
- inherits "^2.0.3"
- readable-stream "^2.2.2"
- typedarray "^0.0.6"
-
-config-chain@~1.1.5:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.11.tgz#aba09747dfbe4c3e70e766a6e41586e1859fc6f2"
- dependencies:
- ini "^1.3.4"
- proto-list "~1.2.1"
-
-console-browserify@1.1.x:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
- dependencies:
- date-now "^0.1.4"
-
-content-type-parser@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7"
-
-content-type@~1.0.1:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
-
-cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
- version "0.3.4"
- resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797"
-
-"cssstyle@>= 0.2.37 < 0.3.0":
- version "0.2.37"
- resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54"
- dependencies:
- cssom "0.3.x"
-
-currently-unhandled@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
- dependencies:
- array-find-index "^1.0.1"
-
-cwd@^0.3.3, cwd@~0.3.3:
- version "0.3.7"
- resolved "https://registry.yarnpkg.com/cwd/-/cwd-0.3.7.tgz#fa6abc188960770f6b136fb198406c8e291fb281"
- dependencies:
- findup-sync "~0.1.3"
- normalize-path "^0.1.1"
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- dependencies:
- assert-plus "^1.0.0"
-
-date-now@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
-
-dateformat@1.0.2-1.2.3:
- version "1.0.2-1.2.3"
- resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.2-1.2.3.tgz#b0220c02de98617433b72851cf47de3df2cdbee9"
-
-dateformat@~1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9"
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.3.0"
-
-debug@~2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
- dependencies:
- ms "0.7.1"
-
-decamelize@^1.0.0, decamelize@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
-
-deep-extend@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
-
-deep-is@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
-
-delims@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/delims/-/delims-0.1.4.tgz#21fe846f16a4056af871a64861a1e160f1a041f7"
- dependencies:
- lodash "~2.4.1"
-
-depd@~1.1.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
-
-dom-serializer@0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82"
- dependencies:
- domelementtype "~1.1.1"
- entities "~1.1.1"
-
-domelementtype@1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2"
-
-domelementtype@~1.1.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
-
-domhandler@2.3:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738"
- dependencies:
- domelementtype "1"
-
-domutils@1.5:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
- dependencies:
- dom-serializer "0"
- domelementtype "1"
-
-ecc-jsbn@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
- dependencies:
- jsbn "~0.1.0"
-
-editorconfig@^0.13.2:
- version "0.13.3"
- resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.13.3.tgz#e5219e587951d60958fd94ea9a9a008cdeff1b34"
- dependencies:
- bluebird "^3.0.5"
- commander "^2.9.0"
- lru-cache "^3.2.0"
- semver "^5.1.0"
- sigmund "^1.0.1"
-
-ee-first@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
-
-entities@1.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26"
-
-entities@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0"
-
-errno@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618"
- dependencies:
- prr "~1.0.1"
-
-error-ex@^1.2.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- dependencies:
- is-arrayish "^0.2.1"
-
-escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5, escape-string-regexp@~1.0.3:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
-
-escodegen@^1.6.1:
- version "1.11.0"
- resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589"
- dependencies:
- esprima "^3.1.3"
- estraverse "^4.2.0"
- esutils "^2.0.2"
- optionator "^0.8.1"
- optionalDependencies:
- source-map "~0.6.1"
-
-esprima@^2.6.0:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
-
-esprima@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
-
-esprima@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
-
-"esprima@~ 1.0.2":
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad"
-
-estraverse@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
-
-esutils@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
-
-eventemitter2@~0.4.13:
- version "0.4.14"
- resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-0.4.14.tgz#8f61b75cde012b2e9eb284d4545583b5643b61ab"
-
-exit@0.1.2, exit@0.1.x, exit@^0.1.2, exit@~0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
-
-extend@~3.0.1:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
-
-extsprintf@1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
-
-extsprintf@^1.2.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
-
-fast-deep-equal@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614"
-
-fast-json-stable-stringify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
-
-fast-levenshtein@~2.0.4:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
-
-faye-websocket@~0.10.0:
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"
- dependencies:
- websocket-driver ">=0.5.1"
-
-figures@^1.0.1:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
- dependencies:
- escape-string-regexp "^1.0.5"
- object-assign "^4.1.0"
-
-"file@>= 0.2.1":
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/file/-/file-0.2.2.tgz#c3dfd8f8cf3535ae455c2b423c2e52635d76b4d3"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-findup-sync@~0.1.2, findup-sync@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.1.3.tgz#7f3e7a97b82392c653bf06589bd85190e93c3683"
- dependencies:
- glob "~3.2.9"
- lodash "~2.4.1"
-
-findup-sync@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.3.0.tgz#37930aa5d816b777c03445e1966cc6790a4c0b16"
- dependencies:
- glob "~5.0.0"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
-
-form-data@~2.3.1:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099"
- dependencies:
- asynckit "^0.4.0"
- combined-stream "1.0.6"
- mime-types "^2.1.12"
-
-fs-utils@^0.4.3:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/fs-utils/-/fs-utils-0.4.3.tgz#641766fe5415d116441dec647698c13d6cf9cf77"
- dependencies:
- async "~0.6.2"
- globule "~0.2.0"
- graceful-fs "~2.0.3"
- js-yaml "~3.0.2"
- lodash "~2.4.1"
- mkdirp "~0.3.5"
- rimraf "~2.2.6"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
-
-gaze@^1.1.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a"
- dependencies:
- globule "^1.0.0"
-
-get-stdin@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
-
-getobject@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/getobject/-/getobject-0.1.0.tgz#047a449789fa160d018f5486ed91320b6ec7885c"
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- dependencies:
- assert-plus "^1.0.0"
-
-glob@^4.0.2:
- version "4.5.3"
- resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f"
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "^2.0.1"
- once "^1.3.0"
-
-glob@^7.0.5, glob@^7.0.6, glob@^7.1.1, glob@~7.1.1:
- version "7.1.2"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@~3, glob@~3.2.7, glob@~3.2.9:
- version "3.2.11"
- resolved "https://registry.yarnpkg.com/glob/-/glob-3.2.11.tgz#4a973f635b9190f715d10987d5c00fd2815ebe3d"
- dependencies:
- inherits "2"
- minimatch "0.3"
-
-glob@~3.1.21:
- version "3.1.21"
- resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd"
- dependencies:
- graceful-fs "~1.2.0"
- inherits "1"
- minimatch "~0.2.11"
-
-glob@~5.0.0:
- version "5.0.15"
- resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1"
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "2 || 3"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@~7.0.0:
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a"
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.2"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-globby@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/globby/-/globby-0.1.1.tgz#cbec63df724b4bea458b79a16cc0e3b1f2ca8620"
- dependencies:
- array-differ "^0.1.0"
- array-union "^0.1.0"
- async "^0.9.0"
- glob "^4.0.2"
-
-globule@^1.0.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d"
- dependencies:
- glob "~7.1.1"
- lodash "~4.17.10"
- minimatch "~3.0.2"
-
-globule@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5"
- dependencies:
- glob "~3.1.21"
- lodash "~1.0.1"
- minimatch "~0.2.11"
-
-globule@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/globule/-/globule-0.2.0.tgz#26b64d10e1edcab6098d8fe00bd2b73cca08a8fb"
- dependencies:
- glob "~3.2.7"
- lodash "~2.4.1"
- minimatch "~0.2.11"
-
-graceful-fs@^4.1.2:
- version "4.1.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
-
-graceful-fs@~1.2.0:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364"
-
-graceful-fs@~2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-2.0.3.tgz#7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0"
-
-"graceful-readlink@>= 1.0.0":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
-
-gray-matter@^0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-0.4.2.tgz#23f190ac9865c9c0adb04d319cc230fab759d708"
- dependencies:
- delims "^0.1.4"
- fs-utils "^0.4.3"
- js-yaml "^3.0.2"
- lodash "^2.4.1"
- verbalize "^0.1.2"
-
-grunt-assemble@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/grunt-assemble/-/grunt-assemble-0.4.0.tgz#529032ec9779d59798fae9de50a95c8a478c55a4"
- dependencies:
- assemble-handlebars "^0.3.0"
- async "^0.9.0"
- gray-matter "^0.4.2"
- inflection "^1.3.6"
- lodash "^2.4.1"
- resolve-dep "^0.4.1"
-
-grunt-cli@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/grunt-cli/-/grunt-cli-1.2.0.tgz#562b119ebb069ddb464ace2845501be97b35b6a8"
- dependencies:
- findup-sync "~0.3.0"
- grunt-known-options "~1.1.0"
- nopt "~3.0.6"
- resolve "~1.1.0"
-
-grunt-combine@~0.8.3:
- version "0.8.3"
- resolved "https://registry.yarnpkg.com/grunt-combine/-/grunt-combine-0.8.3.tgz#5c3da21aa5c7664ad0068bf468a388ec75b84560"
- dependencies:
- underscore "1.4.x"
-
-grunt-contrib-clean@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-clean/-/grunt-contrib-clean-1.0.0.tgz#6b2ed94117e2c7ffe32ee04578c96fe4625a9b6d"
- dependencies:
- async "^1.5.2"
- rimraf "^2.5.1"
-
-grunt-contrib-cssmin@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/grunt-contrib-cssmin/-/grunt-contrib-cssmin-1.0.2.tgz#1734cbd3d84ca7364758b7e58ff18e52aa60bb76"
- dependencies:
- chalk "^1.0.0"
- clean-css "~3.4.2"
- maxmin "^1.1.0"
-
-grunt-contrib-jshint@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-jshint/-/grunt-contrib-jshint-1.0.0.tgz#30f405a51de656bfa6eb029b9a464b9fe02a402a"
- dependencies:
- chalk "^1.1.1"
- hooker "^0.2.3"
- jshint "~2.9.1"
-
-grunt-contrib-less@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-less/-/grunt-contrib-less-1.2.0.tgz#72268e935e8eca73c2dfd515d0bdb97dfbd76295"
- dependencies:
- async "^0.9.0"
- chalk "^1.0.0"
- less "~2.6.0"
- lodash "^3.2.0"
-
-grunt-contrib-uglify@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/grunt-contrib-uglify/-/grunt-contrib-uglify-1.0.2.tgz#ae67a46f9153edd4cb11813a55eb69c70d7db2fb"
- dependencies:
- chalk "^1.0.0"
- lodash "^4.0.1"
- maxmin "^1.1.0"
- uglify-js "~2.6.2"
- uri-path "^1.0.0"
-
-grunt-contrib-watch@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/grunt-contrib-watch/-/grunt-contrib-watch-1.0.1.tgz#ca65934b6e04dbd26da684d598f79ee22f47fdac"
- dependencies:
- async "^1.5.0"
- gaze "^1.1.0"
- lodash "^4.0.0"
- tiny-lr "^0.2.1"
-
-grunt-jsbeautifier@~0.2.10:
- version "0.2.13"
- resolved "https://registry.yarnpkg.com/grunt-jsbeautifier/-/grunt-jsbeautifier-0.2.13.tgz#f3d41738fcb5f9984ef296d5beebc40489105642"
- dependencies:
- async "^2.0.0-rc.3"
- grunt ">=0.4.1"
- js-beautify ">=1.4.2"
- lodash ">=2.4.1"
- rc ">=0.5.5"
- semver ">=4.3.1"
- underscore.string ">=2.3.3"
-
-grunt-known-options@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/grunt-known-options/-/grunt-known-options-1.1.0.tgz#a4274eeb32fa765da5a7a3b1712617ce3b144149"
-
-grunt-legacy-log-utils@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz#c0706b9dd9064e116f36f23fe4e6b048672c0f7e"
- dependencies:
- colors "~0.6.2"
- lodash "~2.4.1"
- underscore.string "~2.3.3"
-
-grunt-legacy-log-utils@~2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz#d2f442c7c0150065d9004b08fd7410d37519194e"
- dependencies:
- chalk "~2.4.1"
- lodash "~4.17.10"
-
-grunt-legacy-log@~0.1.0:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz#ec29426e803021af59029f87d2f9cd7335a05531"
- dependencies:
- colors "~0.6.2"
- grunt-legacy-log-utils "~0.1.1"
- hooker "~0.2.3"
- lodash "~2.4.1"
- underscore.string "~2.3.3"
-
-grunt-legacy-log@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz#c8cd2c6c81a4465b9bbf2d874d963fef7a59ffb9"
- dependencies:
- colors "~1.1.2"
- grunt-legacy-log-utils "~2.0.0"
- hooker "~0.2.3"
- lodash "~4.17.5"
-
-grunt-legacy-util@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz#93324884dbf7e37a9ff7c026dff451d94a9e554b"
- dependencies:
- async "~0.1.22"
- exit "~0.1.1"
- getobject "~0.1.0"
- hooker "~0.2.3"
- lodash "~0.9.2"
- underscore.string "~2.2.1"
- which "~1.0.5"
-
-grunt-legacy-util@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz#e10624e7c86034e5b870c8a8616743f0a0845e42"
- dependencies:
- async "~1.5.2"
- exit "~0.1.1"
- getobject "~0.1.0"
- hooker "~0.2.3"
- lodash "~4.17.10"
- underscore.string "~3.3.4"
- which "~1.3.0"
-
-grunt-strip-code@^1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/grunt-strip-code/-/grunt-strip-code-1.0.6.tgz#d4ece56d87f652153ad50d16f85c80e2436d2f85"
- dependencies:
- array-last "~0.1.0"
- escape-string-regexp "~1.0.3"
-
-grunt@>=0.4.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/grunt/-/grunt-1.0.3.tgz#b3c99260c51d1b42835766e796527b60f7bba374"
- dependencies:
- coffeescript "~1.10.0"
- dateformat "~1.0.12"
- eventemitter2 "~0.4.13"
- exit "~0.1.1"
- findup-sync "~0.3.0"
- glob "~7.0.0"
- grunt-cli "~1.2.0"
- grunt-known-options "~1.1.0"
- grunt-legacy-log "~2.0.0"
- grunt-legacy-util "~1.1.1"
- iconv-lite "~0.4.13"
- js-yaml "~3.5.2"
- minimatch "~3.0.2"
- mkdirp "~0.5.1"
- nopt "~3.0.6"
- path-is-absolute "~1.0.0"
- rimraf "~2.6.2"
-
-grunt@~0.4.5:
- version "0.4.5"
- resolved "https://registry.yarnpkg.com/grunt/-/grunt-0.4.5.tgz#56937cd5194324adff6d207631832a9d6ba4e7f0"
- dependencies:
- async "~0.1.22"
- coffee-script "~1.3.3"
- colors "~0.6.2"
- dateformat "1.0.2-1.2.3"
- eventemitter2 "~0.4.13"
- exit "~0.1.1"
- findup-sync "~0.1.2"
- getobject "~0.1.0"
- glob "~3.1.21"
- grunt-legacy-log "~0.1.0"
- grunt-legacy-util "~0.2.0"
- hooker "~0.2.3"
- iconv-lite "~0.2.11"
- js-yaml "~2.0.5"
- lodash "~0.9.2"
- minimatch "~0.2.12"
- nopt "~1.0.10"
- rimraf "~2.2.8"
- underscore.string "~2.2.1"
- which "~1.0.5"
-
-gzip-size@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-1.0.0.tgz#66cf8b101047227b95bace6ea1da0c177ed5c22f"
- dependencies:
- browserify-zlib "^0.1.4"
- concat-stream "^1.4.1"
-
-handlebars-helpers@^0.5.8:
- version "0.5.8"
- resolved "https://registry.yarnpkg.com/handlebars-helpers/-/handlebars-helpers-0.5.8.tgz#fcca0368ddde97599138360688eba5a14cf0413a"
- dependencies:
- handlebars "~1.3.0"
- highlight.js "~7.4.0"
- iconv-lite "~0.2.11"
- js-yaml "~2.1.3"
- lodash "~2.2.1"
- marked "~0.2.10"
- matchdep "~0.3.0"
- matchkeys "~0.1.3"
- minimatch "~0.2.12"
- nap "~0.7.11"
- sort-object "0.0.5"
- to "~0.2.9"
-
-handlebars@^3.0.1:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-3.0.3.tgz#0e09651a2f0fb3c949160583710d551f92e6d2ad"
- dependencies:
- optimist "^0.6.1"
- source-map "^0.1.40"
- optionalDependencies:
- uglify-js "~2.3"
-
-handlebars@~1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-1.3.0.tgz#9e9b130a93e389491322d975cf3ec1818c37ce34"
- dependencies:
- optimist "~0.3"
- optionalDependencies:
- uglify-js "~2.3"
-
-"handy@>= 0.0.11":
- version "0.0.13"
- resolved "https://registry.yarnpkg.com/handy/-/handy-0.0.13.tgz#825b38d3ed28cc9fabb06957588b4a89433c8467"
-
-har-schema@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
-
-har-validator@~5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd"
- dependencies:
- ajv "^5.1.0"
- har-schema "^2.0.0"
-
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- dependencies:
- ansi-regex "^2.0.0"
-
-has-color@~0.1.0:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f"
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
-
-highlight.js@~7.4.0:
- version "7.4.0"
- resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-7.4.0.tgz#d7ca6a25e39b4c42b424af75372e611638897a90"
-
-hooker@^0.2.3, hooker@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/hooker/-/hooker-0.2.3.tgz#b834f723cc4a242aa65963459df6d984c5d3d959"
-
-hosted-git-info@^2.1.4:
- version "2.7.1"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
-
-html-encoding-sniffer@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8"
- dependencies:
- whatwg-encoding "^1.0.1"
-
-htmlparser2@3.8.x:
- version "3.8.3"
- resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068"
- dependencies:
- domelementtype "1"
- domhandler "2.3"
- domutils "1.5"
- entities "1.0"
- readable-stream "1.1"
-
-"htmlparser@>= 1.7.6":
- version "1.7.7"
- resolved "https://registry.yarnpkg.com/htmlparser/-/htmlparser-1.7.7.tgz#19e7b3997ff6fbac99ae5a7d2766489efe7e2d0e"
-
-http-errors@~1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.3.1.tgz#197e22cdebd4198585e8694ef6786197b91ed942"
- dependencies:
- inherits "~2.0.1"
- statuses "1"
-
-http-parser-js@>=0.4.0:
- version "0.4.13"
- resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.13.tgz#3bd6d6fde6e3172c9334c3b33b6c193d80fe1137"
-
-http-signature@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
- dependencies:
- assert-plus "^1.0.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-iconv-lite@0.4.13:
- version "0.4.13"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2"
-
-iconv-lite@0.4.19:
- version "0.4.19"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
-
-iconv-lite@~0.2.11:
- version "0.2.11"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.2.11.tgz#1ce60a3a57864a292d1321ff4609ca4bb965adc8"
-
-iconv-lite@~0.4.13:
- version "0.4.23"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63"
- dependencies:
- safer-buffer ">= 2.1.2 < 3"
-
-image-size@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.4.0.tgz#d4b4e1f61952e4cbc1cea9a6b0c915fecb707510"
-
-indent-string@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
- dependencies:
- repeating "^2.0.0"
-
-inflection@^1.3.6:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416"
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b"
-
-inherits@2, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-
-ini@^1.3.4, ini@~1.3.0:
- version "1.3.5"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
-
-is-buffer@^1.1.5:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
-
-is-builtin-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
- dependencies:
- builtin-modules "^1.0.0"
-
-is-finite@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- dependencies:
- number-is-nan "^1.0.0"
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
-
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
-
-isarray@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
-
-isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
-
-isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
-
-jasmine-core@~2.99.0:
- version "2.99.1"
- resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.99.1.tgz#e6400df1e6b56e130b61c4bcd093daa7f6e8ca15"
-
-jasmine@^2.6.0:
- version "2.99.0"
- resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.99.0.tgz#8ca72d102e639b867c6489856e0e18a9c7aa42b7"
- dependencies:
- exit "^0.1.2"
- glob "^7.0.6"
- jasmine-core "~2.99.0"
-
-jquery@>=1.10:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.3.1.tgz#958ce29e81c9790f31be7792df5d4d95fc57fbca"
-
-js-beautify@>=1.4.2:
- version "1.7.5"
- resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.7.5.tgz#69d9651ef60dbb649f65527b53674950138a7919"
- dependencies:
- config-chain "~1.1.5"
- editorconfig "^0.13.2"
- mkdirp "~0.5.0"
- nopt "~3.0.1"
-
-"js-yaml@>= 1.0.2", js-yaml@^3.0.2:
- version "3.12.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1"
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-js-yaml@~2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-2.0.5.tgz#a25ae6509999e97df278c6719da11bd0687743a8"
- dependencies:
- argparse "~ 0.1.11"
- esprima "~ 1.0.2"
-
-js-yaml@~2.1.3:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-2.1.3.tgz#0ffb5617be55525878063d7a16aee7fdd282e84c"
- dependencies:
- argparse "~ 0.1.11"
- esprima "~ 1.0.2"
-
-js-yaml@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.0.2.tgz#9937865f8e897a5e894e73c2c5cf2e89b32eb771"
- dependencies:
- argparse "~ 0.1.11"
- esprima "~ 1.0.2"
-
-js-yaml@~3.5.2:
- version "3.5.5"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.5.5.tgz#0377c38017cabc7322b0d1fbcd25a491641f2fbe"
- dependencies:
- argparse "^1.0.2"
- esprima "^2.6.0"
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
-
-jsdom@^10.1.0:
- version "10.1.0"
- resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-10.1.0.tgz#7765e00fd5c3567f34985a1c86ff466a61dacc6a"
- dependencies:
- abab "^1.0.3"
- acorn "^4.0.4"
- acorn-globals "^3.1.0"
- array-equal "^1.0.0"
- content-type-parser "^1.0.1"
- cssom ">= 0.3.2 < 0.4.0"
- cssstyle ">= 0.2.37 < 0.3.0"
- escodegen "^1.6.1"
- html-encoding-sniffer "^1.0.1"
- nwmatcher ">= 1.3.9 < 2.0.0"
- parse5 "^1.5.1"
- pn "^1.0.0"
- request "^2.79.0"
- request-promise-native "^1.0.3"
- sax "^1.2.1"
- symbol-tree "^3.2.1"
- tough-cookie "^2.3.2"
- webidl-conversions "^4.0.0"
- whatwg-encoding "^1.0.1"
- whatwg-url "^4.3.0"
- xml-name-validator "^2.0.1"
-
-jshint@~2.9.1:
- version "2.9.5"
- resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.9.5.tgz#1e7252915ce681b40827ee14248c46d34e9aa62c"
- dependencies:
- cli "~1.0.0"
- console-browserify "1.1.x"
- exit "0.1.x"
- htmlparser2 "3.8.x"
- lodash "3.7.x"
- minimatch "~3.0.2"
- shelljs "0.3.x"
- strip-json-comments "1.0.x"
-
-json-schema-traverse@^0.3.0:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
-
-json-schema@0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
-
-json-stringify-safe@~5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
-
-jsprim@^1.2.2:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.3.0"
- json-schema "0.2.3"
- verror "1.10.0"
-
-kind-of@^3.0.2:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
- dependencies:
- is-buffer "^1.1.5"
-
-lazy-cache@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
-
-less@~2.6.0:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/less/-/less-2.6.1.tgz#658e01ec9ac3149959c6b6dfbcfbc0a170afda7a"
- optionalDependencies:
- errno "^0.1.1"
- graceful-fs "^4.1.2"
- image-size "~0.4.0"
- mime "^1.2.11"
- mkdirp "^0.5.0"
- promise "^7.1.1"
- request "^2.51.0"
- source-map "^0.5.3"
-
-levn@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
- dependencies:
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
-
-livereload-js@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.3.0.tgz#c3ab22e8aaf5bf3505d80d098cbad67726548c9a"
-
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
-load-pkg@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/load-pkg/-/load-pkg-0.1.0.tgz#5910061fc132e4fdfb17b92ab3708543075e9c7b"
- dependencies:
- cwd "~0.3.3"
-
-lodash@3.7.x:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.7.0.tgz#3678bd8ab995057c07ade836ed2ef087da811d45"
-
-lodash@>=2.4.1, lodash@^4.0.0, lodash@^4.0.1, lodash@^4.13.1, lodash@^4.17.10, lodash@~4.17.10, lodash@~4.17.5:
- version "4.17.10"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7"
-
-lodash@^2.4.1, lodash@~2.4.1:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.4.2.tgz#fadd834b9683073da179b3eae6d9c0d15053f73e"
-
-lodash@^3.2.0:
- version "3.10.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
-
-lodash@~0.9.2:
- version "0.9.2"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-0.9.2.tgz#8f3499c5245d346d682e5b0d3b40767e09f1a92c"
-
-lodash@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551"
-
-lodash@~1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.3.1.tgz#a4663b53686b895ff074e2ba504dfb76a8e2b770"
-
-lodash@~2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.2.1.tgz#ca935fd14ab3c0c872abacf198b9cda501440867"
-
-longest@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
-
-loud-rejection@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
- dependencies:
- currently-unhandled "^0.4.1"
- signal-exit "^3.0.0"
-
-lru-cache@2:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952"
-
-lru-cache@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee"
- dependencies:
- pseudomap "^1.0.1"
-
-map-obj@^1.0.0, map-obj@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
-
-marked@~0.2.10:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/marked/-/marked-0.2.10.tgz#d5fd68271caae61c55d291d07bd5034cff5e73ee"
-
-matchdep@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-0.1.2.tgz#2f539f081d069f3205a31e6153739bfd13c662c6"
- dependencies:
- minimatch "~0.2.9"
-
-matchdep@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-0.3.0.tgz#428e649ce5c2818d220e0463eff5c0de9e59d52e"
- dependencies:
- findup-sync "~0.1.2"
- globule "~0.1.0"
- resolve "~0.5.1"
- stack-trace "0.0.7"
-
-matchkeys@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/matchkeys/-/matchkeys-0.1.3.tgz#ea82d4e182cc3c305a00105debee07a99b82781e"
- dependencies:
- chalk "~0.2.1"
- lodash "~1.3.1"
- matchdep "~0.1.2"
- resolve-dep "~0.1.3"
-
-maxmin@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/maxmin/-/maxmin-1.1.0.tgz#71365e84a99dd8f8b3f7d5fde2f00d1e7f73be61"
- dependencies:
- chalk "^1.0.0"
- figures "^1.0.1"
- gzip-size "^1.0.0"
- pretty-bytes "^1.0.0"
-
-media-typer@0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
-
-meow@^3.1.0, meow@^3.3.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
- dependencies:
- camelcase-keys "^2.0.0"
- decamelize "^1.1.2"
- loud-rejection "^1.0.0"
- map-obj "^1.0.1"
- minimist "^1.1.3"
- normalize-package-data "^2.3.4"
- object-assign "^4.0.1"
- read-pkg-up "^1.0.1"
- redent "^1.0.0"
- trim-newlines "^1.0.0"
-
-mime-db@~1.35.0:
- version "1.35.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.35.0.tgz#0569d657466491283709663ad379a99b90d9ab47"
-
-mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18:
- version "2.1.19"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.19.tgz#71e464537a7ef81c15f2db9d97e913fc0ff606f0"
- dependencies:
- mime-db "~1.35.0"
-
-mime@^1.2.11:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
-
-minimatch@0.3, minimatch@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.3.0.tgz#275d8edaac4f1bb3326472089e7949c8394699dd"
- dependencies:
- lru-cache "2"
- sigmund "~1.0.0"
-
-"minimatch@2 || 3", minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- dependencies:
- brace-expansion "^1.1.7"
-
-minimatch@^2.0.1:
- version "2.0.10"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7"
- dependencies:
- brace-expansion "^1.0.0"
-
-minimatch@~0.2.11, minimatch@~0.2.12, minimatch@~0.2.9:
- version "0.2.14"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a"
- dependencies:
- lru-cache "2"
- sigmund "~1.0.0"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-
-minimist@^1.1.3, minimist@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-
-minimist@~0.0.1:
- version "0.0.10"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
-
-"mkdirp@>= 0.3.4", mkdirp@^0.5.0, mkdirp@~0.5.0, mkdirp@~0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- dependencies:
- minimist "0.0.8"
-
-mkdirp@~0.3.5:
- version "0.3.5"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7"
-
-ms@0.7.1:
- version "0.7.1"
- resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
-
-multimatch@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-0.3.0.tgz#603dbc3fe3281d338094a1e1b93a8b5f2be038da"
- dependencies:
- array-differ "^0.1.0"
- array-union "^0.1.0"
- minimatch "^0.3.0"
-
-nap@~0.7.11:
- version "0.7.21"
- resolved "https://registry.yarnpkg.com/nap/-/nap-0.7.21.tgz#2599132d43330a6408d4085f4dadf0e81bce5289"
- dependencies:
- coffee-script "~1"
- file ">= 0.2.1"
- glob "~3"
- mkdirp ">= 0.3.4"
- rimraf "~2"
- sqwish ">= 0.2.0"
- uglify-js "~2"
- underscore "~1"
- underscore.string "~2"
-
-nopt@~1.0.10:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee"
- dependencies:
- abbrev "1"
-
-nopt@~3.0.1, nopt@~3.0.6:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
- dependencies:
- abbrev "1"
-
-normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
- dependencies:
- hosted-git-info "^2.1.4"
- is-builtin-module "^1.0.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-normalize-path@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-0.1.1.tgz#6c701248fdb9896d1fee1aa6620da77feed4d367"
-
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
-
-"nwmatcher@>= 1.3.9 < 2.0.0":
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.4.tgz#2285631f34a95f0d0395cd900c96ed39b58f346e"
-
-oauth-sign@~0.8.2:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-
-object-assign@^4.0.1, object-assign@^4.1.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-
-on-finished@~2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
- dependencies:
- ee-first "1.1.1"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- dependencies:
- wrappy "1"
-
-"optimist@>= 0.3.5", optimist@^0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
- dependencies:
- minimist "~0.0.1"
- wordwrap "~0.0.2"
-
-optimist@~0.3, optimist@~0.3.5:
- version "0.3.7"
- resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9"
- dependencies:
- wordwrap "~0.0.2"
-
-optionator@^0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
- dependencies:
- deep-is "~0.1.3"
- fast-levenshtein "~2.0.4"
- levn "~0.3.0"
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
- wordwrap "~1.0.0"
-
-pako@~0.2.0:
- version "0.2.9"
- resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- dependencies:
- error-ex "^1.2.0"
-
-parse5@^1.5.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94"
-
-parseurl@~1.3.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3"
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-is-absolute@^1.0.0, path-is-absolute@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-performance-now@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
-
-pn@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
-
-prelude-ls@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
-
-pretty-bytes@^1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84"
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.1.0"
-
-process-nextick-args@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
-
-promise@^7.1.1:
- version "7.3.1"
- resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
- dependencies:
- asap "~2.0.3"
-
-proto-list@~1.2.1:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
-
-prr@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
-
-pseudomap@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
-
-psl@^1.1.24:
- version "1.1.28"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.28.tgz#4fb6ceb08a1e2214d4fd4de0ca22dae13740bc7b"
-
-punycode@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
-
-qs@5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-5.2.0.tgz#a9f31142af468cb72b25b30136ba2456834916be"
-
-qs@~5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-5.1.0.tgz#4d932e5c7ea411cca76a312d39a606200fd50cd9"
-
-qs@~6.5.1:
- version "6.5.2"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
-
-raw-body@~2.1.5:
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.1.7.tgz#adfeace2e4fb3098058014d08c072dcc59758774"
- dependencies:
- bytes "2.4.0"
- iconv-lite "0.4.13"
- unpipe "1.0.0"
-
-rc@>=0.5.5:
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
- dependencies:
- deep-extend "^0.6.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
-readable-stream@1.1:
- version "1.1.13"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-readable-stream@^2.2.2:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~2.0.0"
- safe-buffer "~5.1.1"
- string_decoder "~1.1.1"
- util-deprecate "~1.0.1"
-
-redent@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
- dependencies:
- indent-string "^2.1.0"
- strip-indent "^1.0.1"
-
-repeat-string@^1.5.2:
- version "1.6.1"
- resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
-
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- dependencies:
- is-finite "^1.0.0"
-
-request-promise-core@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6"
- dependencies:
- lodash "^4.13.1"
-
-request-promise-native@^1.0.3:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5"
- dependencies:
- request-promise-core "1.1.1"
- stealthy-require "^1.1.0"
- tough-cookie ">=2.3.3"
-
-request@^2.51.0, request@^2.79.0:
- version "2.87.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e"
- dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.6.0"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.1"
- forever-agent "~0.6.1"
- form-data "~2.3.1"
- har-validator "~5.0.3"
- http-signature "~1.2.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.17"
- oauth-sign "~0.8.2"
- performance-now "^2.1.0"
- qs "~6.5.1"
- safe-buffer "^5.1.1"
- tough-cookie "~2.3.3"
- tunnel-agent "^0.6.0"
- uuid "^3.1.0"
-
-resolve-dep@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/resolve-dep/-/resolve-dep-0.4.1.tgz#9af7a87ad38db4cb19206ce61ab2a5bc40ce482c"
- dependencies:
- array-flatten "0.0.2"
- cwd "^0.3.3"
- globby "^0.1.1"
- load-pkg "^0.1.0"
- multimatch "^0.3.0"
- normalize-path "^0.1.1"
- resolve "^0.6.3"
- xtend "^3.0.0"
-
-resolve-dep@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/resolve-dep/-/resolve-dep-0.1.3.tgz#e088a32c694bad29c6d695f05ba45434f6375d98"
- dependencies:
- lodash "~1.3.1"
- matchdep "~0.1.2"
-
-resolve@^0.6.3:
- version "0.6.3"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46"
-
-resolve@~0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.5.1.tgz#15e4a222c4236bcd4cf85454412c2d0fb6524576"
-
-resolve@~1.1.0:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
-
-right-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
- dependencies:
- align-text "^0.1.1"
-
-rimraf@^2.5.1, rimraf@~2, rimraf@~2.6.2:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
- dependencies:
- glob "^7.0.5"
-
-rimraf@~2.2.6, rimraf@~2.2.8:
- version "2.2.8"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582"
-
-safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
-
-"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
-
-sax@^1.2.1:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
-
-"semver@2 || 3 || 4 || 5", semver@>=4.3.1, semver@^5.1.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
-
-shelljs@0.3.x:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1"
-
-sigmund@^1.0.1, sigmund@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
-
-signal-exit@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
-
-sort-object@0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/sort-object/-/sort-object-0.0.5.tgz#68ab32b9ee2e0d020e37359720084d4855bc8a4f"
- dependencies:
- lodash "~2.2.1"
-
-source-map@0.4.x:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@^0.1.40, source-map@~0.1.7:
- version "0.1.43"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@^0.5.3, source-map@~0.5.1:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-
-source-map@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
-
-spdx-correct@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82"
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9"
-
-spdx-expression-parse@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87"
-
-sprintf-js@^1.0.3:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c"
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
-
-"sqwish@>= 0.2.0":
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/sqwish/-/sqwish-0.2.2.tgz#00fe2668104f1228b5bb7ee739ef60121bbcb057"
-
-sshpk@^1.7.0:
- version "1.14.2"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98"
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- dashdash "^1.12.0"
- getpass "^0.1.1"
- safer-buffer "^2.0.2"
- optionalDependencies:
- bcrypt-pbkdf "^1.0.0"
- ecc-jsbn "~0.1.1"
- jsbn "~0.1.0"
- tweetnacl "~0.14.0"
-
-stack-trace@0.0.7:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.7.tgz#c72e089744fc3659f508cdce3621af5634ec0fff"
-
-statuses@1:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c"
-
-stealthy-require@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
-
-string_decoder@~0.10.x:
- version "0.10.31"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
-
-string_decoder@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
- dependencies:
- safe-buffer "~5.1.0"
-
-strip-ansi@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- dependencies:
- ansi-regex "^2.0.0"
-
-strip-ansi@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991"
-
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- dependencies:
- is-utf8 "^0.2.0"
-
-strip-indent@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
- dependencies:
- get-stdin "^4.0.1"
-
-strip-json-comments@1.0.x:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
-
-strip-json-comments@~2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
-
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-
-supports-color@^5.3.0:
- version "5.4.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54"
- dependencies:
- has-flag "^3.0.0"
-
-symbol-tree@^3.2.1:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6"
-
-tiny-lr@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-0.2.1.tgz#b3fdba802e5d56a33c2f6f10794b32e477ac729d"
- dependencies:
- body-parser "~1.14.0"
- debug "~2.2.0"
- faye-websocket "~0.10.0"
- livereload-js "^2.2.0"
- parseurl "~1.3.0"
- qs "~5.1.0"
-
-to@~0.2.9:
- version "0.2.9"
- resolved "https://registry.yarnpkg.com/to/-/to-0.2.9.tgz#0ba5a56fe53538db9205ceb6d7ed217aae4635c4"
- dependencies:
- handy ">= 0.0.11"
- htmlparser ">= 1.7.6"
- js-yaml ">= 1.0.2"
- optimist ">= 0.3.5"
- underscore ">= 1.4.0"
-
-tough-cookie@>=2.3.3, tough-cookie@^2.3.2:
- version "2.4.3"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
- dependencies:
- psl "^1.1.24"
- punycode "^1.4.1"
-
-tough-cookie@~2.3.3:
- version "2.3.4"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655"
- dependencies:
- punycode "^1.4.1"
-
-tr46@~0.0.3:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
-
-trim-newlines@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
-
-tunnel-agent@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
- dependencies:
- safe-buffer "^5.0.1"
-
-tweetnacl@^0.14.3, tweetnacl@~0.14.0:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
-
-type-check@~0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
- dependencies:
- prelude-ls "~1.1.2"
-
-type-is@~1.6.10:
- version "1.6.16"
- resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194"
- dependencies:
- media-typer "0.3.0"
- mime-types "~2.1.18"
-
-typedarray@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
-
-uglify-js@~2:
- version "2.8.29"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
- dependencies:
- source-map "~0.5.1"
- yargs "~3.10.0"
- optionalDependencies:
- uglify-to-browserify "~1.0.0"
-
-uglify-js@~2.3:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.3.6.tgz#fa0984770b428b7a9b2a8058f46355d14fef211a"
- dependencies:
- async "~0.2.6"
- optimist "~0.3.5"
- source-map "~0.1.7"
-
-uglify-js@~2.6.2:
- version "2.6.4"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf"
- dependencies:
- async "~0.2.6"
- source-map "~0.5.1"
- uglify-to-browserify "~1.0.0"
- yargs "~3.10.0"
-
-uglify-to-browserify@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
-
-underscore.string@>=2.3.3, underscore.string@~3.3.4:
- version "3.3.4"
- resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.4.tgz#2c2a3f9f83e64762fdc45e6ceac65142864213db"
- dependencies:
- sprintf-js "^1.0.3"
- util-deprecate "^1.0.2"
-
-underscore.string@~2, underscore.string@~2.4.0:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.4.0.tgz#8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b"
-
-underscore.string@~2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.2.1.tgz#d7c0fa2af5d5a1a67f4253daee98132e733f0f19"
-
-underscore.string@~2.3.3:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.3.3.tgz#71c08bf6b428b1133f37e78fa3a21c82f7329b0d"
-
-underscore@1.4.x:
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
-
-"underscore@>= 1.4.0", underscore@~1:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961"
-
-underscore@~1.7.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209"
-
-unpipe@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
-
-uri-path@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/uri-path/-/uri-path-1.0.0.tgz#9747f018358933c31de0fccfd82d138e67262e32"
-
-util-deprecate@^1.0.2, util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
-
-uuid@^3.1.0:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
-
-validate-npm-package-license@^3.0.1:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338"
- dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
-
-verbalize@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/verbalize/-/verbalize-0.1.2.tgz#165fda4640331548f8e990b1d7e14395eb720207"
- dependencies:
- chalk "~0.4.0"
-
-verror@1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
- dependencies:
- assert-plus "^1.0.0"
- core-util-is "1.0.2"
- extsprintf "^1.2.0"
-
-webidl-conversions@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
-
-webidl-conversions@^4.0.0:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
-
-websocket-driver@>=0.5.1:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb"
- dependencies:
- http-parser-js ">=0.4.0"
- websocket-extensions ">=0.1.1"
-
-websocket-extensions@>=0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29"
-
-whatwg-encoding@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3"
- dependencies:
- iconv-lite "0.4.19"
-
-whatwg-url@^4.3.0:
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.8.0.tgz#d2981aa9148c1e00a41c5a6131166ab4683bbcc0"
- dependencies:
- tr46 "~0.0.3"
- webidl-conversions "^3.0.0"
-
-which@~1.0.5:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/which/-/which-1.0.9.tgz#460c1da0f810103d0321a9b633af9e575e64486f"
-
-which@~1.3.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
- dependencies:
- isexe "^2.0.0"
-
-window-size@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
-
-wordwrap@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
-
-wordwrap@~0.0.2:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
-
-wordwrap@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
-
-xml-name-validator@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"
-
-xtend@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-3.0.0.tgz#5cce7407baf642cba7becda568111c493f59665a"
-
-yargs@~3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
- dependencies:
- camelcase "^1.0.2"
- cliui "^2.1.0"
- decamelize "^1.0.0"
- window-size "0.1.0"
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.bower.json b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.bower.json
deleted file mode 100755
index 48ca72dea..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.bower.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "name": "bootstrap-datepicker",
- "main": [
- "dist/css/bootstrap-datepicker3.css",
- "dist/js/bootstrap-datepicker.js"
- ],
- "license": "Apache-2.0",
- "dependencies": {
- "jquery": ">=1.7.1 <4.0.0"
- },
- "ignore": [],
- "homepage": "https://github.com/eternicode/bootstrap-datepicker",
- "version": "1.9.0",
- "_release": "1.9.0",
- "_resolution": {
- "type": "version",
- "tag": "v1.9.0",
- "commit": "fb8776d65825068b9f914ab37d6fd847c951f488"
- },
- "_source": "https://github.com/eternicode/bootstrap-datepicker.git",
- "_target": "^1.7",
- "_originalSource": "bootstrap-datepicker"
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.editorconfig b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.editorconfig
deleted file mode 100755
index ed06f7c0c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.editorconfig
+++ /dev/null
@@ -1,11 +0,0 @@
-# EditorConfig is awesome: https://editorconfig.org
-
-root = true
-
-[*]
-charset = utf-8
-end_of_line = lf
-indent_size = 2
-indent_style = space
-insert_final_newline = true
-trim_trailing_whitespace = true
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/ISSUE_TEMPLATE.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/ISSUE_TEMPLATE.md
deleted file mode 100755
index 4d729fcc0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,13 +0,0 @@
-### Expected behaviour
-Tell us what should happen.
-
-### Actual behaviour
-Tell us what happens instead.
-
-### Datepicker version used
-
-ex. 1.6.1.
-
-### Example code
-
-Jsfiddle example to reproduce the problem.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/PULL_REQUEST_TEMPLATE.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/PULL_REQUEST_TEMPLATE.md
deleted file mode 100755
index 3a7001f29..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.github/PULL_REQUEST_TEMPLATE.md
+++ /dev/null
@@ -1,7 +0,0 @@
-| Q | A
-| --------------- | ---
-| Bug fix? | no|yes
-| New feature? | no|yes
-| BC breaks? | no|yes
-| Related tickets | fixes #X, partially #Y, mentioned in #Z
-| License | MIT
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.travis.yml b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.travis.yml
deleted file mode 100755
index 21d59fa5c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/.travis.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-language: node_js
-
-node_js:
- - "12"
-
-before_script:
- - npm install -g grunt-cli
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CHANGELOG.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CHANGELOG.md
deleted file mode 100755
index b6642e86c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CHANGELOG.md
+++ /dev/null
@@ -1,509 +0,0 @@
-Changelog
-=========
-
-1.9.0
------
-
-## Features
- * Added clearDates for clears range (#2114)
-
-## Bugfix
- * Hide today button when before start or after end date (#2474)
- * Fix navigation buttons states (#2277)
- * Fix updateNavArrows bug (#2230)
-
-## Locales
-### Bugfix
- * Added monthsTitle to Latvian locale (#2255)
- * Rename en-CA locale file to match the rest of the files (#2217)
- * Fix cs locale date format (#2275)
- * Added translation for months (fixing the default 'en' locale) (#2271)
-
-1.7.1
------
-
-## Bugfixes
- * Revert "move `jquery` to `peerDependencies` from `dependencies`"
-
-1.7.0
------
-
-## Features
- * Adding dateCells option (#1723)
- * Added keepEmptyValues option (#1558 + #1901)
- * added "changeViewMode" event; also adds the current `viewMode` to events (#1953)
- * adds `updateViewDate` option (#1982)
- * Added hiding week day names functionality (#2087)
- * Allow customizing day cell value (#2043)
-
-## Bugfixes
- * originalEvent object needs preventDefault fn (#1824)
- * Fix jQuery selector from premature selection of span element in inline/embedded calendar's month selection (#1859 + #1886)
- * Use date arithmetic to allow dates with times other than 00:00:00 (#1483)
- * Multiple general fixes (#1883 + #1893)
- * Visibility fix for nav arrows (#1916)
- * Do not trigger change or changeDate on initialization (#1912)
- * Fix: Close datepicker on touchstart (#1924)
- * Fix data-date-dates-disabled attribute to accept a comma-separated list (#1946)
- * Fix maxViewMode and navigation switch click (#1951)
- * Add support jQuery 3. Bootstrap 2 still available (composer.json) (#1958)
- * fix(parseDate) use insensitive regex to support +15d with capslock (#1910)
- * Refactoring timedelta aliases (dateAliases) (#1965)
- * Fix RTL layout (#1973)
- * Remove listen `changeDate` after destroy DateRangePicker (#1968)
- * add tests for setDatesDisabled function (#1983)
- * resolves bug on days when DST is added. (#2009)
- * XHTML fixes (#1998)
- * update grunt and other dev-dependencies (#2111)
- * Use display:table-cell instead of display:block for today, clear and title (#2121)
- * moved assumeNearbyYear to correct location (#2140)
- * move `jquery` to `peerDependencies` from `dependencies` (#2163)
- * Use default arrow values (#2176)
-
-## Locales
-### New
- * en-ZA (#1798)
- * en-ZNZ (#1799)
- * en-IE (#1800)
- * ar-tn (#1863)
- * Added Sinhala (si) locale (#2025)
- * Occitan locale (#2024 + #2026)
- * [l10n]Add breton translation (#2028)
- * Added Tajik language (#2117)
- * Add Uzbek latin and cyrill locales (#2152)
- * add Bengali (Bangla) language (#2171)
- * Added Hindi locale (#2199)
-
-### Bugfix
- * km/kh (#1812)
- * Capital letters in Polish translation (#1890)
- * Add missing monthsTitle in cs (#1900)
- * Update bootstrap-datepicker.da.js (#1936)
- * Fix typo in month name (#2040)
- * Added missing basque language properties (#2066)
- * Added weekStart to slovenian translation (#2067)
- * add monthsTitle for ru (#2092)
- * Change danish (da) date format to match the rest of the locales (#2048)
- * Fix Tamil Language file with proper locale code (#2141)
- * Revert strange changes, +monthsTitle (#2153)
- * updated Tajik (cyrillic) translation file (#2167)
- * Romanian uses dd/mm/yyyy format for dates (#2173)
- * Missing latvian translation (#2204)
-
-## Docs
- * Fix typo in index.rst (#1882)
- * Update CDNjs info in README.md (#1933)
- * [Doc] Keyboard navigation is not supported for embedded / inline type (#2002)
- * Removed reference to stefan petre (#2031)
- * Improve defaultViewDate documentation (#2052)
- * Add notes about multiple dates and examples for update method (#2060)
- * Add Code Of Conduct (#2095)
- * Update install instructions on README.md (#2160)
-
-1.6.2 - 1.6.3 - 1.6.4
----------------------
-
-Bugfix
-
- * Backported jquery 3 fix from #1958
-
-1.6.1
------
-Bugfixes
-
- * add specific class for disabled dates back (Fixes #1785)
- * [fix] Allow keyboard navigation for non-input fields (Fixes: #874)
- * fix kazakh mothShort
- * Fix bug when clicking on a day that is highlighted today in the next month
- * dates read out are 12am UTC
- * Fix show by component (with disabled attribute)
-
-1.6.0
------
-Features
-
- * Changes nonpunctuation to accept unicode characters
- * Add "assumeNearbyYear" option
- * Decade and century picking
- * Added timedelta aliases. (Fixes #785)
- * add getter methods for date limits
- * Replace arrow entities for glyphicon + template + libs snippets (Fixes: #610 #833 #1007)
- * added class .disabled to dow header
- * Rename "remove" to "destroy" and create alias
-
-Bugfix
-
- * Month/year view keyboard navigation
- * fix changeMonth, changeYear not triggered when selecting day from prev/next month
- * Fix default arrows for BS2 and screenshots (for docs)
- * Extend beforeShowMonth event functionality to work like beforeShowDay and beforeShowYear
-
-Locale changes
-
- * Correct date format for ko locale
- * Add en-AU (Australian English) locale
-
-Repository
-
- * Add CSS sourcemap
- * [BS3 Less] Remove unused variables and cleanup
- * Added timezone aware tests
- * remove .idea-folder from npm
-
-1.5.1
------
-
-Bugfixes
- * Fix calculation for new position when datepicker goes offscreen when inside a container (Fixes: #1619)
- * Fix datepicker title not centered when displaying calendar weeks (Fixes: #1625)
- * Fixing looping when calling dp inside change event (Fixes: #1628)
- * Add scrollTop to position if container is not body (Fixes: #1616)
- * Use document scrollTop instead of body scrollTop when using the body container
- * Fix focus for disabled week days (Fixes: #1365, #1187, #1648)
- * Fixes enableOnReadOnly bug when datepicker is of type component
-
-Translations
- * Added missing translations for slovak translation. (Fixes: #1521)
- * Added missing date format for norwegian (nb) locale (Fixes #1690)
- * Armenian translation short names
- * adding Today translation, default date format for the lithuanian translation
-
-Docs
- * Document data-api on container
- * Added docs for the different stylesheet files. (Fixes #1459)
-
-Repository
- * Enable travis container builds for faster builds
-
-1.5.0
------
-
-Features
- * Added down key as datepicker show trigger
- * immediateUpdates option (updates input when a year or month is selected)
- * Highlight days of week
- * maxViewMode option
- * Include "main" property in package.json
- * Require.js support. (Fixes: #280)
- * Allow overriding `$.fn.show` and `$.fn.hide` (Fixes: #1424)
- * Adding border-radius variable for LESS (Fixes: #1429)
- * Add support for dropdown border variables
- * Add the posibility to have a title on the picker (Fixes: #1410)
- * Implement `beforeShowYear` (Fixes: #1226)
- * Add commonjs support
- * Trigger 'hide' event when clicking outside datepicker
- * Add css-classes for range-start and range-end
- * Update hover effect for "buttons" (matches Bootstrap 3.3.5 mixin)
- * Custom formatting options
-
-Bugfixes:
- * Scrolling on mobile device closes datepicker
- * Use $.on() instead $.bind()
- * Fixed right-click and edit-menu paste
- * Ported prototype fix for Prototype Compability
- * Fixed issue with startview year
- * Fixed padding inconsistency with twitter bootstrap 3
- * prevents the click event from bubbling to any user defined click handlers
- * Added padding for .datepicker-dropdown
- * Fixes the issue with a date change firing mulitple change events
- * removed hard dependency on bootstrap (because of twbs-sass package)
- * Clearing the date should reset to defaultViewDate
- * Datepicker orientation mix up - top = bottom and bottom = top
- * Fix cursor thead styles
- * Fix date-reset issue when navigating to next with invalid date
- * Using orientation:auto but date picker still appears above, cut off, when there plenty of space below.
- * lots of orientation fixes
-
-Locale changes:
- * Remove unused eighth element on week arrays )
- * Add Esperanto translation
- * Better Polish language date shortcuts translation and default date format
- * lowercase danish translation
- * Add Mongolian localization
- * update Hungarian translation
-
-Docs:
- * added day to end-date to avoid confusion about example
- * added setDatesDisabled method to documentation
-
-
-
-1.4.0
------
-
-Features:
- * implemented beforeShowMonth option
- * Added option to disable touch keyboard input
- * All datepicker methods are chainable
- * Added a datesDisable option
- * Added option to prevent date picker to show when input field receives focus
- * adding option to define the container the datepicker will be appended to
- * Backported some placement fixes for the container option
- * Option default view date
- * Add toggleActive option
- * Added clear method
- * Added version property to datepicker object
- * Added option to not show datepicker on readonly field
-
-Bugfixes:
- * Removed blank space before the previous button when calendarWeeks is true;
- * Fixed date deselection with single date picker
- * Added case-neutral matching for text months
- * Changed input-daterange to full width for bs3
- * Fix placement for RTL languages
- * fix for range picker when next date is before previous date
- * Fix for moving box on first selection
- * Do not show datepicker for readonly inputs
- * Fix getUTCDate when datepicker has no selected date
- * Only a linked today button should trigger the changeDate event
- * Fixed bug with keyboard navigation when startdate/enddate was defined
- * Right align calendar on right window edge conflict
- * On "ENTER" keydown on picker, prevent the closest form to be submitted too
- * fixed bower.json twitte bootstrap dependency
- * Replaced named entities with decimal entities
- * assigning plugin to a local variable to fix bug in noConflict
-
-Repo changes:
- * Added empty ignore option in bower.json.
- * Added .editorconfig
- * Reworked grunt tasks
-
-Translations:
- * Fix translation of French months
- * Update cambodia translations
- * added clear and weekStart to turkish translation
- * Days/months should start lowercase in dutch
- * Month/daynames should be lowercase in french
- * Add 'clear' and 'format' to Ukrainian locale
- * Added Montenegrin locale
-
-Docs:
- * added example for inputs option
- * added missing documentation for embedded mode
- * Add additional documentaion to update method
-
-1.3.1
------
-
-Repo changes:
-* Automated screenshots have been added to the docs. These probably need to be documented so that contributors can add them when appropriate.
-* Grunt support
-* Missing description and keywords for Packagist
-* Composer: Include translation files into deployment dir
-* Add package name and version to npm package.json
-
-Bugfixes:
-* Remove font-family declaration for datepicker
-* Don't deselect date unless datepicker is multidate
-* Removed comment from compiled CSS.
-* Don't clear input after typing date and hitting Enter when keyboard nav is disabled
-* Fixing the ui displaying 'undefined nan' when typing dates in Firefox & IE
-* Reset tooltip to a default empty value
-* Fix colspan if calendarWeeks & clearBtn are true
-* Removed fixed width and height in large and small group addon
-* z-index calculation should not stop at first element
-* Fix IE8 bug with Array#splice with one argument
-
-Documentation:
-* ghpages: jQuery js not being loaded when using HTTPS
-* Adds clearBtn option to sandbox page
-* Minor fixes (typo's, links,...)
-
-Locale changes
-
-Updated languages:
-* Clear translation in czech
-* Dutch translation
-* Swedish translation
-* Japanese translation
-* Ukrainian translation fixes
-* Add spanish clear, week start and format
-* Added galician clear, week start and format
-* Added missing clear localization value for polish translation
-* Add clear zh-CN translation
-* Fixed Albanian translation typo's
-* Add missing clear and format localization value for Russian translation
-* Updated Serbian translation
-* Fixed Ukrainian iso code to uk instead of ua
-* Updated greek translation
-* Update Catalan and Spanish localizations
-* Added missing armenian translations
-
-New languages:
-* Basque
-* Khmer (Cambodia)
-* Bosnian
-* British english
-* Armenian
-* Faroese
-* Swiss Italian and Swiss French
-
-1.3.0
------
-
-New features:
-* Bootstrap 3 support. Added build files `build/build_standalone3.less` and `build/build3.less`, and source files `less/datepicker3.less` and `css/datepicker3.css` (built from `build_standalone3.less`).
-* Multi-date functionality. This required rethinking several areas of the picker:
- * The internals have been modified to be completely multidate-centric.
- * Attributes and methods availabel on events have changed, but the old attributes and functions will still work.
- * Keyboard navigation has been revamped, as it didn't work at all properly with multidate selection.
- * The picker now explicitly supports "no selected date".
-
-Non-API changes:
-* Keyboard navigation has been changed. See `docs/keyboard.rst`.
-* Empty pickers in a range picker setup will be populated with the first date selected by the user to make finding the next date easier.
-
-Bug squashed:
-* Jan 1, 1970 is now highlighted when selected
-* `touchstart` added to document-bound picker-closing events (alongside `mousedown`)
-* Fixed a display bug with component add-on icons being vertically higher than they should have been.
-* Input is refocused after clicking the picker.
-* `changeDate` event is triggered when `setDate` is called.
-
-Locale changes:
-* Added Ukrainian, Belgium-Dutch, Welsh, Galician, Vietnamese, and Azerbaijani
-* `clear` for German, Danish, Italian, and Romanian
-* Fixed `weekStart` and `format` for Norwegian
-* `weekStart` and `format` for Georgian
-* Tweaks for Latvian, French, Vietnamese, Swedish, and Croatian
-* De-duplicated Ukrainian files from `uk` and `ua` to just `ua`
-
-Repository changes:
-* Documentation has been moved from the base `README.md` file to the `docs/` folder, and been re-written to use sphinx docs. The docs are now viewable online at https://bootstrap-datepicker.readthedocs.org/. The [gh-pages](https://uxsolutions.github.io/bootstrap-datepicker/) branch has been reduced to the sandbox demo.
-* Changed the js file header to point at repo/demo/docs urls instead of eyecon.ro
-* The css files are now the output of the standalone build scripts instead of `build/build.less` etc.
-* `composer.json` now supports component-installer
-* Added [JSHint](http://www.jshint.com/docs/) and [JSCS](https://github.com/mdevils/node-jscs) configurations
-
-
-1.2.0
------
-
-New features:
-* Google Closure Compiler Compatibility
-* Smart orientation by default, and explicit picker orientation with the `orientation` option
-* Text inside the picker is no longer user-selectable
-* Packagist/Composer support (I think...)
-* No longer depends on glyphicons for arrows
-* `clearDate` event added, fired when the date is cleared
-
-Bug squashed:
-* `noConflict` fixed
-* Fix for large years causing an infinite loop in date parsing
-* Fixed cases where `changeYear` and `changeMonth` events were not being triggered
-* `component.js` moved to `bower.js`
-* Falsey values for `startDate` and `endDate` translate to `-Infinity` and `Infinity`, respectively (effectively, falsey values mean "no bounds")
-* Fixed `autoclose` for non-input, non-component elements
-* Fixed 50% param in `mix()` less function -- expands compatibility with less compilers
-* Fixed `update` method to update the selected date
-* `beforeShowDay` was getting UTC dates, now it gets local dates (all dates that developers are given should be in local time, not UTC).
-* `startDate` and `endDate` were a bit confused when given `new Date()` -- they would not allow today to be selected (the range should be inclusive), they would change whether it was selectable based on local time, etc. These quirks should be fixed now. They both also now expect local dates (which will then be time-zeroed and converted to UTC).
-* Fixed selected date not being automatically constrained to the specified range when `setStartDate` and `setEndDate` were called.
-* No longer uses jQuery's `.size()` (deprecated in favor of `.length`)
-* `changeDate` triggered during manual user input
-* `change` event fired when input value changed, it wasn't in some cases
-
-Locale changes:
-* Added Arabic, Norwegian, Georgian
-* `clear` for French
-* `today` and `clear` for Bahasa
-* `today` and `clear` for Portuguese (both `pt` and `pt-BR`)
-* `format` for Turkish
-* `format` and `weekStart` for Swedish
-* `format` and `weekStart` for Simplified Chinese; `today`, `format`, and `weekStart` for Traditional Chinese
-* Fixed typo in Serbian latin (`rs-latin`)
-* More appropriate use of Traditional Chinese habit in `zh-TW`
-
-
-1.1.3
- ----------
-
- Clicking the clear button now triggers the input's `change` and datepicker's `changeDate` events.
- Fixed a bug that broke the event-attached `format` function.
-
-
-1.1.2
-----------
-
-Botched release, no change from 1.1.1
-
-
-1.1.1
-----------
-
-Fixes a bug when setting startDate or endDate during initialization.
-
-
-1.1.0
-----------
-
-New features:
-* Date range picker.
-* Data API / noConflict.
-* `getDate` and `setDate` methods.
-* `format` method for events; this allows you to easily format the `date` associated with the event.
-* New options:
- * `beforeShowDay` option: a dev-provided function that can enable/disable dates, add css classes, and add tooltips.
- * `clearBtn`, a button for resetting the picker.
-
-Internal changes:
-* Cleaner and more reliable method for extracting options from all potential sources (defaults, locale overrides, data-attrs, and instantiation options, in that order). This also populates `$.fn.datepicker.defaults` with the default values, and uses this hash as the actual source of defaults, meaning you can globally change the default value for a given option.
-
-Bugs squashed:
-* Resolved a conflict with bootstrap's native `.switch` class.
-* Fixed a bug with components where they would be stuck with a stale value when editing the value manually.
-* The `date` attributes on events are now local dates instead of internal UTC dates.
-* Separate `Date` objects for internal selected and view date references.
-* Clicking multiple times inside inputs no longer hides the picker.
-
-Minor improvements:
-* Better text color for highlighted "today" date.
-* Last year in decade view now marked as "new" instead of "old".
-* Formats now properly handle trailing separators.
-
-Locale changes:
-* Added Albanian, Estonian, and Macedonian
-* Added `weekStart` for Russian
-* Added `weekStart` and `format` for Finnish
-
-Potentially backward-incompatible changes:
-* Options revamp:
- * This fixes bugs in the correlation of some data-attrs to their associated option names. If you use `data-date-weekstart`, `data-date-startdate`, or `data-date-enddate`, you should update these to `data-date-week-start`, `data-date-start-date`, or `data-date-end-date`, respectively.
- * All options for datepicker are now properties on the datepicker's `o` property; options are no longer stored on the Datepicker instance itself. If you have code that accesses options stored on the datepicker instance (eg, `datepicker.format`), you will need to update it to access those options via the `o` property (eg, `datepicker.o.format`). "Raw" options are available via the `_o` property.
-
-1.0.2
-----------
-
-Small optimizations release
-
-* Reduced the number of times `update` is called on initialization.
-* Datepicker now detaches the picker dropdown when it is hidden, and appends it when shown. This removes the picker from the DOM when it is not in use.
-* No longer listens to document/window events unless picker is visible.
-
-v1.0.1
-------
-
-* Support for [Bower](https://bower.io/)
-* Component pickers are now aligned under the input, not the add-on element.
-* Japanese locale now has "today" and "format".
-* "remove" method removes `.data().date` if the datepicker is on a non-input.
-* Events on initialized elements are no longer blocked from bubbling up the DOM (jQuery.live et al can now catch the events).
-* Component triggers now include `.btn` in addition to `.add-on`.
-* Updates to README contents.
-
-v1.0.0
-------
-
-Initial release:
-
-* format option
-* weekStart option
-* calendarWeeks option
-* startDate / endDate options
-* daysOfWeekDisabled option
-* autoclose option
-* startView / mnViewMode options
-* todayBtn / todayHighlight options
-* keyboardNavigation option
-* language option
-* forceParse option
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CODE_OF_CONDUCT.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CODE_OF_CONDUCT.md
deleted file mode 100755
index f904c86ef..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor Covenant Code of Conduct
-
-## Our Pledge
-
-In the interest of fostering an open and welcoming environment, we as
-contributors and maintainers pledge to making participation in our project and
-our community a harassment-free experience for everyone, regardless of age, body
-size, disability, ethnicity, gender identity and expression, level of experience,
-nationality, personal appearance, race, religion, or sexual identity and
-orientation.
-
-## Our Standards
-
-Examples of behavior that contributes to creating a positive environment
-include:
-
-* Using welcoming and inclusive language
-* Being respectful of differing viewpoints and experiences
-* Gracefully accepting constructive criticism
-* Focusing on what is best for the community
-* Showing empathy towards other community members
-
-Examples of unacceptable behavior by participants include:
-
-* The use of sexualized language or imagery and unwelcome sexual attention or
-advances
-* Trolling, insulting/derogatory comments, and personal or political attacks
-* Public or private harassment
-* Publishing others' private information, such as a physical or electronic
- address, without explicit permission
-* Other conduct which could reasonably be considered inappropriate in a
- professional setting
-
-## Our Responsibilities
-
-Project maintainers are responsible for clarifying the standards of acceptable
-behavior and are expected to take appropriate and fair corrective action in
-response to any instances of unacceptable behavior.
-
-Project maintainers have the right and responsibility to remove, edit, or
-reject comments, commits, code, wiki edits, issues, and other contributions
-that are not aligned to this Code of Conduct, or to ban temporarily or
-permanently any contributor for other behaviors that they deem inappropriate,
-threatening, offensive, or harmful.
-
-## Scope
-
-This Code of Conduct applies both within project spaces and in public spaces
-when an individual is representing the project or its community. Examples of
-representing a project or community include using an official project e-mail
-address, posting via an official social media account, or acting as an appointed
-representative at an online or offline event. Representation of a project may be
-further defined and clarified by project maintainers.
-
-## Enforcement
-
-Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported by contacting the project team at . All
-complaints will be reviewed and investigated and will result in a response that
-is deemed necessary and appropriate to the circumstances. The project team is
-obligated to maintain confidentiality with regard to the reporter of an incident.
-Further details of specific enforcement policies may be posted separately.
-
-Project maintainers who do not follow or enforce the Code of Conduct in good
-faith may face temporary or permanent repercussions as determined by other
-members of the project's leadership.
-
-## Attribution
-
-This Code of Conduct is adapted from the [Contributor Covenant](https://contributor-covenant.org), version 1.4,
-available at
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CONTRIBUTING.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CONTRIBUTING.md
deleted file mode 100755
index af14029d3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/CONTRIBUTING.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributing
-
-## Support requests
-
-The issue tracker is not the place for support requests. If you get stuck with bootstrap-datepicker, it's very likely that the fine folks at [StackOverflow](https://stackoverflow.com/) will be able to help you; simply describe the problem you're having and provide them a link to the repo (so they know what code you're using). Another option is to post to the [bootstrap-datepicker google group](https://groups.google.com/group/bootstrap-datepicker).
-
-## Issues
-
-If you've found a bug in bootstrap-datepicker, we want to know about it! However, please keep the following in mind:
-
-* This is not the bootstrap-datepicker from [eyecon.ro](https://www.eyecon.ro/bootstrap-datepicker/). Stefan provided the initial code for bootstrap-datepicker, but this repo is divergent from his codebase. Please make sure you're using either the latest tagged version or the latest master from https://github.com/uxsolutions/bootstrap-datepicker/.
-* A working example of the bug you've found is *much* easier to work with than a description alone. If possible, please provide a link to a demonstration of the bug, perhaps using https://jsfiddle.net/ .
- * CDN-backed assets can be found at http://bsdp-assets.blackcherry.us/ . These should be used *only* for building test cases, as they may be removed or changed at any time.
-* Finally, it's possible someone else has already reported the same bug you have. Please search the issue tracker for similar issues before posting your own. Thanks!
-
-## Pull Requests
-
-Patches welcome!
-
-For all cases, you should have your own fork of the repo.
-
-To submit a pull request for a **new feature**:
-
-1. Run the tests. Every pull request for a new feature should have an accompanying unit test and docs changes. See the `README.md` in the `tests/` and `docs/` directories for details.
-2. Create a new branch off of the `master` branch for your feature. This is particularly helpful when you want to submit multiple pull requests.
-3. Add a test (or multiple tests) for your feature. Again, see `tests/README.md`.
-4. Add your new feature, making the test pass.
-5. Push to your fork and submit the pull request!
-
-To submit a **bug fix**:
-
-1. Create a new branch off of the `master` branch.
-2. Add a test that demonstrates the bug.
-3. Make the test pass.
-4. Push to your fork and submit the pull request!
-
-To submit a **documentation fix**:
-
-1. Create a new branch off of the `master` branch.
-2. Add your documentation fixes (no tests required).
-3. Push to your fork and submit the pull request!
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/Gruntfile.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/Gruntfile.js
deleted file mode 100755
index 4b8065e46..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/Gruntfile.js
+++ /dev/null
@@ -1,261 +0,0 @@
-module.exports = function(grunt){
- 'use strict';
-
- // Force use of Unix newlines
- grunt.util.linefeed = '\n';
-
- // Project configuration.
- grunt.initConfig({
- //Metadata
- pkg: grunt.file.readJSON('package.json'),
- banner: [
- '/*!',
- ' * Datepicker for Bootstrap v<%= pkg.version %> (<%= pkg.homepage %>)',
- ' *',
- ' * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)',
- ' */'
- ].join('\n') + '\n',
-
- // Task configuration.
- clean: {
- dist: ['dist', '*-dist.zip']
- },
- jshint: {
- options: {
- jshintrc: 'js/.jshintrc'
- },
- main: {
- src: 'js/bootstrap-datepicker.js'
- },
- locales: {
- src: 'js/locales/*.js'
- },
- gruntfile: {
- options: {
- jshintrc: 'grunt/.jshintrc'
- },
- src: 'Gruntfile.js'
- }
- },
- jscs: {
- options: {
- config: 'js/.jscsrc'
- },
- main: {
- src: 'js/bootstrap-datepicker.js'
- },
- locales: {
- src: 'js/locales/*.js'
- },
- gruntfile: {
- src: 'Gruntfile.js'
- }
- },
- qunit: {
- main: 'tests/tests.html',
- timezone: 'tests/timezone.html',
- options: {
- console: false
- }
- },
- concat: {
- options: {
- stripBanners: true
- },
- main: {
- src: 'js/bootstrap-datepicker.js',
- dest: 'dist/js/<%= pkg.name %>.js'
- }
- },
- uglify: {
- options: {
- preserveComments: 'some'
- },
- main: {
- src: '<%= concat.main.dest %>',
- dest: 'dist/js/<%= pkg.name %>.min.js'
- },
- locales: {
- files: [{
- expand: true,
- cwd: 'js/locales/',
- src: '*.js',
- dest: 'dist/locales/',
- rename: function(dest, name){
- return dest + name.replace(/\.js$/, '.min.js');
- }
- }]
- }
- },
- less: {
- options: {
- sourceMap: true,
- outputSourceFiles: true
- },
- standalone_bs2: {
- options: {
- sourceMapURL: '<%= pkg.name %>.standalone.css.map'
- },
- src: 'build/build_standalone.less',
- dest: 'dist/css/<%= pkg.name %>.standalone.css'
- },
- standalone_bs3: {
- options: {
- sourceMapURL: '<%= pkg.name %>3.standalone.css.map'
- },
- src: 'build/build_standalone3.less',
- dest: 'dist/css/<%= pkg.name %>3.standalone.css'
- },
- main_bs2: {
- options: {
- sourceMapURL: '<%= pkg.name %>.css.map'
- },
- src: 'build/build.less',
- dest: 'dist/css/<%= pkg.name %>.css'
- },
- main_bs3: {
- options: {
- sourceMapURL: '<%= pkg.name %>3.css.map'
- },
- src: 'build/build3.less',
- dest: 'dist/css/<%= pkg.name %>3.css'
- }
- },
- usebanner: {
- options: {
- banner: '<%= banner %>'
- },
- css: 'dist/css/*.css',
- js: 'dist/js/**/*.js'
- },
- cssmin: {
- options: {
- compatibility: 'ie8',
- keepSpecialComments: '*',
- advanced: false
- },
- main: {
- files: {
- 'dist/css/<%= pkg.name %>.min.css': 'dist/css/<%= pkg.name %>.css',
- 'dist/css/<%= pkg.name %>3.min.css': 'dist/css/<%= pkg.name %>3.css'
- }
- },
- standalone: {
- files: {
- 'dist/css/<%= pkg.name %>.standalone.min.css': 'dist/css/<%= pkg.name %>.standalone.css',
- 'dist/css/<%= pkg.name %>3.standalone.min.css': 'dist/css/<%= pkg.name %>3.standalone.css'
- }
- }
- },
- csslint: {
- options: {
- csslintrc: 'less/.csslintrc'
- },
- dist: [
- 'dist/css/bootstrap-datepicker.css',
- 'dist/css/bootstrap-datepicker3.css',
- 'dist/css/bootstrap-datepicker.standalone.css',
- 'dist/css/bootstrap-datepicker3.standalone.css'
- ]
- },
- compress: {
- main: {
- options: {
- archive: '<%= pkg.name %>-<%= pkg.version %>-dist.zip',
- mode: 'zip',
- level: 9,
- pretty: true
- },
- files: [
- {
- expand: true,
- cwd: 'dist/',
- src: '**'
- }
- ]
- }
- },
- 'string-replace': {
- js: {
- files: [{
- src: 'js/bootstrap-datepicker.js',
- dest: 'js/bootstrap-datepicker.js'
- }],
- options: {
- replacements: [{
- pattern: /\$(\.fn\.datepicker\.version)\s=\s*("|\')[0-9\.a-z].*("|');/gi,
- replacement: "$.fn.datepicker.version = '" + grunt.option('newver') + "';"
- }]
- }
- },
- npm: {
- files: [{
- src: 'package.json',
- dest: 'package.json'
- }],
- options: {
- replacements: [{
- pattern: /\"version\":\s\"[0-9\.a-z].*",/gi,
- replacement: '"version": "' + grunt.option('newver') + '",'
- }]
- }
- }
- }
- });
-
- // These plugins provide necessary tasks.
- require('load-grunt-tasks')(grunt, {scope: 'devDependencies'});
- require('time-grunt')(grunt);
-
- // JS distribution task.
- grunt.registerTask('dist-js', ['concat', 'uglify:main', 'uglify:locales', 'usebanner:js']);
-
- // CSS distribution task.
- grunt.registerTask('less-compile', 'less');
- grunt.registerTask('dist-css', ['less-compile', 'cssmin:main', 'cssmin:standalone', 'usebanner:css']);
-
- // Full distribution task.
- grunt.registerTask('dist', ['clean:dist', 'dist-js', 'dist-css']);
-
- // Code check tasks.
- grunt.registerTask('lint-js', 'Lint all js files with jshint and jscs', ['jshint', 'jscs']);
- grunt.registerTask('lint-css', 'Lint all css files', ['dist-css', 'csslint:dist']);
- grunt.registerTask('qunit-all', 'Run qunit tests', ['qunit:main', 'qunit-timezone']);
- grunt.registerTask('test', 'Lint files and run unit tests', ['lint-js', /*'lint-css',*/ 'qunit-all']);
-
- // Version numbering task.
- // grunt bump-version --newver=X.Y.Z
- grunt.registerTask('bump-version', 'string-replace');
-
- // Docs task.
- grunt.registerTask('screenshots', 'Rebuilds automated docs screenshots', function(){
- var phantomjs = require('phantomjs-prebuilt').path;
-
- grunt.file.recurse('docs/_static/screenshots/', function(abspath){
- grunt.file.delete(abspath);
- });
-
- grunt.file.recurse('docs/_screenshots/', function(abspath, root, subdir, filename){
- if (!/.html$/.test(filename))
- return;
- subdir = subdir || '';
-
- var outdir = 'docs/_static/screenshots/' + subdir,
- outfile = outdir + filename.replace(/.html$/, '.png');
-
- if (!grunt.file.exists(outdir))
- grunt.file.mkdir(outdir);
-
- // NOTE: For 'zh-TW' and 'ja' locales install adobe-source-han-sans-jp-fonts (Arch Linux)
- grunt.util.spawn({
- cmd: phantomjs,
- args: ['docs/_screenshots/script/screenshot.js', abspath, outfile]
- });
- });
- });
-
- grunt.registerTask('qunit-timezone', 'Run timezone tests', function(){
- process.env.TZ = 'Europe/Moscow';
- grunt.task.run('qunit:timezone');
- });
-};
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/LICENSE b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/LICENSE
deleted file mode 100755
index d64569567..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/LICENSE
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/README.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/README.md
deleted file mode 100755
index 16ee1e385..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# bootstrap-datepicker
-
-[![Join the chat at https://gitter.im/uxsolutions/bootstrap-datepicker](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/uxsolutions/bootstrap-datepicker?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-[![Build Status](https://travis-ci.org/uxsolutions/bootstrap-datepicker.svg?branch=master)](https://travis-ci.org/uxsolutions/bootstrap-datepicker)
-[![GitHub license](https://img.shields.io/badge/license-Apache%202-blue.svg)](https://raw.githubusercontent.com/uxsolutions/bootstrap-datepicker/master/LICENSE)
-[![npm](https://img.shields.io/npm/dt/bootstrap-datepicker.svg)](https://github.com/uxsolutions/bootstrap-datepicker)
-[![Twitter Follow](https://img.shields.io/twitter/follow/bsdatepicker.svg?style=social&label=Follow)](https://twitter.com/bsdatepicker)
-
-Versions are incremented according to [semver](http://semver.org/).
-
-## CDN
-
-You can use the [CloudFlare](https://www.cloudflare.com) powered [cdnjs.com](https://cdnjs.com) on your website.
-
-[bootstrap-datepicker](https://cdnjs.com/libraries/bootstrap-datepicker) on cdnjs
-
-Please note: It might take a few hours until a new version is available on cdnjs.
-
-## Links
-
-* [Online Demo](https://uxsolutions.github.io/bootstrap-datepicker/)
-* [Online Docs](https://bootstrap-datepicker.readthedocs.org/en/stable/) (ReadTheDocs.com)
-* [Google Group](https://groups.google.com/group/bootstrap-datepicker/)
-* [Travis CI](https://travis-ci.org/uxsolutions/bootstrap-datepicker)
-
-## Development
-
-Once you cloned the repo, you'll need to install [grunt](https://gruntjs.com/) and the development dependencies using a package manager:
-
-* [yarn](https://yarnpkg.com/) (recommended):
-
-```
-$ [sudo] yarn global add grunt-cli
-$ yarn install
-```
-
-* [npm](https://www.npmjs.com/):
-
-```
-$ [sudo] npm install --global grunt-cli
-$ npm install
-```
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/bower.json b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/bower.json
deleted file mode 100755
index dd78f44d9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/bower.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "bootstrap-datepicker",
- "main": [
- "dist/css/bootstrap-datepicker3.css",
- "dist/js/bootstrap-datepicker.js"
- ],
- "license": "Apache-2.0",
- "dependencies": {
- "jquery" : ">=1.7.1 <4.0.0"
- },
- "ignore": []
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build.less
deleted file mode 100755
index 7db2322bc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build.less
+++ /dev/null
@@ -1,69 +0,0 @@
-// Datepicker .less buildfile. Includes select mixins/variables from bootstrap
-// and imports the included datepicker.less to output a minimal datepicker.css
-//
-// Usage:
-// lessc build.less datepicker.css
-//
-// Variables and mixins copied from bootstrap 2.0.2
-
-// Variables
-@grayLight: #999;
-@grayLighter: #eee;
-@white: #fff;
-@linkColor: #08c;
-@btnPrimaryBackground: @linkColor;
-@orange: #f89406;
-@infoBackground: #d9edf7;
-@baseLineHeight: 18px;
-@baseBorderRadius: 4px;
-
-// Mixins
-
-// Border Radius
-.border-radius(@radius: 5px) {
- -webkit-border-radius: @radius;
- -moz-border-radius: @radius;
- border-radius: @radius;
-}
-
-// Button backgrounds
-.buttonBackground(@startColor, @endColor) {
- .gradientBar(@startColor, @endColor);
- .reset-filter();
- &:hover, &:active, &.active, &.disabled, &[disabled] {
- background-color: @endColor;
- }
- &:active,
- &.active {
- background-color: darken(@endColor, 10%) e("\9");
- }
-}
-
-// Reset filters for IE
-.reset-filter() {
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-
-// Gradient Bar Colors for buttons and alerts
-.gradientBar(@primaryColor, @secondaryColor) {
- #gradient > .vertical(@primaryColor, @secondaryColor);
- border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
- border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
-}
-
-// Gradients
-#gradient {
- .vertical(@startColor: #555, @endColor: #333) {
- background-color: mix(@startColor, @endColor, 60%);
- background-image: -moz-linear-gradient(to bottom, @startColor, @endColor); // FF 3.6+
- background-image: -ms-linear-gradient(to bottom, @startColor, @endColor); // IE10
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
- background-image: -webkit-linear-gradient(to bottom, @startColor, @endColor); // Safari 5.1+, Chrome 10+
- background-image: -o-linear-gradient(to bottom, @startColor, @endColor); // Opera 11.10
- background-image: linear-gradient(to bottom, @startColor, @endColor); // The standard
- background-repeat: repeat-x;
- filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE9 and down
- }
-}
-
-@import "../less/datepicker.less";
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build3.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build3.less
deleted file mode 100755
index a9baa087e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build3.less
+++ /dev/null
@@ -1,76 +0,0 @@
-// Datepicker .less buildfile. Includes select mixins/variables from bootstrap
-// and imports the included datepicker.less to output a minimal datepicker.css
-//
-// Usage:
-// lessc build3.less datepicker.css
-//
-// Variables and mixins copied from Bootstrap 3.3.5
-
-// Variables
-@gray: lighten(#000, 33.5%); // #555
-@gray-light: lighten(#000, 46.7%); // #777
-@gray-lighter: lighten(#000, 93.5%); // #eee
-
-@brand-primary: darken(#428bca, 6.5%); // #337ab7
-
-@btn-primary-color: #fff;
-@btn-primary-bg: @brand-primary;
-@btn-primary-border: darken(@btn-primary-bg, 5%);
-
-@btn-link-disabled-color: @gray-light;
-
-@state-info-bg: #d9edf7;
-
-@line-height-base: 1.428571429; // 20/14
-@border-radius-base: 4px;
-
-@dropdown-bg: #fff;
-@dropdown-border: rgba(0,0,0,.15);
-
-
-// Mixins
-
-// Button variants
-.button-variant(@color; @background; @border) {
- color: @color;
- background-color: @background;
- border-color: @border;
-
- &:focus,
- &.focus {
- color: @color;
- background-color: darken(@background, 10%);
- border-color: darken(@border, 25%);
- }
- &:hover {
- color: @color;
- background-color: darken(@background, 10%);
- border-color: darken(@border, 12%);
- }
- &:active,
- &.active {
- color: @color;
- background-color: darken(@background, 10%);
- border-color: darken(@border, 12%);
-
- &:hover,
- &:focus,
- &.focus {
- color: @color;
- background-color: darken(@background, 17%);
- border-color: darken(@border, 25%);
- }
- }
- &.disabled,
- &[disabled],
- fieldset[disabled] & {
- &:hover,
- &:focus,
- &.focus {
- background-color: @background;
- border-color: @border;
- }
- }
-}
-
-@import "../less/datepicker3.less";
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone.less
deleted file mode 100755
index 9fa1b8b84..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone.less
+++ /dev/null
@@ -1,64 +0,0 @@
-// Datepicker standalone .less buildfile. Includes all necessary mixins/variables/rules from bootstrap
-// and imports the included datepicker.less to output a minimal standalone datepicker.css
-//
-// Usage:
-// lessc build_standalone.less datepicker.css
-//
-// Variables, mixins, and rules copied from bootstrap 2.0.2
-
-@import "build.less";
-
-// Dropdown css
-
-@zindexDropdown: 1000;
-@grayDark: #333;
-@baseLineHeight: 20px;
-@tableBackground: transparent; // overall background-color
-@dropdownBackground: @white;
-@dropdownBorder: rgba(0,0,0,.2);
-@dropdownLinkColor: @grayDark;
-@dropdownLinkColorHover: @white;
-@dropdownLinkBackgroundHover: @linkColor;
-
-// Drop shadows
-.box-shadow(@shadow) {
- -webkit-box-shadow: @shadow;
- -moz-box-shadow: @shadow;
- box-shadow: @shadow;
-}
-
-// The dropdown menu (ul)
-// ----------------------
-.datepicker{
- &.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: @zindexDropdown;
- float: left;
- display: none; // none by default, but block on "open" of the menu
- min-width: 160px;
- list-style: none;
- background-color: @dropdownBackground;
- border: 1px solid #ccc;
- border: 1px solid rgba(0,0,0,.2);
- .border-radius(5px);
- .box-shadow(0 5px 10px rgba(0,0,0,.2));
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
- *border-right-width: 2px;
- *border-bottom-width: 2px;
-
- // Normally inherited from bootstrap's `body`
- color: #333333;
- font-size:13px;
- line-height: @baseLineHeight;
- }
-
- &.dropdown-menu, &.datepicker-inline {
- th, td {
- padding: 4px 5px;
- }
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone3.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone3.less
deleted file mode 100755
index 8ef90eaa1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/build/build_standalone3.less
+++ /dev/null
@@ -1,55 +0,0 @@
-// Datepicker standalone .less buildfile. Includes all necessary mixins/variables/rules from bootstrap
-// and imports the included datepicker.less to output a minimal standalone datepicker.css
-//
-// Usage:
-// lessc build_standalone3.less datepicker.css
-//
-// Variables, mixins, and rules copied from Bootstrap 3.3.5
-
-@import "build3.less";
-
-// Dropdown css
-
-@zindex-dropdown: 1000;
-@dropdown-fallback-border: #ccc;
-
-// Drop shadows
-.box-shadow(@shadow) {
- -webkit-box-shadow: @shadow;
- -moz-box-shadow: @shadow;
- box-shadow: @shadow;
-}
-
-// The dropdown menu (ul)
-// ----------------------
-.datepicker {
- &.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: @zindex-dropdown;
- display: none; // none by default, but block on "open" of the menu
- float: left;
- min-width: 160px;
- list-style: none;
- background-color: @dropdown-bg;
- border: 1px solid @dropdown-fallback-border; // IE8 fallback
- border: 1px solid @dropdown-border;
- border-radius: @border-radius-base;
- .box-shadow(0 6px 12px rgba(0,0,0,.175));
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
-
- // Normally inherited from bootstrap's `body`
- color: #333333;
- font-size: 13px;
- line-height: @line-height-base;
- }
-
- &.dropdown-menu, &.datepicker-inline {
- th, td {
- padding: 0px 5px;
- }
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/composer.json b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/composer.json
deleted file mode 100755
index af9faa9e3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/composer.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "name": "eternicode/bootstrap-datepicker",
- "description": "A datepicker for Bootstrap",
- "license": "Apache-2.0",
- "keywords": [
- "bootstrap",
- "datepicker"
- ],
- "authors": [
- {
- "name": "Andrew Rowls",
- "email": "eternicode@gmail.com"
- },
- {
- "name": "Community",
- "homepage": "https://github.com/uxsolutions/bootstrap-datepicker/contributors"
- }
- ],
- "type": "component",
- "require": {
- "robloach/component-installer": "*",
- "components/bootstrap" : ">=2.0, <4.0",
- "components/jquery": ">=1.7.1, <4.0.0"
- },
- "extra": {
- "component": {
- "scripts": [
- "js/bootstrap-datepicker.js"
- ],
- "styles": [
- "dist/css/bootstrap-datepicker.css",
- "dist/css/bootstrap-datepicker3.css"
- ],
- "files": [
- "js/locales/bootstrap-datepicker.*.js"
- ]
- }
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css
deleted file mode 100755
index c8a35bb38..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css
+++ /dev/null
@@ -1,477 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker {
- padding: 4px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- direction: ltr;
-}
-.datepicker-inline {
- width: 220px;
-}
-.datepicker-rtl {
- direction: rtl;
-}
-.datepicker-rtl.dropdown-menu {
- left: auto;
-}
-.datepicker-rtl table tr td span {
- float: right;
-}
-.datepicker-dropdown {
- top: 0;
- left: 0;
-}
-.datepicker-dropdown:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid #999;
- border-top: 0;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
-}
-.datepicker-dropdown:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-top: 0;
- position: absolute;
-}
-.datepicker-dropdown.datepicker-orient-left:before {
- left: 6px;
-}
-.datepicker-dropdown.datepicker-orient-left:after {
- left: 7px;
-}
-.datepicker-dropdown.datepicker-orient-right:before {
- right: 6px;
-}
-.datepicker-dropdown.datepicker-orient-right:after {
- right: 7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:before {
- top: -7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:after {
- top: -6px;
-}
-.datepicker-dropdown.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid #999;
-}
-.datepicker-dropdown.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid #fff;
-}
-.datepicker table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.datepicker td,
-.datepicker th {
- text-align: center;
- width: 20px;
- height: 20px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- border: none;
-}
-.table-striped .datepicker table tr td,
-.table-striped .datepicker table tr th {
- background-color: transparent;
-}
-.datepicker table tr td.day:hover,
-.datepicker table tr td.day.focused {
- background: #eee;
- cursor: pointer;
-}
-.datepicker table tr td.old,
-.datepicker table tr td.new {
- color: #999;
-}
-.datepicker table tr td.disabled,
-.datepicker table tr td.disabled:hover {
- background: none;
- color: #999;
- cursor: default;
-}
-.datepicker table tr td.highlighted {
- background: #d9edf7;
- border-radius: 0;
-}
-.datepicker table tr td.today,
-.datepicker table tr td.today:hover,
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today.disabled:hover {
- background-color: #fde19a;
- background-image: -moz-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -ms-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
- background-image: -webkit-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -o-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
- border-color: #fdf59a #fdf59a #fbed50;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #000;
-}
-.datepicker table tr td.today:hover,
-.datepicker table tr td.today:hover:hover,
-.datepicker table tr td.today.disabled:hover,
-.datepicker table tr td.today.disabled:hover:hover,
-.datepicker table tr td.today:active,
-.datepicker table tr td.today:hover:active,
-.datepicker table tr td.today.disabled:active,
-.datepicker table tr td.today.disabled:hover:active,
-.datepicker table tr td.today.active,
-.datepicker table tr td.today:hover.active,
-.datepicker table tr td.today.disabled.active,
-.datepicker table tr td.today.disabled:hover.active,
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today:hover.disabled,
-.datepicker table tr td.today.disabled.disabled,
-.datepicker table tr td.today.disabled:hover.disabled,
-.datepicker table tr td.today[disabled],
-.datepicker table tr td.today:hover[disabled],
-.datepicker table tr td.today.disabled[disabled],
-.datepicker table tr td.today.disabled:hover[disabled] {
- background-color: #fdf59a;
-}
-.datepicker table tr td.today:active,
-.datepicker table tr td.today:hover:active,
-.datepicker table tr td.today.disabled:active,
-.datepicker table tr td.today.disabled:hover:active,
-.datepicker table tr td.today.active,
-.datepicker table tr td.today:hover.active,
-.datepicker table tr td.today.disabled.active,
-.datepicker table tr td.today.disabled:hover.active {
- background-color: #fbf069 \9;
-}
-.datepicker table tr td.today:hover:hover {
- color: #000;
-}
-.datepicker table tr td.today.active:hover {
- color: #fff;
-}
-.datepicker table tr td.range,
-.datepicker table tr td.range:hover,
-.datepicker table tr td.range.disabled,
-.datepicker table tr td.range.disabled:hover {
- background: #eee;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-.datepicker table tr td.range.today,
-.datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today.disabled:hover {
- background-color: #f3d17a;
- background-image: -moz-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -ms-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));
- background-image: -webkit-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -o-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
- border-color: #f3e97a #f3e97a #edde34;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-.datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today:hover:hover,
-.datepicker table tr td.range.today.disabled:hover,
-.datepicker table tr td.range.today.disabled:hover:hover,
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today:hover:active,
-.datepicker table tr td.range.today.disabled:active,
-.datepicker table tr td.range.today.disabled:hover:active,
-.datepicker table tr td.range.today.active,
-.datepicker table tr td.range.today:hover.active,
-.datepicker table tr td.range.today.disabled.active,
-.datepicker table tr td.range.today.disabled:hover.active,
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today:hover.disabled,
-.datepicker table tr td.range.today.disabled.disabled,
-.datepicker table tr td.range.today.disabled:hover.disabled,
-.datepicker table tr td.range.today[disabled],
-.datepicker table tr td.range.today:hover[disabled],
-.datepicker table tr td.range.today.disabled[disabled],
-.datepicker table tr td.range.today.disabled:hover[disabled] {
- background-color: #f3e97a;
-}
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today:hover:active,
-.datepicker table tr td.range.today.disabled:active,
-.datepicker table tr td.range.today.disabled:hover:active,
-.datepicker table tr td.range.today.active,
-.datepicker table tr td.range.today:hover.active,
-.datepicker table tr td.range.today.disabled.active,
-.datepicker table tr td.range.today.disabled:hover.active {
- background-color: #efe24b \9;
-}
-.datepicker table tr td.selected,
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected.disabled,
-.datepicker table tr td.selected.disabled:hover {
- background-color: #9e9e9e;
- background-image: -moz-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -ms-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080));
- background-image: -webkit-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -o-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: linear-gradient(to bottom, #b3b3b3, #808080);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
- border-color: #808080 #808080 #595959;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected:hover:hover,
-.datepicker table tr td.selected.disabled:hover,
-.datepicker table tr td.selected.disabled:hover:hover,
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected:hover:active,
-.datepicker table tr td.selected.disabled:active,
-.datepicker table tr td.selected.disabled:hover:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected:hover.active,
-.datepicker table tr td.selected.disabled.active,
-.datepicker table tr td.selected.disabled:hover.active,
-.datepicker table tr td.selected.disabled,
-.datepicker table tr td.selected:hover.disabled,
-.datepicker table tr td.selected.disabled.disabled,
-.datepicker table tr td.selected.disabled:hover.disabled,
-.datepicker table tr td.selected[disabled],
-.datepicker table tr td.selected:hover[disabled],
-.datepicker table tr td.selected.disabled[disabled],
-.datepicker table tr td.selected.disabled:hover[disabled] {
- background-color: #808080;
-}
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected:hover:active,
-.datepicker table tr td.selected.disabled:active,
-.datepicker table tr td.selected.disabled:hover:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected:hover.active,
-.datepicker table tr td.selected.disabled.active,
-.datepicker table tr td.selected.disabled:hover.active {
- background-color: #666666 \9;
-}
-.datepicker table tr td.active,
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active.disabled,
-.datepicker table tr td.active.disabled:hover {
- background-color: #006dcc;
- background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
- background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
- background-image: linear-gradient(to bottom, #08c, #0044cc);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
- border-color: #0044cc #0044cc #002a80;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active:hover:hover,
-.datepicker table tr td.active.disabled:hover,
-.datepicker table tr td.active.disabled:hover:hover,
-.datepicker table tr td.active:active,
-.datepicker table tr td.active:hover:active,
-.datepicker table tr td.active.disabled:active,
-.datepicker table tr td.active.disabled:hover:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active:hover.active,
-.datepicker table tr td.active.disabled.active,
-.datepicker table tr td.active.disabled:hover.active,
-.datepicker table tr td.active.disabled,
-.datepicker table tr td.active:hover.disabled,
-.datepicker table tr td.active.disabled.disabled,
-.datepicker table tr td.active.disabled:hover.disabled,
-.datepicker table tr td.active[disabled],
-.datepicker table tr td.active:hover[disabled],
-.datepicker table tr td.active.disabled[disabled],
-.datepicker table tr td.active.disabled:hover[disabled] {
- background-color: #0044cc;
-}
-.datepicker table tr td.active:active,
-.datepicker table tr td.active:hover:active,
-.datepicker table tr td.active.disabled:active,
-.datepicker table tr td.active.disabled:hover:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active:hover.active,
-.datepicker table tr td.active.disabled.active,
-.datepicker table tr td.active.disabled:hover.active {
- background-color: #003399 \9;
-}
-.datepicker table tr td span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
-}
-.datepicker table tr td span:hover,
-.datepicker table tr td span.focused {
- background: #eee;
-}
-.datepicker table tr td span.disabled,
-.datepicker table tr td span.disabled:hover {
- background: none;
- color: #999;
- cursor: default;
-}
-.datepicker table tr td span.active,
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active.disabled:hover {
- background-color: #006dcc;
- background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
- background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
- background-image: linear-gradient(to bottom, #08c, #0044cc);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
- border-color: #0044cc #0044cc #002a80;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active:hover:hover,
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active.disabled:hover:hover,
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active:hover.disabled,
-.datepicker table tr td span.active.disabled.disabled,
-.datepicker table tr td span.active.disabled:hover.disabled,
-.datepicker table tr td span.active[disabled],
-.datepicker table tr td span.active:hover[disabled],
-.datepicker table tr td span.active.disabled[disabled],
-.datepicker table tr td span.active.disabled:hover[disabled] {
- background-color: #0044cc;
-}
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active {
- background-color: #003399 \9;
-}
-.datepicker table tr td span.old,
-.datepicker table tr td span.new {
- color: #999;
-}
-.datepicker .datepicker-switch {
- width: 145px;
-}
-.datepicker .datepicker-switch,
-.datepicker .prev,
-.datepicker .next,
-.datepicker tfoot tr th {
- cursor: pointer;
-}
-.datepicker .datepicker-switch:hover,
-.datepicker .prev:hover,
-.datepicker .next:hover,
-.datepicker tfoot tr th:hover {
- background: #eee;
-}
-.datepicker .prev.disabled,
-.datepicker .next.disabled {
- visibility: hidden;
-}
-.datepicker .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
-}
-.input-append.date .add-on,
-.input-prepend.date .add-on {
- cursor: pointer;
-}
-.input-append.date .add-on i,
-.input-prepend.date .add-on i {
- margin-top: 3px;
-}
-.input-daterange input {
- text-align: center;
-}
-.input-daterange input:first-child {
- -webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
-}
-.input-daterange input:last-child {
- -webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
-}
-.input-daterange .add-on {
- display: inline-block;
- width: auto;
- min-width: 16px;
- height: 18px;
- padding: 4px 5px;
- font-weight: normal;
- line-height: 18px;
- text-align: center;
- text-shadow: 0 1px 0 #fff;
- vertical-align: middle;
- background-color: #eee;
- border: 1px solid #ccc;
- margin-left: -5px;
- margin-right: -5px;
-}
-/*# sourceMappingURL=bootstrap-datepicker.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css.map b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css.map
deleted file mode 100755
index 7e08a2104..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["less/datepicker.less","build/build.less"],"names":[],"mappings":"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","sourcesContent":[".datepicker {\n\tpadding: 4px;\n\t.border-radius(@baseBorderRadius);\n\t&-inline {\n\t\twidth: 220px;\n\t}\n\tdirection: ltr;\n\t&-rtl {\n\t\tdirection: rtl;\n\t\t&.dropdown-menu { left: auto; }\n\t\ttable tr td span {\n\t\t\tfloat: right;\n\t\t}\n\t}\n\t&-dropdown {\n\t\ttop: 0;\n\t\tleft: 0;\n\t\t&:before {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 7px solid transparent;\n\t\t\tborder-right: 7px solid transparent;\n\t\t\tborder-bottom: 7px solid @grayLight;\n\t\t\tborder-top: 0;\n\t\t\tborder-bottom-color: rgba(0,0,0,.2);\n\t\t\tposition: absolute;\n\t\t}\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 6px solid transparent;\n\t\t\tborder-right: 6px solid transparent;\n\t\t\tborder-bottom: 6px solid @white;\n\t\t\tborder-top: 0;\n\t\t\tposition: absolute;\n\t\t}\n\t\t&.datepicker-orient-left:before { left: 6px; }\n\t\t&.datepicker-orient-left:after { left: 7px; }\n\t\t&.datepicker-orient-right:before { right: 6px; }\n\t\t&.datepicker-orient-right:after { right: 7px; }\n\t\t&.datepicker-orient-bottom:before { top: -7px; }\n\t\t&.datepicker-orient-bottom:after { top: -6px; }\n\t\t&.datepicker-orient-top:before {\n\t\t\tbottom: -7px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 7px solid @grayLight;\n\t\t}\n\t\t&.datepicker-orient-top:after {\n\t\t\tbottom: -6px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 6px solid @white;\n\t\t}\n\t}\n\ttable {\n\t\tmargin: 0;\n\t\t-webkit-touch-callout: none;\n\t\t-webkit-user-select: none;\n\t\t-khtml-user-select: none;\n\t\t-moz-user-select: none;\n\t\t-ms-user-select: none;\n\t\tuser-select: none;\n\t}\n\ttd, th {\n\t\ttext-align: center;\n\t\twidth: 20px;\n\t\theight: 20px;\n\t\t.border-radius(4px);\n\n\t\tborder: none;\n\t}\n\t// Inline display inside a table presents some problems with\n\t// border and background colors.\n\t.table-striped & table tr {\n\t\ttd, th {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\ttable tr td {\n\t\t&.day:hover,\n\t\t&.day.focused {\n\t\t\tbackground: @grayLighter;\n\t\t\tcursor: pointer;\n\t\t}\n\t\t&.old,\n\t\t&.new {\n\t\t\tcolor: @grayLight;\n\t\t}\n\t\t&.disabled,\n\t\t&.disabled:hover {\n\t\t\tbackground: none;\n\t\t\tcolor: @grayLight;\n\t\t\tcursor: default;\n\t\t}\n\t\t&.highlighted {\n\t\t\tbackground: @infoBackground;\n\t\t\tborder-radius: 0;\n\t\t}\n\t\t&.today,\n\t\t&.today:hover,\n\t\t&.today.disabled,\n\t\t&.today.disabled:hover {\n\t\t\t@todayBackground: lighten(@orange, 30%);\n\t\t\t.buttonBackground(@todayBackground, spin(@todayBackground, 20));\n\t\t\tcolor: #000;\n\t\t}\n\t\t&.today:hover:hover { // Thank bootstrap 2.0 for this selector...\n\t\t\t// TODO: Bump min BS to 2.1, use @textColor in buttonBackground above\n\t\t\tcolor: #000;\n\t\t}\n\t\t&.today.active:hover {\n\t\t\tcolor: #fff;\n\t\t}\n\t\t&.range,\n\t\t&.range:hover,\n\t\t&.range.disabled,\n\t\t&.range.disabled:hover {\n\t\t\tbackground: @grayLighter;\n\t\t\t.border-radius(0);\n\t\t}\n\t\t&.range.today,\n\t\t&.range.today:hover,\n\t\t&.range.today.disabled,\n\t\t&.range.today.disabled:hover {\n\t\t\t@todayBackground: mix(@orange, @grayLighter, 50%);\n\t\t\t.buttonBackground(@todayBackground, spin(@todayBackground, 20));\n\t\t\t.border-radius(0);\n\t\t}\n\t\t&.selected,\n\t\t&.selected:hover,\n\t\t&.selected.disabled,\n\t\t&.selected.disabled:hover {\n\t\t\t.buttonBackground(lighten(@grayLight, 10), darken(@grayLight, 10));\n\t\t\tcolor: #fff;\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\t&.active,\n\t\t&.active:hover,\n\t\t&.active.disabled,\n\t\t&.active.disabled:hover {\n\t\t\t.buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));\n\t\t\tcolor: #fff;\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\tspan {\n\t\t\tdisplay: block;\n\t\t\twidth: 23%;\n\t\t\theight: 54px;\n\t\t\tline-height: 54px;\n\t\t\tfloat: left;\n\t\t\tmargin: 1%;\n\t\t\tcursor: pointer;\n\t\t\t.border-radius(4px);\n\t\t\t&:hover,\n\t\t\t&.focused {\n\t\t\t\tbackground: @grayLighter;\n\t\t\t}\n\t\t\t&.disabled,\n\t\t\t&.disabled:hover {\n\t\t\t\tbackground: none;\n\t\t\t\tcolor: @grayLight;\n\t\t\t\tcursor: default;\n\t\t\t}\n\t\t\t&.active,\n\t\t\t&.active:hover,\n\t\t\t&.active.disabled,\n\t\t\t&.active.disabled:hover {\n\t\t\t\t.buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));\n\t\t\t\tcolor: #fff;\n\t\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t\t}\n\t\t\t&.old,\n\t\t\t&.new {\n\t\t\t\tcolor: @grayLight;\n\t\t\t}\n\t\t}\n\t}\n\n\t.datepicker-switch {\n\t\twidth: 145px;\n\t}\n\n\t.datepicker-switch,\n\t.prev,\n\t.next,\n\ttfoot tr th {\n\t\tcursor: pointer;\n\t\t&:hover {\n\t\t\tbackground: @grayLighter;\n\t\t}\n\t}\n\n\t.prev, .next {\n\t\t&.disabled {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\n\t// Basic styling for calendar-week cells\n\t.cw {\n\t\tfont-size: 10px;\n\t\twidth: 12px;\n\t\tpadding: 0 2px 0 5px;\n\t\tvertical-align: middle;\n\t}\n}\n.input-append,\n.input-prepend {\n\t&.date .add-on {\n\t\tcursor: pointer;\n\n\t\ti {\n\t\t\tmargin-top: 3px;\n\t\t}\n\t}\n}\n.input-daterange {\n\tinput {\n\t\ttext-align:center;\n\t}\n\tinput:first-child {\n\t\t.border-radius(3px 0 0 3px);\n\t}\n\tinput:last-child {\n\t\t.border-radius(0 3px 3px 0);\n\t}\n\t.add-on {\n\t\tdisplay: inline-block;\n\t\twidth: auto;\n\t\tmin-width: 16px;\n\t\theight: @baseLineHeight;\n\t\tpadding: 4px 5px;\n\t\tfont-weight: normal;\n\t\tline-height: @baseLineHeight;\n\t\ttext-align: center;\n\t\ttext-shadow: 0 1px 0 @white;\n\t\tvertical-align: middle;\n\t\tbackground-color: @grayLighter;\n\t\tborder: 1px solid #ccc;\n\t\tmargin-left: -5px;\n\t\tmargin-right: -5px;\n\t}\n}\n","// Datepicker .less buildfile. Includes select mixins/variables from bootstrap\n// and imports the included datepicker.less to output a minimal datepicker.css\n//\n// Usage:\n// lessc build.less datepicker.css\n//\n// Variables and mixins copied from bootstrap 2.0.2\n\n// Variables\n@grayLight: #999;\n@grayLighter: #eee;\n@white: #fff;\n@linkColor: #08c;\n@btnPrimaryBackground: @linkColor;\n@orange: #f89406;\n@infoBackground: #d9edf7;\n@baseLineHeight: 18px;\n@baseBorderRadius: 4px;\n\n// Mixins\n\n// Border Radius\n.border-radius(@radius: 5px) {\n -webkit-border-radius: @radius;\n -moz-border-radius: @radius;\n border-radius: @radius;\n}\n\n// Button backgrounds\n.buttonBackground(@startColor, @endColor) {\n .gradientBar(@startColor, @endColor);\n .reset-filter();\n &:hover, &:active, &.active, &.disabled, &[disabled] {\n background-color: @endColor;\n }\n &:active,\n &.active {\n background-color: darken(@endColor, 10%) e(\"\\9\");\n }\n}\n\n// Reset filters for IE\n.reset-filter() {\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n\n// Gradient Bar Colors for buttons and alerts\n.gradientBar(@primaryColor, @secondaryColor) {\n #gradient > .vertical(@primaryColor, @secondaryColor);\n border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);\n border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);\n}\n\n// Gradients\n#gradient {\n .vertical(@startColor: #555, @endColor: #333) {\n background-color: mix(@startColor, @endColor, 60%);\n background-image: -moz-linear-gradient(to bottom, @startColor, @endColor); // FF 3.6+\n background-image: -ms-linear-gradient(to bottom, @startColor, @endColor); // IE10\n background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+\n background-image: -webkit-linear-gradient(to bottom, @startColor, @endColor); // Safari 5.1+, Chrome 10+\n background-image: -o-linear-gradient(to bottom, @startColor, @endColor); // Opera 11.10\n background-image: linear-gradient(to bottom, @startColor, @endColor); // The standard\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",@startColor,@endColor)); // IE9 and down\n }\n}\n\n@import \"../less/datepicker.less\";\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css
deleted file mode 100755
index eb681513f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker-rtl{direction:rtl}.datepicker-rtl.dropdown-menu{left:auto}.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #999;border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-bottom:before{top:-7px}.datepicker-dropdown.datepicker-orient-bottom:after{top:-6px}.datepicker-dropdown.datepicker-orient-top:before{bottom:-7px;border-bottom:0;border-top:7px solid #999}.datepicker-dropdown.datepicker-orient-top:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day.focused,.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.new,.datepicker table tr td.old{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.highlighted{background:#d9edf7;border-radius:0}.datepicker table tr td.today,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today:hover{background-color:#fde19a;background-image:-moz-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-ms-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fdd49a),to(#fdf59a));background-image:-webkit-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-o-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:linear-gradient(to bottom,#fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today.disabled:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today:active,.datepicker table tr td.today:hover,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today:hover:active,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today[disabled]{background-color:#fdf59a}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today:active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active{background-color:#fbf069\9}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range:hover{background:#eee;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today:hover{background-color:#f3d17a;background-image:-moz-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-ms-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f3c17a),to(#f3e97a));background-image:-webkit-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-o-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:linear-gradient(to bottom,#f3c17a,#f3e97a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);border-color:#f3e97a #f3e97a #edde34;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today.disabled:hover[disabled],.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today:hover:hover,.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today[disabled]{background-color:#f3e97a}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active{background-color:#efe24b\9}.datepicker table tr td.selected,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected:hover{background-color:#9e9e9e;background-image:-moz-linear-gradient(to bottom,#b3b3b3,grey);background-image:-ms-linear-gradient(to bottom,#b3b3b3,grey);background-image:-webkit-gradient(linear,0 0,0 100%,from(#b3b3b3),to(grey));background-image:-webkit-linear-gradient(to bottom,#b3b3b3,grey);background-image:-o-linear-gradient(to bottom,#b3b3b3,grey);background-image:linear-gradient(to bottom,#b3b3b3,grey);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);border-color:grey grey #595959;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected.disabled:hover[disabled],.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected:hover:hover,.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected[disabled]{background-color:grey}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active{background-color:#666\9}.datepicker table tr td.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active:hover{background-color:#006dcc;background-image:-moz-linear-gradient(to bottom,#08c,#04c);background-image:-ms-linear-gradient(to bottom,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(to bottom,#08c,#04c);background-image:-o-linear-gradient(to bottom,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active.disabled:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active:active,.datepicker table tr td.active:hover,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active:hover:active,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active[disabled]{background-color:#04c}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active:active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active{background-color:#039\9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span.focused,.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{background-color:#006dcc;background-image:-moz-linear-gradient(to bottom,#08c,#04c);background-image:-ms-linear-gradient(to bottom,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(to bottom,#08c,#04c);background-image:-o-linear-gradient(to bottom,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active.disabled:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active[disabled]{background-color:#04c}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active{background-color:#039\9}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#999}.datepicker .datepicker-switch{width:145px}.datepicker .datepicker-switch,.datepicker .next,.datepicker .prev,.datepicker tfoot tr th{cursor:pointer}.datepicker .datepicker-switch:hover,.datepicker .next:hover,.datepicker .prev:hover,.datepicker tfoot tr th:hover{background:#eee}.datepicker .next.disabled,.datepicker .prev.disabled{visibility:hidden}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.input-append.date .add-on,.input-prepend.date .add-on{cursor:pointer}.input-append.date .add-on i,.input-prepend.date .add-on i{margin-top:3px}.input-daterange input{text-align:center}.input-daterange input:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-daterange input:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-daterange .add-on{display:inline-block;width:auto;min-width:16px;height:18px;padding:4px 5px;font-weight:400;line-height:18px;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#eee;border:1px solid #ccc;margin-left:-5px;margin-right:-5px}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css
deleted file mode 100755
index 0e7014851..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css
+++ /dev/null
@@ -1,510 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker {
- padding: 4px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- direction: ltr;
-}
-.datepicker-inline {
- width: 220px;
-}
-.datepicker-rtl {
- direction: rtl;
-}
-.datepicker-rtl.dropdown-menu {
- left: auto;
-}
-.datepicker-rtl table tr td span {
- float: right;
-}
-.datepicker-dropdown {
- top: 0;
- left: 0;
-}
-.datepicker-dropdown:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid #999;
- border-top: 0;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
-}
-.datepicker-dropdown:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-top: 0;
- position: absolute;
-}
-.datepicker-dropdown.datepicker-orient-left:before {
- left: 6px;
-}
-.datepicker-dropdown.datepicker-orient-left:after {
- left: 7px;
-}
-.datepicker-dropdown.datepicker-orient-right:before {
- right: 6px;
-}
-.datepicker-dropdown.datepicker-orient-right:after {
- right: 7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:before {
- top: -7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:after {
- top: -6px;
-}
-.datepicker-dropdown.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid #999;
-}
-.datepicker-dropdown.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid #fff;
-}
-.datepicker table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.datepicker td,
-.datepicker th {
- text-align: center;
- width: 20px;
- height: 20px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- border: none;
-}
-.table-striped .datepicker table tr td,
-.table-striped .datepicker table tr th {
- background-color: transparent;
-}
-.datepicker table tr td.day:hover,
-.datepicker table tr td.day.focused {
- background: #eee;
- cursor: pointer;
-}
-.datepicker table tr td.old,
-.datepicker table tr td.new {
- color: #999;
-}
-.datepicker table tr td.disabled,
-.datepicker table tr td.disabled:hover {
- background: none;
- color: #999;
- cursor: default;
-}
-.datepicker table tr td.highlighted {
- background: #d9edf7;
- border-radius: 0;
-}
-.datepicker table tr td.today,
-.datepicker table tr td.today:hover,
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today.disabled:hover {
- background-color: #fde19a;
- background-image: -moz-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -ms-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
- background-image: -webkit-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: -o-linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-image: linear-gradient(to bottom, #fdd49a, #fdf59a);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
- border-color: #fdf59a #fdf59a #fbed50;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #000;
-}
-.datepicker table tr td.today:hover,
-.datepicker table tr td.today:hover:hover,
-.datepicker table tr td.today.disabled:hover,
-.datepicker table tr td.today.disabled:hover:hover,
-.datepicker table tr td.today:active,
-.datepicker table tr td.today:hover:active,
-.datepicker table tr td.today.disabled:active,
-.datepicker table tr td.today.disabled:hover:active,
-.datepicker table tr td.today.active,
-.datepicker table tr td.today:hover.active,
-.datepicker table tr td.today.disabled.active,
-.datepicker table tr td.today.disabled:hover.active,
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today:hover.disabled,
-.datepicker table tr td.today.disabled.disabled,
-.datepicker table tr td.today.disabled:hover.disabled,
-.datepicker table tr td.today[disabled],
-.datepicker table tr td.today:hover[disabled],
-.datepicker table tr td.today.disabled[disabled],
-.datepicker table tr td.today.disabled:hover[disabled] {
- background-color: #fdf59a;
-}
-.datepicker table tr td.today:active,
-.datepicker table tr td.today:hover:active,
-.datepicker table tr td.today.disabled:active,
-.datepicker table tr td.today.disabled:hover:active,
-.datepicker table tr td.today.active,
-.datepicker table tr td.today:hover.active,
-.datepicker table tr td.today.disabled.active,
-.datepicker table tr td.today.disabled:hover.active {
- background-color: #fbf069 \9;
-}
-.datepicker table tr td.today:hover:hover {
- color: #000;
-}
-.datepicker table tr td.today.active:hover {
- color: #fff;
-}
-.datepicker table tr td.range,
-.datepicker table tr td.range:hover,
-.datepicker table tr td.range.disabled,
-.datepicker table tr td.range.disabled:hover {
- background: #eee;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-.datepicker table tr td.range.today,
-.datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today.disabled:hover {
- background-color: #f3d17a;
- background-image: -moz-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -ms-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));
- background-image: -webkit-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: -o-linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
- border-color: #f3e97a #f3e97a #edde34;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-.datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today:hover:hover,
-.datepicker table tr td.range.today.disabled:hover,
-.datepicker table tr td.range.today.disabled:hover:hover,
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today:hover:active,
-.datepicker table tr td.range.today.disabled:active,
-.datepicker table tr td.range.today.disabled:hover:active,
-.datepicker table tr td.range.today.active,
-.datepicker table tr td.range.today:hover.active,
-.datepicker table tr td.range.today.disabled.active,
-.datepicker table tr td.range.today.disabled:hover.active,
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today:hover.disabled,
-.datepicker table tr td.range.today.disabled.disabled,
-.datepicker table tr td.range.today.disabled:hover.disabled,
-.datepicker table tr td.range.today[disabled],
-.datepicker table tr td.range.today:hover[disabled],
-.datepicker table tr td.range.today.disabled[disabled],
-.datepicker table tr td.range.today.disabled:hover[disabled] {
- background-color: #f3e97a;
-}
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today:hover:active,
-.datepicker table tr td.range.today.disabled:active,
-.datepicker table tr td.range.today.disabled:hover:active,
-.datepicker table tr td.range.today.active,
-.datepicker table tr td.range.today:hover.active,
-.datepicker table tr td.range.today.disabled.active,
-.datepicker table tr td.range.today.disabled:hover.active {
- background-color: #efe24b \9;
-}
-.datepicker table tr td.selected,
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected.disabled,
-.datepicker table tr td.selected.disabled:hover {
- background-color: #9e9e9e;
- background-image: -moz-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -ms-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080));
- background-image: -webkit-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: -o-linear-gradient(to bottom, #b3b3b3, #808080);
- background-image: linear-gradient(to bottom, #b3b3b3, #808080);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
- border-color: #808080 #808080 #595959;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected:hover:hover,
-.datepicker table tr td.selected.disabled:hover,
-.datepicker table tr td.selected.disabled:hover:hover,
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected:hover:active,
-.datepicker table tr td.selected.disabled:active,
-.datepicker table tr td.selected.disabled:hover:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected:hover.active,
-.datepicker table tr td.selected.disabled.active,
-.datepicker table tr td.selected.disabled:hover.active,
-.datepicker table tr td.selected.disabled,
-.datepicker table tr td.selected:hover.disabled,
-.datepicker table tr td.selected.disabled.disabled,
-.datepicker table tr td.selected.disabled:hover.disabled,
-.datepicker table tr td.selected[disabled],
-.datepicker table tr td.selected:hover[disabled],
-.datepicker table tr td.selected.disabled[disabled],
-.datepicker table tr td.selected.disabled:hover[disabled] {
- background-color: #808080;
-}
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected:hover:active,
-.datepicker table tr td.selected.disabled:active,
-.datepicker table tr td.selected.disabled:hover:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected:hover.active,
-.datepicker table tr td.selected.disabled.active,
-.datepicker table tr td.selected.disabled:hover.active {
- background-color: #666666 \9;
-}
-.datepicker table tr td.active,
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active.disabled,
-.datepicker table tr td.active.disabled:hover {
- background-color: #006dcc;
- background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
- background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
- background-image: linear-gradient(to bottom, #08c, #0044cc);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
- border-color: #0044cc #0044cc #002a80;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active:hover:hover,
-.datepicker table tr td.active.disabled:hover,
-.datepicker table tr td.active.disabled:hover:hover,
-.datepicker table tr td.active:active,
-.datepicker table tr td.active:hover:active,
-.datepicker table tr td.active.disabled:active,
-.datepicker table tr td.active.disabled:hover:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active:hover.active,
-.datepicker table tr td.active.disabled.active,
-.datepicker table tr td.active.disabled:hover.active,
-.datepicker table tr td.active.disabled,
-.datepicker table tr td.active:hover.disabled,
-.datepicker table tr td.active.disabled.disabled,
-.datepicker table tr td.active.disabled:hover.disabled,
-.datepicker table tr td.active[disabled],
-.datepicker table tr td.active:hover[disabled],
-.datepicker table tr td.active.disabled[disabled],
-.datepicker table tr td.active.disabled:hover[disabled] {
- background-color: #0044cc;
-}
-.datepicker table tr td.active:active,
-.datepicker table tr td.active:hover:active,
-.datepicker table tr td.active.disabled:active,
-.datepicker table tr td.active.disabled:hover:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active:hover.active,
-.datepicker table tr td.active.disabled.active,
-.datepicker table tr td.active.disabled:hover.active {
- background-color: #003399 \9;
-}
-.datepicker table tr td span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
-}
-.datepicker table tr td span:hover,
-.datepicker table tr td span.focused {
- background: #eee;
-}
-.datepicker table tr td span.disabled,
-.datepicker table tr td span.disabled:hover {
- background: none;
- color: #999;
- cursor: default;
-}
-.datepicker table tr td span.active,
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active.disabled:hover {
- background-color: #006dcc;
- background-image: -moz-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -ms-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0044cc));
- background-image: -webkit-linear-gradient(to bottom, #08c, #0044cc);
- background-image: -o-linear-gradient(to bottom, #08c, #0044cc);
- background-image: linear-gradient(to bottom, #08c, #0044cc);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
- border-color: #0044cc #0044cc #002a80;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active:hover:hover,
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active.disabled:hover:hover,
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active:hover.disabled,
-.datepicker table tr td span.active.disabled.disabled,
-.datepicker table tr td span.active.disabled:hover.disabled,
-.datepicker table tr td span.active[disabled],
-.datepicker table tr td span.active:hover[disabled],
-.datepicker table tr td span.active.disabled[disabled],
-.datepicker table tr td span.active.disabled:hover[disabled] {
- background-color: #0044cc;
-}
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active {
- background-color: #003399 \9;
-}
-.datepicker table tr td span.old,
-.datepicker table tr td span.new {
- color: #999;
-}
-.datepicker .datepicker-switch {
- width: 145px;
-}
-.datepicker .datepicker-switch,
-.datepicker .prev,
-.datepicker .next,
-.datepicker tfoot tr th {
- cursor: pointer;
-}
-.datepicker .datepicker-switch:hover,
-.datepicker .prev:hover,
-.datepicker .next:hover,
-.datepicker tfoot tr th:hover {
- background: #eee;
-}
-.datepicker .prev.disabled,
-.datepicker .next.disabled {
- visibility: hidden;
-}
-.datepicker .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
-}
-.input-append.date .add-on,
-.input-prepend.date .add-on {
- cursor: pointer;
-}
-.input-append.date .add-on i,
-.input-prepend.date .add-on i {
- margin-top: 3px;
-}
-.input-daterange input {
- text-align: center;
-}
-.input-daterange input:first-child {
- -webkit-border-radius: 3px 0 0 3px;
- -moz-border-radius: 3px 0 0 3px;
- border-radius: 3px 0 0 3px;
-}
-.input-daterange input:last-child {
- -webkit-border-radius: 0 3px 3px 0;
- -moz-border-radius: 0 3px 3px 0;
- border-radius: 0 3px 3px 0;
-}
-.input-daterange .add-on {
- display: inline-block;
- width: auto;
- min-width: 16px;
- height: 20px;
- padding: 4px 5px;
- font-weight: normal;
- line-height: 20px;
- text-align: center;
- text-shadow: 0 1px 0 #fff;
- vertical-align: middle;
- background-color: #eee;
- border: 1px solid #ccc;
- margin-left: -5px;
- margin-right: -5px;
-}
-.datepicker.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: 1000;
- float: left;
- display: none;
- min-width: 160px;
- list-style: none;
- background-color: #fff;
- border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, 0.2);
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
- *border-right-width: 2px;
- *border-bottom-width: 2px;
- color: #333333;
- font-size: 13px;
- line-height: 20px;
-}
-.datepicker.dropdown-menu th,
-.datepicker.datepicker-inline th,
-.datepicker.dropdown-menu td,
-.datepicker.datepicker-inline td {
- padding: 4px 5px;
-}
-/*# sourceMappingURL=bootstrap-datepicker.standalone.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css.map b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css.map
deleted file mode 100755
index eab120c71..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["less/datepicker.less","build/build.less","build/build_standalone.less"],"names":[],"mappings":"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","sourcesContent":[".datepicker {\n\tpadding: 4px;\n\t.border-radius(@baseBorderRadius);\n\t&-inline {\n\t\twidth: 220px;\n\t}\n\tdirection: ltr;\n\t&-rtl {\n\t\tdirection: rtl;\n\t\t&.dropdown-menu { left: auto; }\n\t\ttable tr td span {\n\t\t\tfloat: right;\n\t\t}\n\t}\n\t&-dropdown {\n\t\ttop: 0;\n\t\tleft: 0;\n\t\t&:before {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 7px solid transparent;\n\t\t\tborder-right: 7px solid transparent;\n\t\t\tborder-bottom: 7px solid @grayLight;\n\t\t\tborder-top: 0;\n\t\t\tborder-bottom-color: rgba(0,0,0,.2);\n\t\t\tposition: absolute;\n\t\t}\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 6px solid transparent;\n\t\t\tborder-right: 6px solid transparent;\n\t\t\tborder-bottom: 6px solid @white;\n\t\t\tborder-top: 0;\n\t\t\tposition: absolute;\n\t\t}\n\t\t&.datepicker-orient-left:before { left: 6px; }\n\t\t&.datepicker-orient-left:after { left: 7px; }\n\t\t&.datepicker-orient-right:before { right: 6px; }\n\t\t&.datepicker-orient-right:after { right: 7px; }\n\t\t&.datepicker-orient-bottom:before { top: -7px; }\n\t\t&.datepicker-orient-bottom:after { top: -6px; }\n\t\t&.datepicker-orient-top:before {\n\t\t\tbottom: -7px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 7px solid @grayLight;\n\t\t}\n\t\t&.datepicker-orient-top:after {\n\t\t\tbottom: -6px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 6px solid @white;\n\t\t}\n\t}\n\ttable {\n\t\tmargin: 0;\n\t\t-webkit-touch-callout: none;\n\t\t-webkit-user-select: none;\n\t\t-khtml-user-select: none;\n\t\t-moz-user-select: none;\n\t\t-ms-user-select: none;\n\t\tuser-select: none;\n\t}\n\ttd, th {\n\t\ttext-align: center;\n\t\twidth: 20px;\n\t\theight: 20px;\n\t\t.border-radius(4px);\n\n\t\tborder: none;\n\t}\n\t// Inline display inside a table presents some problems with\n\t// border and background colors.\n\t.table-striped & table tr {\n\t\ttd, th {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\ttable tr td {\n\t\t&.day:hover,\n\t\t&.day.focused {\n\t\t\tbackground: @grayLighter;\n\t\t\tcursor: pointer;\n\t\t}\n\t\t&.old,\n\t\t&.new {\n\t\t\tcolor: @grayLight;\n\t\t}\n\t\t&.disabled,\n\t\t&.disabled:hover {\n\t\t\tbackground: none;\n\t\t\tcolor: @grayLight;\n\t\t\tcursor: default;\n\t\t}\n\t\t&.highlighted {\n\t\t\tbackground: @infoBackground;\n\t\t\tborder-radius: 0;\n\t\t}\n\t\t&.today,\n\t\t&.today:hover,\n\t\t&.today.disabled,\n\t\t&.today.disabled:hover {\n\t\t\t@todayBackground: lighten(@orange, 30%);\n\t\t\t.buttonBackground(@todayBackground, spin(@todayBackground, 20));\n\t\t\tcolor: #000;\n\t\t}\n\t\t&.today:hover:hover { // Thank bootstrap 2.0 for this selector...\n\t\t\t// TODO: Bump min BS to 2.1, use @textColor in buttonBackground above\n\t\t\tcolor: #000;\n\t\t}\n\t\t&.today.active:hover {\n\t\t\tcolor: #fff;\n\t\t}\n\t\t&.range,\n\t\t&.range:hover,\n\t\t&.range.disabled,\n\t\t&.range.disabled:hover {\n\t\t\tbackground: @grayLighter;\n\t\t\t.border-radius(0);\n\t\t}\n\t\t&.range.today,\n\t\t&.range.today:hover,\n\t\t&.range.today.disabled,\n\t\t&.range.today.disabled:hover {\n\t\t\t@todayBackground: mix(@orange, @grayLighter, 50%);\n\t\t\t.buttonBackground(@todayBackground, spin(@todayBackground, 20));\n\t\t\t.border-radius(0);\n\t\t}\n\t\t&.selected,\n\t\t&.selected:hover,\n\t\t&.selected.disabled,\n\t\t&.selected.disabled:hover {\n\t\t\t.buttonBackground(lighten(@grayLight, 10), darken(@grayLight, 10));\n\t\t\tcolor: #fff;\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\t&.active,\n\t\t&.active:hover,\n\t\t&.active.disabled,\n\t\t&.active.disabled:hover {\n\t\t\t.buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));\n\t\t\tcolor: #fff;\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\tspan {\n\t\t\tdisplay: block;\n\t\t\twidth: 23%;\n\t\t\theight: 54px;\n\t\t\tline-height: 54px;\n\t\t\tfloat: left;\n\t\t\tmargin: 1%;\n\t\t\tcursor: pointer;\n\t\t\t.border-radius(4px);\n\t\t\t&:hover,\n\t\t\t&.focused {\n\t\t\t\tbackground: @grayLighter;\n\t\t\t}\n\t\t\t&.disabled,\n\t\t\t&.disabled:hover {\n\t\t\t\tbackground: none;\n\t\t\t\tcolor: @grayLight;\n\t\t\t\tcursor: default;\n\t\t\t}\n\t\t\t&.active,\n\t\t\t&.active:hover,\n\t\t\t&.active.disabled,\n\t\t\t&.active.disabled:hover {\n\t\t\t\t.buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));\n\t\t\t\tcolor: #fff;\n\t\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t\t}\n\t\t\t&.old,\n\t\t\t&.new {\n\t\t\t\tcolor: @grayLight;\n\t\t\t}\n\t\t}\n\t}\n\n\t.datepicker-switch {\n\t\twidth: 145px;\n\t}\n\n\t.datepicker-switch,\n\t.prev,\n\t.next,\n\ttfoot tr th {\n\t\tcursor: pointer;\n\t\t&:hover {\n\t\t\tbackground: @grayLighter;\n\t\t}\n\t}\n\n\t.prev, .next {\n\t\t&.disabled {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\n\t// Basic styling for calendar-week cells\n\t.cw {\n\t\tfont-size: 10px;\n\t\twidth: 12px;\n\t\tpadding: 0 2px 0 5px;\n\t\tvertical-align: middle;\n\t}\n}\n.input-append,\n.input-prepend {\n\t&.date .add-on {\n\t\tcursor: pointer;\n\n\t\ti {\n\t\t\tmargin-top: 3px;\n\t\t}\n\t}\n}\n.input-daterange {\n\tinput {\n\t\ttext-align:center;\n\t}\n\tinput:first-child {\n\t\t.border-radius(3px 0 0 3px);\n\t}\n\tinput:last-child {\n\t\t.border-radius(0 3px 3px 0);\n\t}\n\t.add-on {\n\t\tdisplay: inline-block;\n\t\twidth: auto;\n\t\tmin-width: 16px;\n\t\theight: @baseLineHeight;\n\t\tpadding: 4px 5px;\n\t\tfont-weight: normal;\n\t\tline-height: @baseLineHeight;\n\t\ttext-align: center;\n\t\ttext-shadow: 0 1px 0 @white;\n\t\tvertical-align: middle;\n\t\tbackground-color: @grayLighter;\n\t\tborder: 1px solid #ccc;\n\t\tmargin-left: -5px;\n\t\tmargin-right: -5px;\n\t}\n}\n","// Datepicker .less buildfile. Includes select mixins/variables from bootstrap\n// and imports the included datepicker.less to output a minimal datepicker.css\n//\n// Usage:\n// lessc build.less datepicker.css\n//\n// Variables and mixins copied from bootstrap 2.0.2\n\n// Variables\n@grayLight: #999;\n@grayLighter: #eee;\n@white: #fff;\n@linkColor: #08c;\n@btnPrimaryBackground: @linkColor;\n@orange: #f89406;\n@infoBackground: #d9edf7;\n@baseLineHeight: 18px;\n@baseBorderRadius: 4px;\n\n// Mixins\n\n// Border Radius\n.border-radius(@radius: 5px) {\n -webkit-border-radius: @radius;\n -moz-border-radius: @radius;\n border-radius: @radius;\n}\n\n// Button backgrounds\n.buttonBackground(@startColor, @endColor) {\n .gradientBar(@startColor, @endColor);\n .reset-filter();\n &:hover, &:active, &.active, &.disabled, &[disabled] {\n background-color: @endColor;\n }\n &:active,\n &.active {\n background-color: darken(@endColor, 10%) e(\"\\9\");\n }\n}\n\n// Reset filters for IE\n.reset-filter() {\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n\n// Gradient Bar Colors for buttons and alerts\n.gradientBar(@primaryColor, @secondaryColor) {\n #gradient > .vertical(@primaryColor, @secondaryColor);\n border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);\n border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);\n}\n\n// Gradients\n#gradient {\n .vertical(@startColor: #555, @endColor: #333) {\n background-color: mix(@startColor, @endColor, 60%);\n background-image: -moz-linear-gradient(to bottom, @startColor, @endColor); // FF 3.6+\n background-image: -ms-linear-gradient(to bottom, @startColor, @endColor); // IE10\n background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+\n background-image: -webkit-linear-gradient(to bottom, @startColor, @endColor); // Safari 5.1+, Chrome 10+\n background-image: -o-linear-gradient(to bottom, @startColor, @endColor); // Opera 11.10\n background-image: linear-gradient(to bottom, @startColor, @endColor); // The standard\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",@startColor,@endColor)); // IE9 and down\n }\n}\n\n@import \"../less/datepicker.less\";\n","// Datepicker standalone .less buildfile. Includes all necessary mixins/variables/rules from bootstrap\n// and imports the included datepicker.less to output a minimal standalone datepicker.css\n//\n// Usage:\n// lessc build_standalone.less datepicker.css\n//\n// Variables, mixins, and rules copied from bootstrap 2.0.2\n\n@import \"build.less\";\n\n// Dropdown css\n\n@zindexDropdown: 1000;\n@grayDark: #333;\n@baseLineHeight: 20px;\n@tableBackground: transparent; // overall background-color\n@dropdownBackground: @white;\n@dropdownBorder: rgba(0,0,0,.2);\n@dropdownLinkColor: @grayDark;\n@dropdownLinkColorHover: @white;\n@dropdownLinkBackgroundHover: @linkColor;\n\n// Drop shadows\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow;\n -moz-box-shadow: @shadow;\n box-shadow: @shadow;\n}\n\n// The dropdown menu (ul)\n// ----------------------\n.datepicker{\n &.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindexDropdown;\n float: left;\n display: none; // none by default, but block on \"open\" of the menu\n min-width: 160px;\n list-style: none;\n background-color: @dropdownBackground;\n border: 1px solid #ccc;\n border: 1px solid rgba(0,0,0,.2);\n .border-radius(5px);\n .box-shadow(0 5px 10px rgba(0,0,0,.2));\n -webkit-background-clip: padding-box;\n -moz-background-clip: padding;\n background-clip: padding-box;\n *border-right-width: 2px;\n *border-bottom-width: 2px;\n\n // Normally inherited from bootstrap's `body`\n color: #333333;\n font-size:13px;\n line-height: @baseLineHeight;\n }\n\n &.dropdown-menu, &.datepicker-inline {\n th, td {\n padding: 4px 5px;\n }\n }\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.min.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.min.css
deleted file mode 100755
index 1dcc5ddd9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker-rtl{direction:rtl}.datepicker-rtl.dropdown-menu{left:auto}.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #999;border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-bottom:before{top:-7px}.datepicker-dropdown.datepicker-orient-bottom:after{top:-6px}.datepicker-dropdown.datepicker-orient-top:before{bottom:-7px;border-bottom:0;border-top:7px solid #999}.datepicker-dropdown.datepicker-orient-top:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day.focused,.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.new,.datepicker table tr td.old{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.highlighted{background:#d9edf7;border-radius:0}.datepicker table tr td.today,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today:hover{background-color:#fde19a;background-image:-moz-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-ms-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fdd49a),to(#fdf59a));background-image:-webkit-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:-o-linear-gradient(to bottom,#fdd49a,#fdf59a);background-image:linear-gradient(to bottom,#fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today.disabled:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today:active,.datepicker table tr td.today:hover,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today:hover:active,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today[disabled]{background-color:#fdf59a}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today:active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active{background-color:#fbf069\9}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range:hover{background:#eee;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today:hover{background-color:#f3d17a;background-image:-moz-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-ms-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f3c17a),to(#f3e97a));background-image:-webkit-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:-o-linear-gradient(to bottom,#f3c17a,#f3e97a);background-image:linear-gradient(to bottom,#f3c17a,#f3e97a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);border-color:#f3e97a #f3e97a #edde34;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today.disabled:hover[disabled],.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today:hover:hover,.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today[disabled]{background-color:#f3e97a}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active{background-color:#efe24b\9}.datepicker table tr td.selected,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected:hover{background-color:#9e9e9e;background-image:-moz-linear-gradient(to bottom,#b3b3b3,grey);background-image:-ms-linear-gradient(to bottom,#b3b3b3,grey);background-image:-webkit-gradient(linear,0 0,0 100%,from(#b3b3b3),to(grey));background-image:-webkit-linear-gradient(to bottom,#b3b3b3,grey);background-image:-o-linear-gradient(to bottom,#b3b3b3,grey);background-image:linear-gradient(to bottom,#b3b3b3,grey);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);border-color:grey grey #595959;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected.disabled:hover[disabled],.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected:hover:hover,.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected[disabled]{background-color:grey}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active{background-color:#666\9}.datepicker table tr td.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active:hover{background-color:#006dcc;background-image:-moz-linear-gradient(to bottom,#08c,#04c);background-image:-ms-linear-gradient(to bottom,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(to bottom,#08c,#04c);background-image:-o-linear-gradient(to bottom,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active.disabled:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active:active,.datepicker table tr td.active:hover,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active:hover:active,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active[disabled]{background-color:#04c}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active:active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active{background-color:#039\9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span.focused,.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{background-color:#006dcc;background-image:-moz-linear-gradient(to bottom,#08c,#04c);background-image:-ms-linear-gradient(to bottom,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(to bottom,#08c,#04c);background-image:-o-linear-gradient(to bottom,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active.disabled:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active[disabled]{background-color:#04c}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active{background-color:#039\9}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#999}.datepicker .datepicker-switch{width:145px}.datepicker .datepicker-switch,.datepicker .next,.datepicker .prev,.datepicker tfoot tr th{cursor:pointer}.datepicker .datepicker-switch:hover,.datepicker .next:hover,.datepicker .prev:hover,.datepicker tfoot tr th:hover{background:#eee}.datepicker .next.disabled,.datepicker .prev.disabled{visibility:hidden}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.input-append.date .add-on,.input-prepend.date .add-on{cursor:pointer}.input-append.date .add-on i,.input-prepend.date .add-on i{margin-top:3px}.input-daterange input{text-align:center}.input-daterange input:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-daterange input:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-daterange .add-on{display:inline-block;width:auto;min-width:16px;height:20px;padding:4px 5px;font-weight:400;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#eee;border:1px solid #ccc;margin-left:-5px;margin-right:-5px}.datepicker.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;float:left;display:none;min-width:160px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;*border-right-width:2px;*border-bottom-width:2px;color:#333;font-size:13px;line-height:20px}.datepicker.datepicker-inline td,.datepicker.datepicker-inline th,.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{padding:4px 5px}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css
deleted file mode 100755
index a98157c29..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css
+++ /dev/null
@@ -1,683 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker {
- border-radius: 4px;
- direction: ltr;
-}
-.datepicker-inline {
- width: 220px;
-}
-.datepicker-rtl {
- direction: rtl;
-}
-.datepicker-rtl.dropdown-menu {
- left: auto;
-}
-.datepicker-rtl table tr td span {
- float: right;
-}
-.datepicker-dropdown {
- top: 0;
- left: 0;
- padding: 4px;
-}
-.datepicker-dropdown:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid rgba(0, 0, 0, 0.15);
- border-top: 0;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
-}
-.datepicker-dropdown:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-top: 0;
- position: absolute;
-}
-.datepicker-dropdown.datepicker-orient-left:before {
- left: 6px;
-}
-.datepicker-dropdown.datepicker-orient-left:after {
- left: 7px;
-}
-.datepicker-dropdown.datepicker-orient-right:before {
- right: 6px;
-}
-.datepicker-dropdown.datepicker-orient-right:after {
- right: 7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:before {
- top: -7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:after {
- top: -6px;
-}
-.datepicker-dropdown.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid rgba(0, 0, 0, 0.15);
-}
-.datepicker-dropdown.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid #fff;
-}
-.datepicker table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.datepicker table tr td,
-.datepicker table tr th {
- text-align: center;
- width: 30px;
- height: 30px;
- border-radius: 4px;
- border: none;
-}
-.table-striped .datepicker table tr td,
-.table-striped .datepicker table tr th {
- background-color: transparent;
-}
-.datepicker table tr td.old,
-.datepicker table tr td.new {
- color: #777777;
-}
-.datepicker table tr td.day:hover,
-.datepicker table tr td.focused {
- background: #eeeeee;
- cursor: pointer;
-}
-.datepicker table tr td.disabled,
-.datepicker table tr td.disabled:hover {
- background: none;
- color: #777777;
- cursor: default;
-}
-.datepicker table tr td.highlighted {
- color: #000;
- background-color: #d9edf7;
- border-color: #85c5e5;
- border-radius: 0;
-}
-.datepicker table tr td.highlighted:focus,
-.datepicker table tr td.highlighted.focus {
- color: #000;
- background-color: #afd9ee;
- border-color: #298fc2;
-}
-.datepicker table tr td.highlighted:hover {
- color: #000;
- background-color: #afd9ee;
- border-color: #52addb;
-}
-.datepicker table tr td.highlighted:active,
-.datepicker table tr td.highlighted.active {
- color: #000;
- background-color: #afd9ee;
- border-color: #52addb;
-}
-.datepicker table tr td.highlighted:active:hover,
-.datepicker table tr td.highlighted.active:hover,
-.datepicker table tr td.highlighted:active:focus,
-.datepicker table tr td.highlighted.active:focus,
-.datepicker table tr td.highlighted:active.focus,
-.datepicker table tr td.highlighted.active.focus {
- color: #000;
- background-color: #91cbe8;
- border-color: #298fc2;
-}
-.datepicker table tr td.highlighted.disabled:hover,
-.datepicker table tr td.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.highlighted:hover,
-.datepicker table tr td.highlighted.disabled:focus,
-.datepicker table tr td.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.highlighted:focus,
-.datepicker table tr td.highlighted.disabled.focus,
-.datepicker table tr td.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.highlighted.focus {
- background-color: #d9edf7;
- border-color: #85c5e5;
-}
-.datepicker table tr td.highlighted.focused {
- background: #afd9ee;
-}
-.datepicker table tr td.highlighted.disabled,
-.datepicker table tr td.highlighted.disabled:active {
- background: #d9edf7;
- color: #777777;
-}
-.datepicker table tr td.today {
- color: #000;
- background-color: #ffdb99;
- border-color: #ffb733;
-}
-.datepicker table tr td.today:focus,
-.datepicker table tr td.today.focus {
- color: #000;
- background-color: #ffc966;
- border-color: #b37400;
-}
-.datepicker table tr td.today:hover {
- color: #000;
- background-color: #ffc966;
- border-color: #f59e00;
-}
-.datepicker table tr td.today:active,
-.datepicker table tr td.today.active {
- color: #000;
- background-color: #ffc966;
- border-color: #f59e00;
-}
-.datepicker table tr td.today:active:hover,
-.datepicker table tr td.today.active:hover,
-.datepicker table tr td.today:active:focus,
-.datepicker table tr td.today.active:focus,
-.datepicker table tr td.today:active.focus,
-.datepicker table tr td.today.active.focus {
- color: #000;
- background-color: #ffbc42;
- border-color: #b37400;
-}
-.datepicker table tr td.today.disabled:hover,
-.datepicker table tr td.today[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.today:hover,
-.datepicker table tr td.today.disabled:focus,
-.datepicker table tr td.today[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.today:focus,
-.datepicker table tr td.today.disabled.focus,
-.datepicker table tr td.today[disabled].focus,
-fieldset[disabled] .datepicker table tr td.today.focus {
- background-color: #ffdb99;
- border-color: #ffb733;
-}
-.datepicker table tr td.today.focused {
- background: #ffc966;
-}
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today.disabled:active {
- background: #ffdb99;
- color: #777777;
-}
-.datepicker table tr td.range {
- color: #000;
- background-color: #eeeeee;
- border-color: #bbbbbb;
- border-radius: 0;
-}
-.datepicker table tr td.range:focus,
-.datepicker table tr td.range.focus {
- color: #000;
- background-color: #d5d5d5;
- border-color: #7c7c7c;
-}
-.datepicker table tr td.range:hover {
- color: #000;
- background-color: #d5d5d5;
- border-color: #9d9d9d;
-}
-.datepicker table tr td.range:active,
-.datepicker table tr td.range.active {
- color: #000;
- background-color: #d5d5d5;
- border-color: #9d9d9d;
-}
-.datepicker table tr td.range:active:hover,
-.datepicker table tr td.range.active:hover,
-.datepicker table tr td.range:active:focus,
-.datepicker table tr td.range.active:focus,
-.datepicker table tr td.range:active.focus,
-.datepicker table tr td.range.active.focus {
- color: #000;
- background-color: #c3c3c3;
- border-color: #7c7c7c;
-}
-.datepicker table tr td.range.disabled:hover,
-.datepicker table tr td.range[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range:hover,
-.datepicker table tr td.range.disabled:focus,
-.datepicker table tr td.range[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range:focus,
-.datepicker table tr td.range.disabled.focus,
-.datepicker table tr td.range[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.focus {
- background-color: #eeeeee;
- border-color: #bbbbbb;
-}
-.datepicker table tr td.range.focused {
- background: #d5d5d5;
-}
-.datepicker table tr td.range.disabled,
-.datepicker table tr td.range.disabled:active {
- background: #eeeeee;
- color: #777777;
-}
-.datepicker table tr td.range.highlighted {
- color: #000;
- background-color: #e4eef3;
- border-color: #9dc1d3;
-}
-.datepicker table tr td.range.highlighted:focus,
-.datepicker table tr td.range.highlighted.focus {
- color: #000;
- background-color: #c1d7e3;
- border-color: #4b88a6;
-}
-.datepicker table tr td.range.highlighted:hover {
- color: #000;
- background-color: #c1d7e3;
- border-color: #73a6c0;
-}
-.datepicker table tr td.range.highlighted:active,
-.datepicker table tr td.range.highlighted.active {
- color: #000;
- background-color: #c1d7e3;
- border-color: #73a6c0;
-}
-.datepicker table tr td.range.highlighted:active:hover,
-.datepicker table tr td.range.highlighted.active:hover,
-.datepicker table tr td.range.highlighted:active:focus,
-.datepicker table tr td.range.highlighted.active:focus,
-.datepicker table tr td.range.highlighted:active.focus,
-.datepicker table tr td.range.highlighted.active.focus {
- color: #000;
- background-color: #a8c8d8;
- border-color: #4b88a6;
-}
-.datepicker table tr td.range.highlighted.disabled:hover,
-.datepicker table tr td.range.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range.highlighted:hover,
-.datepicker table tr td.range.highlighted.disabled:focus,
-.datepicker table tr td.range.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range.highlighted:focus,
-.datepicker table tr td.range.highlighted.disabled.focus,
-.datepicker table tr td.range.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.highlighted.focus {
- background-color: #e4eef3;
- border-color: #9dc1d3;
-}
-.datepicker table tr td.range.highlighted.focused {
- background: #c1d7e3;
-}
-.datepicker table tr td.range.highlighted.disabled,
-.datepicker table tr td.range.highlighted.disabled:active {
- background: #e4eef3;
- color: #777777;
-}
-.datepicker table tr td.range.today {
- color: #000;
- background-color: #f7ca77;
- border-color: #f1a417;
-}
-.datepicker table tr td.range.today:focus,
-.datepicker table tr td.range.today.focus {
- color: #000;
- background-color: #f4b747;
- border-color: #815608;
-}
-.datepicker table tr td.range.today:hover {
- color: #000;
- background-color: #f4b747;
- border-color: #bf800c;
-}
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today.active {
- color: #000;
- background-color: #f4b747;
- border-color: #bf800c;
-}
-.datepicker table tr td.range.today:active:hover,
-.datepicker table tr td.range.today.active:hover,
-.datepicker table tr td.range.today:active:focus,
-.datepicker table tr td.range.today.active:focus,
-.datepicker table tr td.range.today:active.focus,
-.datepicker table tr td.range.today.active.focus {
- color: #000;
- background-color: #f2aa25;
- border-color: #815608;
-}
-.datepicker table tr td.range.today.disabled:hover,
-.datepicker table tr td.range.today[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today.disabled:focus,
-.datepicker table tr td.range.today[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range.today:focus,
-.datepicker table tr td.range.today.disabled.focus,
-.datepicker table tr td.range.today[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.today.focus {
- background-color: #f7ca77;
- border-color: #f1a417;
-}
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today.disabled:active {
- background: #f7ca77;
- color: #777777;
-}
-.datepicker table tr td.selected,
-.datepicker table tr td.selected.highlighted {
- color: #fff;
- background-color: #777777;
- border-color: #555555;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.selected:focus,
-.datepicker table tr td.selected.highlighted:focus,
-.datepicker table tr td.selected.focus,
-.datepicker table tr td.selected.highlighted.focus {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #161616;
-}
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected.highlighted:hover {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #373737;
-}
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected.highlighted:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected.highlighted.active {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #373737;
-}
-.datepicker table tr td.selected:active:hover,
-.datepicker table tr td.selected.highlighted:active:hover,
-.datepicker table tr td.selected.active:hover,
-.datepicker table tr td.selected.highlighted.active:hover,
-.datepicker table tr td.selected:active:focus,
-.datepicker table tr td.selected.highlighted:active:focus,
-.datepicker table tr td.selected.active:focus,
-.datepicker table tr td.selected.highlighted.active:focus,
-.datepicker table tr td.selected:active.focus,
-.datepicker table tr td.selected.highlighted:active.focus,
-.datepicker table tr td.selected.active.focus,
-.datepicker table tr td.selected.highlighted.active.focus {
- color: #fff;
- background-color: #4c4c4c;
- border-color: #161616;
-}
-.datepicker table tr td.selected.disabled:hover,
-.datepicker table tr td.selected.highlighted.disabled:hover,
-.datepicker table tr td.selected[disabled]:hover,
-.datepicker table tr td.selected.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.selected:hover,
-fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,
-.datepicker table tr td.selected.disabled:focus,
-.datepicker table tr td.selected.highlighted.disabled:focus,
-.datepicker table tr td.selected[disabled]:focus,
-.datepicker table tr td.selected.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.selected:focus,
-fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,
-.datepicker table tr td.selected.disabled.focus,
-.datepicker table tr td.selected.highlighted.disabled.focus,
-.datepicker table tr td.selected[disabled].focus,
-.datepicker table tr td.selected.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.selected.focus,
-fieldset[disabled] .datepicker table tr td.selected.highlighted.focus {
- background-color: #777777;
- border-color: #555555;
-}
-.datepicker table tr td.active,
-.datepicker table tr td.active.highlighted {
- color: #fff;
- background-color: #337ab7;
- border-color: #2e6da4;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.active:focus,
-.datepicker table tr td.active.highlighted:focus,
-.datepicker table tr td.active.focus,
-.datepicker table tr td.active.highlighted.focus {
- color: #fff;
- background-color: #286090;
- border-color: #122b40;
-}
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active.highlighted:hover {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td.active:active,
-.datepicker table tr td.active.highlighted:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active.highlighted.active {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td.active:active:hover,
-.datepicker table tr td.active.highlighted:active:hover,
-.datepicker table tr td.active.active:hover,
-.datepicker table tr td.active.highlighted.active:hover,
-.datepicker table tr td.active:active:focus,
-.datepicker table tr td.active.highlighted:active:focus,
-.datepicker table tr td.active.active:focus,
-.datepicker table tr td.active.highlighted.active:focus,
-.datepicker table tr td.active:active.focus,
-.datepicker table tr td.active.highlighted:active.focus,
-.datepicker table tr td.active.active.focus,
-.datepicker table tr td.active.highlighted.active.focus {
- color: #fff;
- background-color: #204d74;
- border-color: #122b40;
-}
-.datepicker table tr td.active.disabled:hover,
-.datepicker table tr td.active.highlighted.disabled:hover,
-.datepicker table tr td.active[disabled]:hover,
-.datepicker table tr td.active.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.active:hover,
-fieldset[disabled] .datepicker table tr td.active.highlighted:hover,
-.datepicker table tr td.active.disabled:focus,
-.datepicker table tr td.active.highlighted.disabled:focus,
-.datepicker table tr td.active[disabled]:focus,
-.datepicker table tr td.active.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.active:focus,
-fieldset[disabled] .datepicker table tr td.active.highlighted:focus,
-.datepicker table tr td.active.disabled.focus,
-.datepicker table tr td.active.highlighted.disabled.focus,
-.datepicker table tr td.active[disabled].focus,
-.datepicker table tr td.active.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.active.focus,
-fieldset[disabled] .datepicker table tr td.active.highlighted.focus {
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.datepicker table tr td span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- border-radius: 4px;
-}
-.datepicker table tr td span:hover,
-.datepicker table tr td span.focused {
- background: #eeeeee;
-}
-.datepicker table tr td span.disabled,
-.datepicker table tr td span.disabled:hover {
- background: none;
- color: #777777;
- cursor: default;
-}
-.datepicker table tr td span.active,
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active.disabled:hover {
- color: #fff;
- background-color: #337ab7;
- border-color: #2e6da4;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td span.active:focus,
-.datepicker table tr td span.active:hover:focus,
-.datepicker table tr td span.active.disabled:focus,
-.datepicker table tr td span.active.disabled:hover:focus,
-.datepicker table tr td span.active.focus,
-.datepicker table tr td span.active:hover.focus,
-.datepicker table tr td span.active.disabled.focus,
-.datepicker table tr td span.active.disabled:hover.focus {
- color: #fff;
- background-color: #286090;
- border-color: #122b40;
-}
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active:hover:hover,
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active.disabled:hover:hover {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td span.active:active:hover,
-.datepicker table tr td span.active:hover:active:hover,
-.datepicker table tr td span.active.disabled:active:hover,
-.datepicker table tr td span.active.disabled:hover:active:hover,
-.datepicker table tr td span.active.active:hover,
-.datepicker table tr td span.active:hover.active:hover,
-.datepicker table tr td span.active.disabled.active:hover,
-.datepicker table tr td span.active.disabled:hover.active:hover,
-.datepicker table tr td span.active:active:focus,
-.datepicker table tr td span.active:hover:active:focus,
-.datepicker table tr td span.active.disabled:active:focus,
-.datepicker table tr td span.active.disabled:hover:active:focus,
-.datepicker table tr td span.active.active:focus,
-.datepicker table tr td span.active:hover.active:focus,
-.datepicker table tr td span.active.disabled.active:focus,
-.datepicker table tr td span.active.disabled:hover.active:focus,
-.datepicker table tr td span.active:active.focus,
-.datepicker table tr td span.active:hover:active.focus,
-.datepicker table tr td span.active.disabled:active.focus,
-.datepicker table tr td span.active.disabled:hover:active.focus,
-.datepicker table tr td span.active.active.focus,
-.datepicker table tr td span.active:hover.active.focus,
-.datepicker table tr td span.active.disabled.active.focus,
-.datepicker table tr td span.active.disabled:hover.active.focus {
- color: #fff;
- background-color: #204d74;
- border-color: #122b40;
-}
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active:hover.disabled:hover,
-.datepicker table tr td span.active.disabled.disabled:hover,
-.datepicker table tr td span.active.disabled:hover.disabled:hover,
-.datepicker table tr td span.active[disabled]:hover,
-.datepicker table tr td span.active:hover[disabled]:hover,
-.datepicker table tr td span.active.disabled[disabled]:hover,
-.datepicker table tr td span.active.disabled:hover[disabled]:hover,
-fieldset[disabled] .datepicker table tr td span.active:hover,
-fieldset[disabled] .datepicker table tr td span.active:hover:hover,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,
-.datepicker table tr td span.active.disabled:focus,
-.datepicker table tr td span.active:hover.disabled:focus,
-.datepicker table tr td span.active.disabled.disabled:focus,
-.datepicker table tr td span.active.disabled:hover.disabled:focus,
-.datepicker table tr td span.active[disabled]:focus,
-.datepicker table tr td span.active:hover[disabled]:focus,
-.datepicker table tr td span.active.disabled[disabled]:focus,
-.datepicker table tr td span.active.disabled:hover[disabled]:focus,
-fieldset[disabled] .datepicker table tr td span.active:focus,
-fieldset[disabled] .datepicker table tr td span.active:hover:focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,
-.datepicker table tr td span.active.disabled.focus,
-.datepicker table tr td span.active:hover.disabled.focus,
-.datepicker table tr td span.active.disabled.disabled.focus,
-.datepicker table tr td span.active.disabled:hover.disabled.focus,
-.datepicker table tr td span.active[disabled].focus,
-.datepicker table tr td span.active:hover[disabled].focus,
-.datepicker table tr td span.active.disabled[disabled].focus,
-.datepicker table tr td span.active.disabled:hover[disabled].focus,
-fieldset[disabled] .datepicker table tr td span.active.focus,
-fieldset[disabled] .datepicker table tr td span.active:hover.focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled.focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus {
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.datepicker table tr td span.old,
-.datepicker table tr td span.new {
- color: #777777;
-}
-.datepicker .datepicker-switch {
- width: 145px;
-}
-.datepicker .datepicker-switch,
-.datepicker .prev,
-.datepicker .next,
-.datepicker tfoot tr th {
- cursor: pointer;
-}
-.datepicker .datepicker-switch:hover,
-.datepicker .prev:hover,
-.datepicker .next:hover,
-.datepicker tfoot tr th:hover {
- background: #eeeeee;
-}
-.datepicker .prev.disabled,
-.datepicker .next.disabled {
- visibility: hidden;
-}
-.datepicker .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
-}
-.input-group.date .input-group-addon {
- cursor: pointer;
-}
-.input-daterange {
- width: 100%;
-}
-.input-daterange input {
- text-align: center;
-}
-.input-daterange input:first-child {
- border-radius: 3px 0 0 3px;
-}
-.input-daterange input:last-child {
- border-radius: 0 3px 3px 0;
-}
-.input-daterange .input-group-addon {
- width: auto;
- min-width: 16px;
- padding: 4px 5px;
- line-height: 1.42857143;
- border-width: 1px 0;
- margin-left: -5px;
- margin-right: -5px;
-}
-/*# sourceMappingURL=bootstrap-datepicker3.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css.map b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css.map
deleted file mode 100755
index c2679b691..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["less/datepicker3.less","build/build3.less"],"names":[],"mappings":"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","sourcesContent":[".datepicker {\n\tborder-radius: @border-radius-base;\n\t&-inline {\n\t\twidth: 220px;\n\t}\n\tdirection: ltr;\n\t&-rtl {\n\t\tdirection: rtl;\n\t\t&.dropdown-menu { left: auto; }\n\t\ttable tr td span {\n\t\t\tfloat: right;\n\t\t}\n\t}\n\t&-dropdown {\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tpadding: 4px;\n\t\t&:before {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 7px solid transparent;\n\t\t\tborder-right: 7px solid transparent;\n\t\t\tborder-bottom: 7px solid @dropdown-border;\n\t\t\tborder-top: 0;\n\t\t\tborder-bottom-color: rgba(0,0,0,.2);\n\t\t\tposition: absolute;\n\t\t}\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 6px solid transparent;\n\t\t\tborder-right: 6px solid transparent;\n\t\t\tborder-bottom: 6px solid @dropdown-bg;\n\t\t\tborder-top: 0;\n\t\t\tposition: absolute;\n\t\t}\n\t\t&.datepicker-orient-left:before { left: 6px; }\n\t\t&.datepicker-orient-left:after { left: 7px; }\n\t\t&.datepicker-orient-right:before { right: 6px; }\n\t\t&.datepicker-orient-right:after { right: 7px; }\n\t\t&.datepicker-orient-bottom:before { top: -7px; }\n\t\t&.datepicker-orient-bottom:after { top: -6px; }\n\t\t&.datepicker-orient-top:before {\n\t\t\tbottom: -7px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 7px solid @dropdown-border;\n\t\t}\n\t\t&.datepicker-orient-top:after {\n\t\t\tbottom: -6px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 6px solid @dropdown-bg;\n\t\t}\n\t}\n\ttable {\n\t\tmargin: 0;\n\t\t-webkit-touch-callout: none;\n\t\t-webkit-user-select: none;\n\t\t-khtml-user-select: none;\n\t\t-moz-user-select: none;\n\t\t-ms-user-select: none;\n\t\tuser-select: none;\n\t\ttr {\n\t\t\ttd, th {\n\t\t\t\ttext-align: center;\n\t\t\t\twidth: 30px;\n\t\t\t\theight: 30px;\n\t\t\t\tborder-radius: 4px;\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t}\n\t}\n\t// Inline display inside a table presents some problems with\n\t// border and background colors.\n\t.table-striped & table tr {\n\t\ttd, th {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\ttable tr td {\n\t\t&.old,\n\t\t&.new {\n\t\t\tcolor: @btn-link-disabled-color;\n\t\t}\n\t\t&.day:hover,\n\t\t&.focused {\n\t\t\tbackground: @gray-lighter;\n\t\t\tcursor: pointer;\n\t\t}\n\t\t&.disabled,\n\t\t&.disabled:hover {\n\t\t\tbackground: none;\n\t\t\tcolor: @btn-link-disabled-color;\n\t\t\tcursor: default;\n\t\t}\n\t\t&.highlighted {\n\t\t\t@highlighted-bg: @state-info-bg;\n\t\t\t.button-variant(#000, @highlighted-bg, darken(@highlighted-bg, 20%));\n\t\t\tborder-radius: 0;\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@highlighted-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @highlighted-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.today {\n\t\t\t@today-bg: lighten(orange, 30%);\n\t\t\t.button-variant(#000, @today-bg, darken(@today-bg, 20%));\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@today-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @today-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range {\n\t\t\t@range-bg: @gray-lighter;\n\t\t\t.button-variant(#000, @range-bg, darken(@range-bg, 20%));\n\t\t\tborder-radius: 0;\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@range-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range.highlighted {\n\t\t\t@range-highlighted-bg: mix(@state-info-bg, @gray-lighter, 50%);\n\t\t\t.button-variant(#000, @range-highlighted-bg, darken(@range-highlighted-bg, 20%));\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@range-highlighted-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-highlighted-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range.today {\n\t\t\t@range-today-bg: mix(orange, @gray-lighter, 50%);\n\t\t\t.button-variant(#000, @range-today-bg, darken(@range-today-bg, 20%));\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-today-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.selected,\n\t\t&.selected.highlighted {\n\t\t\t.button-variant(#fff, @gray-light, @gray);\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\t&.active,\n\t\t&.active.highlighted {\n\t\t\t.button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\tspan {\n\t\t\tdisplay: block;\n\t\t\twidth: 23%;\n\t\t\theight: 54px;\n\t\t\tline-height: 54px;\n\t\t\tfloat: left;\n\t\t\tmargin: 1%;\n\t\t\tcursor: pointer;\n\t\t\tborder-radius: 4px;\n\t\t\t&:hover,\n\t\t\t&.focused {\n\t\t\t\tbackground: @gray-lighter;\n\t\t\t}\n\t\t\t&.disabled,\n\t\t\t&.disabled:hover {\n\t\t\t\tbackground: none;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t\tcursor: default;\n\t\t\t}\n\t\t\t&.active,\n\t\t\t&.active:hover,\n\t\t\t&.active.disabled,\n\t\t\t&.active.disabled:hover {\n\t\t\t\t.button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);\n\t\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t\t}\n\t\t\t&.old,\n\t\t\t&.new {\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t}\n\n\t.datepicker-switch {\n\t\twidth: 145px;\n\t}\n\n\t.datepicker-switch,\n\t.prev,\n\t.next,\n\ttfoot tr th {\n\t\tcursor: pointer;\n\t\t&:hover {\n\t\t\tbackground: @gray-lighter;\n\t\t}\n\t}\n\n\t.prev, .next {\n\t\t&.disabled {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\n\t// Basic styling for calendar-week cells\n\t.cw {\n\t\tfont-size: 10px;\n\t\twidth: 12px;\n\t\tpadding: 0 2px 0 5px;\n\t\tvertical-align: middle;\n\t}\n}\n.input-group.date .input-group-addon {\n\tcursor: pointer;\n}\n.input-daterange {\n\twidth: 100%;\n\tinput {\n\t\ttext-align: center;\n\t}\n\tinput:first-child {\n\t\tborder-radius: 3px 0 0 3px;\n\t}\n\tinput:last-child {\n\t\tborder-radius: 0 3px 3px 0;\n\t}\n\t.input-group-addon {\n\t\twidth: auto;\n\t\tmin-width: 16px;\n\t\tpadding: 4px 5px;\n\t\tline-height: @line-height-base;\n\t\tborder-width: 1px 0;\n\t\tmargin-left: -5px;\n\t\tmargin-right: -5px;\n\t}\n}\n","// Datepicker .less buildfile. Includes select mixins/variables from bootstrap\n// and imports the included datepicker.less to output a minimal datepicker.css\n//\n// Usage:\n// lessc build3.less datepicker.css\n//\n// Variables and mixins copied from Bootstrap 3.3.5\n\n// Variables\n@gray: lighten(#000, 33.5%); // #555\n@gray-light: lighten(#000, 46.7%); // #777\n@gray-lighter: lighten(#000, 93.5%); // #eee\n\n@brand-primary: darken(#428bca, 6.5%); // #337ab7\n\n@btn-primary-color: #fff;\n@btn-primary-bg: @brand-primary;\n@btn-primary-border: darken(@btn-primary-bg, 5%);\n\n@btn-link-disabled-color: @gray-light;\n\n@state-info-bg: #d9edf7;\n\n@line-height-base: 1.428571429; // 20/14\n@border-radius-base: 4px;\n\n@dropdown-bg: #fff;\n@dropdown-border: rgba(0,0,0,.15);\n\n\n// Mixins\n\n// Button variants\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n}\n\n@import \"../less/datepicker3.less\";\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.min.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.min.css
deleted file mode 100755
index c98529a53..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker{border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker-rtl{direction:rtl}.datepicker-rtl.dropdown-menu{left:auto}.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0;padding:4px}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(0,0,0,.15);border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-bottom:before{top:-7px}.datepicker-dropdown.datepicker-orient-bottom:after{top:-6px}.datepicker-dropdown.datepicker-orient-top:before{bottom:-7px;border-bottom:0;border-top:7px solid rgba(0,0,0,.15)}.datepicker-dropdown.datepicker-orient-top:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker table tr td,.datepicker table tr th{text-align:center;width:30px;height:30px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.new,.datepicker table tr td.old{color:#777}.datepicker table tr td.day:hover,.datepicker table tr td.focused{background:#eee;cursor:pointer}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#777;cursor:default}.datepicker table tr td.highlighted{color:#000;background-color:#d9edf7;border-color:#85c5e5;border-radius:0}.datepicker table tr td.highlighted.focus,.datepicker table tr td.highlighted:focus{color:#000;background-color:#afd9ee;border-color:#298fc2}.datepicker table tr td.highlighted:hover{color:#000;background-color:#afd9ee;border-color:#52addb}.datepicker table tr td.highlighted.active,.datepicker table tr td.highlighted:active{color:#000;background-color:#afd9ee;border-color:#52addb}.datepicker table tr td.highlighted.active.focus,.datepicker table tr td.highlighted.active:focus,.datepicker table tr td.highlighted.active:hover,.datepicker table tr td.highlighted:active.focus,.datepicker table tr td.highlighted:active:focus,.datepicker table tr td.highlighted:active:hover{color:#000;background-color:#91cbe8;border-color:#298fc2}.datepicker table tr td.highlighted.disabled.focus,.datepicker table tr td.highlighted.disabled:focus,.datepicker table tr td.highlighted.disabled:hover,.datepicker table tr td.highlighted[disabled].focus,.datepicker table tr td.highlighted[disabled]:focus,.datepicker table tr td.highlighted[disabled]:hover,fieldset[disabled] .datepicker table tr td.highlighted.focus,fieldset[disabled] .datepicker table tr td.highlighted:focus,fieldset[disabled] .datepicker table tr td.highlighted:hover{background-color:#d9edf7;border-color:#85c5e5}.datepicker table tr td.highlighted.focused{background:#afd9ee}.datepicker table tr td.highlighted.disabled,.datepicker table tr td.highlighted.disabled:active{background:#d9edf7;color:#777}.datepicker table tr td.today{color:#000;background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.focus,.datepicker table tr td.today:focus{color:#000;background-color:#ffc966;border-color:#b37400}.datepicker table tr td.today:hover{color:#000;background-color:#ffc966;border-color:#f59e00}.datepicker table tr td.today.active,.datepicker table tr td.today:active{color:#000;background-color:#ffc966;border-color:#f59e00}.datepicker table tr td.today.active.focus,.datepicker table tr td.today.active:focus,.datepicker table tr td.today.active:hover,.datepicker table tr td.today:active.focus,.datepicker table tr td.today:active:focus,.datepicker table tr td.today:active:hover{color:#000;background-color:#ffbc42;border-color:#b37400}.datepicker table tr td.today.disabled.focus,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today[disabled].focus,.datepicker table tr td.today[disabled]:focus,.datepicker table tr td.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.today.focus,fieldset[disabled] .datepicker table tr td.today:focus,fieldset[disabled] .datepicker table tr td.today:hover{background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.focused{background:#ffc966}.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:active{background:#ffdb99;color:#777}.datepicker table tr td.range{color:#000;background-color:#eee;border-color:#bbb;border-radius:0}.datepicker table tr td.range.focus,.datepicker table tr td.range:focus{color:#000;background-color:#d5d5d5;border-color:#7c7c7c}.datepicker table tr td.range:hover{color:#000;background-color:#d5d5d5;border-color:#9d9d9d}.datepicker table tr td.range.active,.datepicker table tr td.range:active{color:#000;background-color:#d5d5d5;border-color:#9d9d9d}.datepicker table tr td.range.active.focus,.datepicker table tr td.range.active:focus,.datepicker table tr td.range.active:hover,.datepicker table tr td.range:active.focus,.datepicker table tr td.range:active:focus,.datepicker table tr td.range:active:hover{color:#000;background-color:#c3c3c3;border-color:#7c7c7c}.datepicker table tr td.range.disabled.focus,.datepicker table tr td.range.disabled:focus,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range[disabled].focus,.datepicker table tr td.range[disabled]:focus,.datepicker table tr td.range[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.focus,fieldset[disabled] .datepicker table tr td.range:focus,fieldset[disabled] .datepicker table tr td.range:hover{background-color:#eee;border-color:#bbb}.datepicker table tr td.range.focused{background:#d5d5d5}.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:active{background:#eee;color:#777}.datepicker table tr td.range.highlighted{color:#000;background-color:#e4eef3;border-color:#9dc1d3}.datepicker table tr td.range.highlighted.focus,.datepicker table tr td.range.highlighted:focus{color:#000;background-color:#c1d7e3;border-color:#4b88a6}.datepicker table tr td.range.highlighted:hover{color:#000;background-color:#c1d7e3;border-color:#73a6c0}.datepicker table tr td.range.highlighted.active,.datepicker table tr td.range.highlighted:active{color:#000;background-color:#c1d7e3;border-color:#73a6c0}.datepicker table tr td.range.highlighted.active.focus,.datepicker table tr td.range.highlighted.active:focus,.datepicker table tr td.range.highlighted.active:hover,.datepicker table tr td.range.highlighted:active.focus,.datepicker table tr td.range.highlighted:active:focus,.datepicker table tr td.range.highlighted:active:hover{color:#000;background-color:#a8c8d8;border-color:#4b88a6}.datepicker table tr td.range.highlighted.disabled.focus,.datepicker table tr td.range.highlighted.disabled:focus,.datepicker table tr td.range.highlighted.disabled:hover,.datepicker table tr td.range.highlighted[disabled].focus,.datepicker table tr td.range.highlighted[disabled]:focus,.datepicker table tr td.range.highlighted[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.highlighted.focus,fieldset[disabled] .datepicker table tr td.range.highlighted:focus,fieldset[disabled] .datepicker table tr td.range.highlighted:hover{background-color:#e4eef3;border-color:#9dc1d3}.datepicker table tr td.range.highlighted.focused{background:#c1d7e3}.datepicker table tr td.range.highlighted.disabled,.datepicker table tr td.range.highlighted.disabled:active{background:#e4eef3;color:#777}.datepicker table tr td.range.today{color:#000;background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.range.today.focus,.datepicker table tr td.range.today:focus{color:#000;background-color:#f4b747;border-color:#815608}.datepicker table tr td.range.today:hover{color:#000;background-color:#f4b747;border-color:#bf800c}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:active{color:#000;background-color:#f4b747;border-color:#bf800c}.datepicker table tr td.range.today.active.focus,.datepicker table tr td.range.today.active:focus,.datepicker table tr td.range.today.active:hover,.datepicker table tr td.range.today:active.focus,.datepicker table tr td.range.today:active:focus,.datepicker table tr td.range.today:active:hover{color:#000;background-color:#f2aa25;border-color:#815608}.datepicker table tr td.range.today.disabled.focus,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today[disabled].focus,.datepicker table tr td.range.today[disabled]:focus,.datepicker table tr td.range.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.today.focus,fieldset[disabled] .datepicker table tr td.range.today:focus,fieldset[disabled] .datepicker table tr td.range.today:hover{background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:active{background:#f7ca77;color:#777}.datepicker table tr td.selected,.datepicker table tr td.selected.highlighted{color:#fff;background-color:#777;border-color:#555;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.focus,.datepicker table tr td.selected.highlighted.focus,.datepicker table tr td.selected.highlighted:focus,.datepicker table tr td.selected:focus{color:#fff;background-color:#5e5e5e;border-color:#161616}.datepicker table tr td.selected.highlighted:hover,.datepicker table tr td.selected:hover{color:#fff;background-color:#5e5e5e;border-color:#373737}.datepicker table tr td.selected.active,.datepicker table tr td.selected.highlighted.active,.datepicker table tr td.selected.highlighted:active,.datepicker table tr td.selected:active{color:#fff;background-color:#5e5e5e;border-color:#373737}.datepicker table tr td.selected.active.focus,.datepicker table tr td.selected.active:focus,.datepicker table tr td.selected.active:hover,.datepicker table tr td.selected.highlighted.active.focus,.datepicker table tr td.selected.highlighted.active:focus,.datepicker table tr td.selected.highlighted.active:hover,.datepicker table tr td.selected.highlighted:active.focus,.datepicker table tr td.selected.highlighted:active:focus,.datepicker table tr td.selected.highlighted:active:hover,.datepicker table tr td.selected:active.focus,.datepicker table tr td.selected:active:focus,.datepicker table tr td.selected:active:hover{color:#fff;background-color:#4c4c4c;border-color:#161616}.datepicker table tr td.selected.disabled.focus,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.highlighted.disabled.focus,.datepicker table tr td.selected.highlighted.disabled:focus,.datepicker table tr td.selected.highlighted.disabled:hover,.datepicker table tr td.selected.highlighted[disabled].focus,.datepicker table tr td.selected.highlighted[disabled]:focus,.datepicker table tr td.selected.highlighted[disabled]:hover,.datepicker table tr td.selected[disabled].focus,.datepicker table tr td.selected[disabled]:focus,.datepicker table tr td.selected[disabled]:hover,fieldset[disabled] .datepicker table tr td.selected.focus,fieldset[disabled] .datepicker table tr td.selected.highlighted.focus,fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,fieldset[disabled] .datepicker table tr td.selected:focus,fieldset[disabled] .datepicker table tr td.selected:hover{background-color:#777;border-color:#555}.datepicker table tr td.active,.datepicker table tr td.active.highlighted{color:#fff;background-color:#337ab7;border-color:#2e6da4;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.focus,.datepicker table tr td.active.highlighted.focus,.datepicker table tr td.active.highlighted:focus,.datepicker table tr td.active:focus{color:#fff;background-color:#286090;border-color:#122b40}.datepicker table tr td.active.highlighted:hover,.datepicker table tr td.active:hover{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td.active.active,.datepicker table tr td.active.highlighted.active,.datepicker table tr td.active.highlighted:active,.datepicker table tr td.active:active{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td.active.active.focus,.datepicker table tr td.active.active:focus,.datepicker table tr td.active.active:hover,.datepicker table tr td.active.highlighted.active.focus,.datepicker table tr td.active.highlighted.active:focus,.datepicker table tr td.active.highlighted.active:hover,.datepicker table tr td.active.highlighted:active.focus,.datepicker table tr td.active.highlighted:active:focus,.datepicker table tr td.active.highlighted:active:hover,.datepicker table tr td.active:active.focus,.datepicker table tr td.active:active:focus,.datepicker table tr td.active:active:hover{color:#fff;background-color:#204d74;border-color:#122b40}.datepicker table tr td.active.disabled.focus,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.highlighted.disabled.focus,.datepicker table tr td.active.highlighted.disabled:focus,.datepicker table tr td.active.highlighted.disabled:hover,.datepicker table tr td.active.highlighted[disabled].focus,.datepicker table tr td.active.highlighted[disabled]:focus,.datepicker table tr td.active.highlighted[disabled]:hover,.datepicker table tr td.active[disabled].focus,.datepicker table tr td.active[disabled]:focus,.datepicker table tr td.active[disabled]:hover,fieldset[disabled] .datepicker table tr td.active.focus,fieldset[disabled] .datepicker table tr td.active.highlighted.focus,fieldset[disabled] .datepicker table tr td.active.highlighted:focus,fieldset[disabled] .datepicker table tr td.active.highlighted:hover,fieldset[disabled] .datepicker table tr td.active:focus,fieldset[disabled] .datepicker table tr td.active:hover{background-color:#337ab7;border-color:#2e6da4}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;border-radius:4px}.datepicker table tr td span.focused,.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#777;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{color:#fff;background-color:#337ab7;border-color:#2e6da4;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.disabled.focus,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover.focus,.datepicker table tr td span.active.disabled:hover:focus,.datepicker table tr td span.active.focus,.datepicker table tr td span.active:focus,.datepicker table tr td span.active:hover.focus,.datepicker table tr td span.active:hover:focus{color:#fff;background-color:#286090;border-color:#122b40}.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td span.active.active.focus,.datepicker table tr td span.active.active:focus,.datepicker table tr td span.active.active:hover,.datepicker table tr td span.active.disabled.active.focus,.datepicker table tr td span.active.disabled.active:focus,.datepicker table tr td span.active.disabled.active:hover,.datepicker table tr td span.active.disabled:active.focus,.datepicker table tr td span.active.disabled:active:focus,.datepicker table tr td span.active.disabled:active:hover,.datepicker table tr td span.active.disabled:hover.active.focus,.datepicker table tr td span.active.disabled:hover.active:focus,.datepicker table tr td span.active.disabled:hover.active:hover,.datepicker table tr td span.active.disabled:hover:active.focus,.datepicker table tr td span.active.disabled:hover:active:focus,.datepicker table tr td span.active.disabled:hover:active:hover,.datepicker table tr td span.active:active.focus,.datepicker table tr td span.active:active:focus,.datepicker table tr td span.active:active:hover,.datepicker table tr td span.active:hover.active.focus,.datepicker table tr td span.active:hover.active:focus,.datepicker table tr td span.active:hover.active:hover,.datepicker table tr td span.active:hover:active.focus,.datepicker table tr td span.active:hover:active:focus,.datepicker table tr td span.active:hover:active:hover{color:#fff;background-color:#204d74;border-color:#122b40}.datepicker table tr td span.active.disabled.disabled.focus,.datepicker table tr td span.active.disabled.disabled:focus,.datepicker table tr td span.active.disabled.disabled:hover,.datepicker table tr td span.active.disabled.focus,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.disabled.focus,.datepicker table tr td span.active.disabled:hover.disabled:focus,.datepicker table tr td span.active.disabled:hover.disabled:hover,.datepicker table tr td span.active.disabled:hover[disabled].focus,.datepicker table tr td span.active.disabled:hover[disabled]:focus,.datepicker table tr td span.active.disabled:hover[disabled]:hover,.datepicker table tr td span.active.disabled[disabled].focus,.datepicker table tr td span.active.disabled[disabled]:focus,.datepicker table tr td span.active.disabled[disabled]:hover,.datepicker table tr td span.active:hover.disabled.focus,.datepicker table tr td span.active:hover.disabled:focus,.datepicker table tr td span.active:hover.disabled:hover,.datepicker table tr td span.active:hover[disabled].focus,.datepicker table tr td span.active:hover[disabled]:focus,.datepicker table tr td span.active:hover[disabled]:hover,.datepicker table tr td span.active[disabled].focus,.datepicker table tr td span.active[disabled]:focus,.datepicker table tr td span.active[disabled]:hover,fieldset[disabled] .datepicker table tr td span.active.disabled.focus,fieldset[disabled] .datepicker table tr td span.active.disabled:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover,fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td span.active.focus,fieldset[disabled] .datepicker table tr td span.active:focus,fieldset[disabled] .datepicker table tr td span.active:hover,fieldset[disabled] .datepicker table tr td span.active:hover.focus,fieldset[disabled] .datepicker table tr td span.active:hover:focus,fieldset[disabled] .datepicker table tr td span.active:hover:hover{background-color:#337ab7;border-color:#2e6da4}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#777}.datepicker .datepicker-switch{width:145px}.datepicker .datepicker-switch,.datepicker .next,.datepicker .prev,.datepicker tfoot tr th{cursor:pointer}.datepicker .datepicker-switch:hover,.datepicker .next:hover,.datepicker .prev:hover,.datepicker tfoot tr th:hover{background:#eee}.datepicker .next.disabled,.datepicker .prev.disabled{visibility:hidden}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.input-group.date .input-group-addon{cursor:pointer}.input-daterange{width:100%}.input-daterange input{text-align:center}.input-daterange input:first-child{border-radius:3px 0 0 3px}.input-daterange input:last-child{border-radius:0 3px 3px 0}.input-daterange .input-group-addon{width:auto;min-width:16px;padding:4px 5px;line-height:1.42857143;border-width:1px 0;margin-left:-5px;margin-right:-5px}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css
deleted file mode 100755
index 6f1e5f1f3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css
+++ /dev/null
@@ -1,712 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker {
- border-radius: 4px;
- direction: ltr;
-}
-.datepicker-inline {
- width: 220px;
-}
-.datepicker-rtl {
- direction: rtl;
-}
-.datepicker-rtl.dropdown-menu {
- left: auto;
-}
-.datepicker-rtl table tr td span {
- float: right;
-}
-.datepicker-dropdown {
- top: 0;
- left: 0;
- padding: 4px;
-}
-.datepicker-dropdown:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid rgba(0, 0, 0, 0.15);
- border-top: 0;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- position: absolute;
-}
-.datepicker-dropdown:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-top: 0;
- position: absolute;
-}
-.datepicker-dropdown.datepicker-orient-left:before {
- left: 6px;
-}
-.datepicker-dropdown.datepicker-orient-left:after {
- left: 7px;
-}
-.datepicker-dropdown.datepicker-orient-right:before {
- right: 6px;
-}
-.datepicker-dropdown.datepicker-orient-right:after {
- right: 7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:before {
- top: -7px;
-}
-.datepicker-dropdown.datepicker-orient-bottom:after {
- top: -6px;
-}
-.datepicker-dropdown.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid rgba(0, 0, 0, 0.15);
-}
-.datepicker-dropdown.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid #fff;
-}
-.datepicker table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.datepicker table tr td,
-.datepicker table tr th {
- text-align: center;
- width: 30px;
- height: 30px;
- border-radius: 4px;
- border: none;
-}
-.table-striped .datepicker table tr td,
-.table-striped .datepicker table tr th {
- background-color: transparent;
-}
-.datepicker table tr td.old,
-.datepicker table tr td.new {
- color: #777777;
-}
-.datepicker table tr td.day:hover,
-.datepicker table tr td.focused {
- background: #eeeeee;
- cursor: pointer;
-}
-.datepicker table tr td.disabled,
-.datepicker table tr td.disabled:hover {
- background: none;
- color: #777777;
- cursor: default;
-}
-.datepicker table tr td.highlighted {
- color: #000;
- background-color: #d9edf7;
- border-color: #85c5e5;
- border-radius: 0;
-}
-.datepicker table tr td.highlighted:focus,
-.datepicker table tr td.highlighted.focus {
- color: #000;
- background-color: #afd9ee;
- border-color: #298fc2;
-}
-.datepicker table tr td.highlighted:hover {
- color: #000;
- background-color: #afd9ee;
- border-color: #52addb;
-}
-.datepicker table tr td.highlighted:active,
-.datepicker table tr td.highlighted.active {
- color: #000;
- background-color: #afd9ee;
- border-color: #52addb;
-}
-.datepicker table tr td.highlighted:active:hover,
-.datepicker table tr td.highlighted.active:hover,
-.datepicker table tr td.highlighted:active:focus,
-.datepicker table tr td.highlighted.active:focus,
-.datepicker table tr td.highlighted:active.focus,
-.datepicker table tr td.highlighted.active.focus {
- color: #000;
- background-color: #91cbe8;
- border-color: #298fc2;
-}
-.datepicker table tr td.highlighted.disabled:hover,
-.datepicker table tr td.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.highlighted:hover,
-.datepicker table tr td.highlighted.disabled:focus,
-.datepicker table tr td.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.highlighted:focus,
-.datepicker table tr td.highlighted.disabled.focus,
-.datepicker table tr td.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.highlighted.focus {
- background-color: #d9edf7;
- border-color: #85c5e5;
-}
-.datepicker table tr td.highlighted.focused {
- background: #afd9ee;
-}
-.datepicker table tr td.highlighted.disabled,
-.datepicker table tr td.highlighted.disabled:active {
- background: #d9edf7;
- color: #777777;
-}
-.datepicker table tr td.today {
- color: #000;
- background-color: #ffdb99;
- border-color: #ffb733;
-}
-.datepicker table tr td.today:focus,
-.datepicker table tr td.today.focus {
- color: #000;
- background-color: #ffc966;
- border-color: #b37400;
-}
-.datepicker table tr td.today:hover {
- color: #000;
- background-color: #ffc966;
- border-color: #f59e00;
-}
-.datepicker table tr td.today:active,
-.datepicker table tr td.today.active {
- color: #000;
- background-color: #ffc966;
- border-color: #f59e00;
-}
-.datepicker table tr td.today:active:hover,
-.datepicker table tr td.today.active:hover,
-.datepicker table tr td.today:active:focus,
-.datepicker table tr td.today.active:focus,
-.datepicker table tr td.today:active.focus,
-.datepicker table tr td.today.active.focus {
- color: #000;
- background-color: #ffbc42;
- border-color: #b37400;
-}
-.datepicker table tr td.today.disabled:hover,
-.datepicker table tr td.today[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.today:hover,
-.datepicker table tr td.today.disabled:focus,
-.datepicker table tr td.today[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.today:focus,
-.datepicker table tr td.today.disabled.focus,
-.datepicker table tr td.today[disabled].focus,
-fieldset[disabled] .datepicker table tr td.today.focus {
- background-color: #ffdb99;
- border-color: #ffb733;
-}
-.datepicker table tr td.today.focused {
- background: #ffc966;
-}
-.datepicker table tr td.today.disabled,
-.datepicker table tr td.today.disabled:active {
- background: #ffdb99;
- color: #777777;
-}
-.datepicker table tr td.range {
- color: #000;
- background-color: #eeeeee;
- border-color: #bbbbbb;
- border-radius: 0;
-}
-.datepicker table tr td.range:focus,
-.datepicker table tr td.range.focus {
- color: #000;
- background-color: #d5d5d5;
- border-color: #7c7c7c;
-}
-.datepicker table tr td.range:hover {
- color: #000;
- background-color: #d5d5d5;
- border-color: #9d9d9d;
-}
-.datepicker table tr td.range:active,
-.datepicker table tr td.range.active {
- color: #000;
- background-color: #d5d5d5;
- border-color: #9d9d9d;
-}
-.datepicker table tr td.range:active:hover,
-.datepicker table tr td.range.active:hover,
-.datepicker table tr td.range:active:focus,
-.datepicker table tr td.range.active:focus,
-.datepicker table tr td.range:active.focus,
-.datepicker table tr td.range.active.focus {
- color: #000;
- background-color: #c3c3c3;
- border-color: #7c7c7c;
-}
-.datepicker table tr td.range.disabled:hover,
-.datepicker table tr td.range[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range:hover,
-.datepicker table tr td.range.disabled:focus,
-.datepicker table tr td.range[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range:focus,
-.datepicker table tr td.range.disabled.focus,
-.datepicker table tr td.range[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.focus {
- background-color: #eeeeee;
- border-color: #bbbbbb;
-}
-.datepicker table tr td.range.focused {
- background: #d5d5d5;
-}
-.datepicker table tr td.range.disabled,
-.datepicker table tr td.range.disabled:active {
- background: #eeeeee;
- color: #777777;
-}
-.datepicker table tr td.range.highlighted {
- color: #000;
- background-color: #e4eef3;
- border-color: #9dc1d3;
-}
-.datepicker table tr td.range.highlighted:focus,
-.datepicker table tr td.range.highlighted.focus {
- color: #000;
- background-color: #c1d7e3;
- border-color: #4b88a6;
-}
-.datepicker table tr td.range.highlighted:hover {
- color: #000;
- background-color: #c1d7e3;
- border-color: #73a6c0;
-}
-.datepicker table tr td.range.highlighted:active,
-.datepicker table tr td.range.highlighted.active {
- color: #000;
- background-color: #c1d7e3;
- border-color: #73a6c0;
-}
-.datepicker table tr td.range.highlighted:active:hover,
-.datepicker table tr td.range.highlighted.active:hover,
-.datepicker table tr td.range.highlighted:active:focus,
-.datepicker table tr td.range.highlighted.active:focus,
-.datepicker table tr td.range.highlighted:active.focus,
-.datepicker table tr td.range.highlighted.active.focus {
- color: #000;
- background-color: #a8c8d8;
- border-color: #4b88a6;
-}
-.datepicker table tr td.range.highlighted.disabled:hover,
-.datepicker table tr td.range.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range.highlighted:hover,
-.datepicker table tr td.range.highlighted.disabled:focus,
-.datepicker table tr td.range.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range.highlighted:focus,
-.datepicker table tr td.range.highlighted.disabled.focus,
-.datepicker table tr td.range.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.highlighted.focus {
- background-color: #e4eef3;
- border-color: #9dc1d3;
-}
-.datepicker table tr td.range.highlighted.focused {
- background: #c1d7e3;
-}
-.datepicker table tr td.range.highlighted.disabled,
-.datepicker table tr td.range.highlighted.disabled:active {
- background: #e4eef3;
- color: #777777;
-}
-.datepicker table tr td.range.today {
- color: #000;
- background-color: #f7ca77;
- border-color: #f1a417;
-}
-.datepicker table tr td.range.today:focus,
-.datepicker table tr td.range.today.focus {
- color: #000;
- background-color: #f4b747;
- border-color: #815608;
-}
-.datepicker table tr td.range.today:hover {
- color: #000;
- background-color: #f4b747;
- border-color: #bf800c;
-}
-.datepicker table tr td.range.today:active,
-.datepicker table tr td.range.today.active {
- color: #000;
- background-color: #f4b747;
- border-color: #bf800c;
-}
-.datepicker table tr td.range.today:active:hover,
-.datepicker table tr td.range.today.active:hover,
-.datepicker table tr td.range.today:active:focus,
-.datepicker table tr td.range.today.active:focus,
-.datepicker table tr td.range.today:active.focus,
-.datepicker table tr td.range.today.active.focus {
- color: #000;
- background-color: #f2aa25;
- border-color: #815608;
-}
-.datepicker table tr td.range.today.disabled:hover,
-.datepicker table tr td.range.today[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.range.today:hover,
-.datepicker table tr td.range.today.disabled:focus,
-.datepicker table tr td.range.today[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.range.today:focus,
-.datepicker table tr td.range.today.disabled.focus,
-.datepicker table tr td.range.today[disabled].focus,
-fieldset[disabled] .datepicker table tr td.range.today.focus {
- background-color: #f7ca77;
- border-color: #f1a417;
-}
-.datepicker table tr td.range.today.disabled,
-.datepicker table tr td.range.today.disabled:active {
- background: #f7ca77;
- color: #777777;
-}
-.datepicker table tr td.selected,
-.datepicker table tr td.selected.highlighted {
- color: #fff;
- background-color: #777777;
- border-color: #555555;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.selected:focus,
-.datepicker table tr td.selected.highlighted:focus,
-.datepicker table tr td.selected.focus,
-.datepicker table tr td.selected.highlighted.focus {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #161616;
-}
-.datepicker table tr td.selected:hover,
-.datepicker table tr td.selected.highlighted:hover {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #373737;
-}
-.datepicker table tr td.selected:active,
-.datepicker table tr td.selected.highlighted:active,
-.datepicker table tr td.selected.active,
-.datepicker table tr td.selected.highlighted.active {
- color: #fff;
- background-color: #5e5e5e;
- border-color: #373737;
-}
-.datepicker table tr td.selected:active:hover,
-.datepicker table tr td.selected.highlighted:active:hover,
-.datepicker table tr td.selected.active:hover,
-.datepicker table tr td.selected.highlighted.active:hover,
-.datepicker table tr td.selected:active:focus,
-.datepicker table tr td.selected.highlighted:active:focus,
-.datepicker table tr td.selected.active:focus,
-.datepicker table tr td.selected.highlighted.active:focus,
-.datepicker table tr td.selected:active.focus,
-.datepicker table tr td.selected.highlighted:active.focus,
-.datepicker table tr td.selected.active.focus,
-.datepicker table tr td.selected.highlighted.active.focus {
- color: #fff;
- background-color: #4c4c4c;
- border-color: #161616;
-}
-.datepicker table tr td.selected.disabled:hover,
-.datepicker table tr td.selected.highlighted.disabled:hover,
-.datepicker table tr td.selected[disabled]:hover,
-.datepicker table tr td.selected.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.selected:hover,
-fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,
-.datepicker table tr td.selected.disabled:focus,
-.datepicker table tr td.selected.highlighted.disabled:focus,
-.datepicker table tr td.selected[disabled]:focus,
-.datepicker table tr td.selected.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.selected:focus,
-fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,
-.datepicker table tr td.selected.disabled.focus,
-.datepicker table tr td.selected.highlighted.disabled.focus,
-.datepicker table tr td.selected[disabled].focus,
-.datepicker table tr td.selected.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.selected.focus,
-fieldset[disabled] .datepicker table tr td.selected.highlighted.focus {
- background-color: #777777;
- border-color: #555555;
-}
-.datepicker table tr td.active,
-.datepicker table tr td.active.highlighted {
- color: #fff;
- background-color: #337ab7;
- border-color: #2e6da4;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td.active:focus,
-.datepicker table tr td.active.highlighted:focus,
-.datepicker table tr td.active.focus,
-.datepicker table tr td.active.highlighted.focus {
- color: #fff;
- background-color: #286090;
- border-color: #122b40;
-}
-.datepicker table tr td.active:hover,
-.datepicker table tr td.active.highlighted:hover {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td.active:active,
-.datepicker table tr td.active.highlighted:active,
-.datepicker table tr td.active.active,
-.datepicker table tr td.active.highlighted.active {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td.active:active:hover,
-.datepicker table tr td.active.highlighted:active:hover,
-.datepicker table tr td.active.active:hover,
-.datepicker table tr td.active.highlighted.active:hover,
-.datepicker table tr td.active:active:focus,
-.datepicker table tr td.active.highlighted:active:focus,
-.datepicker table tr td.active.active:focus,
-.datepicker table tr td.active.highlighted.active:focus,
-.datepicker table tr td.active:active.focus,
-.datepicker table tr td.active.highlighted:active.focus,
-.datepicker table tr td.active.active.focus,
-.datepicker table tr td.active.highlighted.active.focus {
- color: #fff;
- background-color: #204d74;
- border-color: #122b40;
-}
-.datepicker table tr td.active.disabled:hover,
-.datepicker table tr td.active.highlighted.disabled:hover,
-.datepicker table tr td.active[disabled]:hover,
-.datepicker table tr td.active.highlighted[disabled]:hover,
-fieldset[disabled] .datepicker table tr td.active:hover,
-fieldset[disabled] .datepicker table tr td.active.highlighted:hover,
-.datepicker table tr td.active.disabled:focus,
-.datepicker table tr td.active.highlighted.disabled:focus,
-.datepicker table tr td.active[disabled]:focus,
-.datepicker table tr td.active.highlighted[disabled]:focus,
-fieldset[disabled] .datepicker table tr td.active:focus,
-fieldset[disabled] .datepicker table tr td.active.highlighted:focus,
-.datepicker table tr td.active.disabled.focus,
-.datepicker table tr td.active.highlighted.disabled.focus,
-.datepicker table tr td.active[disabled].focus,
-.datepicker table tr td.active.highlighted[disabled].focus,
-fieldset[disabled] .datepicker table tr td.active.focus,
-fieldset[disabled] .datepicker table tr td.active.highlighted.focus {
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.datepicker table tr td span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- border-radius: 4px;
-}
-.datepicker table tr td span:hover,
-.datepicker table tr td span.focused {
- background: #eeeeee;
-}
-.datepicker table tr td span.disabled,
-.datepicker table tr td span.disabled:hover {
- background: none;
- color: #777777;
- cursor: default;
-}
-.datepicker table tr td span.active,
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active.disabled,
-.datepicker table tr td span.active.disabled:hover {
- color: #fff;
- background-color: #337ab7;
- border-color: #2e6da4;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.datepicker table tr td span.active:focus,
-.datepicker table tr td span.active:hover:focus,
-.datepicker table tr td span.active.disabled:focus,
-.datepicker table tr td span.active.disabled:hover:focus,
-.datepicker table tr td span.active.focus,
-.datepicker table tr td span.active:hover.focus,
-.datepicker table tr td span.active.disabled.focus,
-.datepicker table tr td span.active.disabled:hover.focus {
- color: #fff;
- background-color: #286090;
- border-color: #122b40;
-}
-.datepicker table tr td span.active:hover,
-.datepicker table tr td span.active:hover:hover,
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active.disabled:hover:hover {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td span.active:active,
-.datepicker table tr td span.active:hover:active,
-.datepicker table tr td span.active.disabled:active,
-.datepicker table tr td span.active.disabled:hover:active,
-.datepicker table tr td span.active.active,
-.datepicker table tr td span.active:hover.active,
-.datepicker table tr td span.active.disabled.active,
-.datepicker table tr td span.active.disabled:hover.active {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.datepicker table tr td span.active:active:hover,
-.datepicker table tr td span.active:hover:active:hover,
-.datepicker table tr td span.active.disabled:active:hover,
-.datepicker table tr td span.active.disabled:hover:active:hover,
-.datepicker table tr td span.active.active:hover,
-.datepicker table tr td span.active:hover.active:hover,
-.datepicker table tr td span.active.disabled.active:hover,
-.datepicker table tr td span.active.disabled:hover.active:hover,
-.datepicker table tr td span.active:active:focus,
-.datepicker table tr td span.active:hover:active:focus,
-.datepicker table tr td span.active.disabled:active:focus,
-.datepicker table tr td span.active.disabled:hover:active:focus,
-.datepicker table tr td span.active.active:focus,
-.datepicker table tr td span.active:hover.active:focus,
-.datepicker table tr td span.active.disabled.active:focus,
-.datepicker table tr td span.active.disabled:hover.active:focus,
-.datepicker table tr td span.active:active.focus,
-.datepicker table tr td span.active:hover:active.focus,
-.datepicker table tr td span.active.disabled:active.focus,
-.datepicker table tr td span.active.disabled:hover:active.focus,
-.datepicker table tr td span.active.active.focus,
-.datepicker table tr td span.active:hover.active.focus,
-.datepicker table tr td span.active.disabled.active.focus,
-.datepicker table tr td span.active.disabled:hover.active.focus {
- color: #fff;
- background-color: #204d74;
- border-color: #122b40;
-}
-.datepicker table tr td span.active.disabled:hover,
-.datepicker table tr td span.active:hover.disabled:hover,
-.datepicker table tr td span.active.disabled.disabled:hover,
-.datepicker table tr td span.active.disabled:hover.disabled:hover,
-.datepicker table tr td span.active[disabled]:hover,
-.datepicker table tr td span.active:hover[disabled]:hover,
-.datepicker table tr td span.active.disabled[disabled]:hover,
-.datepicker table tr td span.active.disabled:hover[disabled]:hover,
-fieldset[disabled] .datepicker table tr td span.active:hover,
-fieldset[disabled] .datepicker table tr td span.active:hover:hover,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,
-.datepicker table tr td span.active.disabled:focus,
-.datepicker table tr td span.active:hover.disabled:focus,
-.datepicker table tr td span.active.disabled.disabled:focus,
-.datepicker table tr td span.active.disabled:hover.disabled:focus,
-.datepicker table tr td span.active[disabled]:focus,
-.datepicker table tr td span.active:hover[disabled]:focus,
-.datepicker table tr td span.active.disabled[disabled]:focus,
-.datepicker table tr td span.active.disabled:hover[disabled]:focus,
-fieldset[disabled] .datepicker table tr td span.active:focus,
-fieldset[disabled] .datepicker table tr td span.active:hover:focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,
-.datepicker table tr td span.active.disabled.focus,
-.datepicker table tr td span.active:hover.disabled.focus,
-.datepicker table tr td span.active.disabled.disabled.focus,
-.datepicker table tr td span.active.disabled:hover.disabled.focus,
-.datepicker table tr td span.active[disabled].focus,
-.datepicker table tr td span.active:hover[disabled].focus,
-.datepicker table tr td span.active.disabled[disabled].focus,
-.datepicker table tr td span.active.disabled:hover[disabled].focus,
-fieldset[disabled] .datepicker table tr td span.active.focus,
-fieldset[disabled] .datepicker table tr td span.active:hover.focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled.focus,
-fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus {
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.datepicker table tr td span.old,
-.datepicker table tr td span.new {
- color: #777777;
-}
-.datepicker .datepicker-switch {
- width: 145px;
-}
-.datepicker .datepicker-switch,
-.datepicker .prev,
-.datepicker .next,
-.datepicker tfoot tr th {
- cursor: pointer;
-}
-.datepicker .datepicker-switch:hover,
-.datepicker .prev:hover,
-.datepicker .next:hover,
-.datepicker tfoot tr th:hover {
- background: #eeeeee;
-}
-.datepicker .prev.disabled,
-.datepicker .next.disabled {
- visibility: hidden;
-}
-.datepicker .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
-}
-.input-group.date .input-group-addon {
- cursor: pointer;
-}
-.input-daterange {
- width: 100%;
-}
-.input-daterange input {
- text-align: center;
-}
-.input-daterange input:first-child {
- border-radius: 3px 0 0 3px;
-}
-.input-daterange input:last-child {
- border-radius: 0 3px 3px 0;
-}
-.input-daterange .input-group-addon {
- width: auto;
- min-width: 16px;
- padding: 4px 5px;
- line-height: 1.42857143;
- border-width: 1px 0;
- margin-left: -5px;
- margin-right: -5px;
-}
-.datepicker.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: 1000;
- display: none;
- float: left;
- min-width: 160px;
- list-style: none;
- background-color: #fff;
- border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, 0.15);
- border-radius: 4px;
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
- color: #333333;
- font-size: 13px;
- line-height: 1.42857143;
-}
-.datepicker.dropdown-menu th,
-.datepicker.datepicker-inline th,
-.datepicker.dropdown-menu td,
-.datepicker.datepicker-inline td {
- padding: 0px 5px;
-}
-/*# sourceMappingURL=bootstrap-datepicker3.standalone.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css.map b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css.map
deleted file mode 100755
index fc83fd263..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["less/datepicker3.less","build/build3.less","build/build_standalone3.less"],"names":[],"mappings":"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","sourcesContent":[".datepicker {\n\tborder-radius: @border-radius-base;\n\t&-inline {\n\t\twidth: 220px;\n\t}\n\tdirection: ltr;\n\t&-rtl {\n\t\tdirection: rtl;\n\t\t&.dropdown-menu { left: auto; }\n\t\ttable tr td span {\n\t\t\tfloat: right;\n\t\t}\n\t}\n\t&-dropdown {\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tpadding: 4px;\n\t\t&:before {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 7px solid transparent;\n\t\t\tborder-right: 7px solid transparent;\n\t\t\tborder-bottom: 7px solid @dropdown-border;\n\t\t\tborder-top: 0;\n\t\t\tborder-bottom-color: rgba(0,0,0,.2);\n\t\t\tposition: absolute;\n\t\t}\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tdisplay: inline-block;\n\t\t\tborder-left: 6px solid transparent;\n\t\t\tborder-right: 6px solid transparent;\n\t\t\tborder-bottom: 6px solid @dropdown-bg;\n\t\t\tborder-top: 0;\n\t\t\tposition: absolute;\n\t\t}\n\t\t&.datepicker-orient-left:before { left: 6px; }\n\t\t&.datepicker-orient-left:after { left: 7px; }\n\t\t&.datepicker-orient-right:before { right: 6px; }\n\t\t&.datepicker-orient-right:after { right: 7px; }\n\t\t&.datepicker-orient-bottom:before { top: -7px; }\n\t\t&.datepicker-orient-bottom:after { top: -6px; }\n\t\t&.datepicker-orient-top:before {\n\t\t\tbottom: -7px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 7px solid @dropdown-border;\n\t\t}\n\t\t&.datepicker-orient-top:after {\n\t\t\tbottom: -6px;\n\t\t\tborder-bottom: 0;\n\t\t\tborder-top: 6px solid @dropdown-bg;\n\t\t}\n\t}\n\ttable {\n\t\tmargin: 0;\n\t\t-webkit-touch-callout: none;\n\t\t-webkit-user-select: none;\n\t\t-khtml-user-select: none;\n\t\t-moz-user-select: none;\n\t\t-ms-user-select: none;\n\t\tuser-select: none;\n\t\ttr {\n\t\t\ttd, th {\n\t\t\t\ttext-align: center;\n\t\t\t\twidth: 30px;\n\t\t\t\theight: 30px;\n\t\t\t\tborder-radius: 4px;\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t}\n\t}\n\t// Inline display inside a table presents some problems with\n\t// border and background colors.\n\t.table-striped & table tr {\n\t\ttd, th {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\ttable tr td {\n\t\t&.old,\n\t\t&.new {\n\t\t\tcolor: @btn-link-disabled-color;\n\t\t}\n\t\t&.day:hover,\n\t\t&.focused {\n\t\t\tbackground: @gray-lighter;\n\t\t\tcursor: pointer;\n\t\t}\n\t\t&.disabled,\n\t\t&.disabled:hover {\n\t\t\tbackground: none;\n\t\t\tcolor: @btn-link-disabled-color;\n\t\t\tcursor: default;\n\t\t}\n\t\t&.highlighted {\n\t\t\t@highlighted-bg: @state-info-bg;\n\t\t\t.button-variant(#000, @highlighted-bg, darken(@highlighted-bg, 20%));\n\t\t\tborder-radius: 0;\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@highlighted-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @highlighted-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.today {\n\t\t\t@today-bg: lighten(orange, 30%);\n\t\t\t.button-variant(#000, @today-bg, darken(@today-bg, 20%));\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@today-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @today-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range {\n\t\t\t@range-bg: @gray-lighter;\n\t\t\t.button-variant(#000, @range-bg, darken(@range-bg, 20%));\n\t\t\tborder-radius: 0;\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@range-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range.highlighted {\n\t\t\t@range-highlighted-bg: mix(@state-info-bg, @gray-lighter, 50%);\n\t\t\t.button-variant(#000, @range-highlighted-bg, darken(@range-highlighted-bg, 20%));\n\n\t\t\t&.focused {\n\t\t\t\tbackground: darken(@range-highlighted-bg, 10%);\n\t\t\t}\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-highlighted-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.range.today {\n\t\t\t@range-today-bg: mix(orange, @gray-lighter, 50%);\n\t\t\t.button-variant(#000, @range-today-bg, darken(@range-today-bg, 20%));\n\n\t\t\t&.disabled,\n\t\t\t&.disabled:active {\n\t\t\t\tbackground: @range-today-bg;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t\t&.selected,\n\t\t&.selected.highlighted {\n\t\t\t.button-variant(#fff, @gray-light, @gray);\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\t&.active,\n\t\t&.active.highlighted {\n\t\t\t.button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);\n\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t}\n\t\tspan {\n\t\t\tdisplay: block;\n\t\t\twidth: 23%;\n\t\t\theight: 54px;\n\t\t\tline-height: 54px;\n\t\t\tfloat: left;\n\t\t\tmargin: 1%;\n\t\t\tcursor: pointer;\n\t\t\tborder-radius: 4px;\n\t\t\t&:hover,\n\t\t\t&.focused {\n\t\t\t\tbackground: @gray-lighter;\n\t\t\t}\n\t\t\t&.disabled,\n\t\t\t&.disabled:hover {\n\t\t\t\tbackground: none;\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t\tcursor: default;\n\t\t\t}\n\t\t\t&.active,\n\t\t\t&.active:hover,\n\t\t\t&.active.disabled,\n\t\t\t&.active.disabled:hover {\n\t\t\t\t.button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);\n\t\t\t\ttext-shadow: 0 -1px 0 rgba(0,0,0,.25);\n\t\t\t}\n\t\t\t&.old,\n\t\t\t&.new {\n\t\t\t\tcolor: @btn-link-disabled-color;\n\t\t\t}\n\t\t}\n\t}\n\n\t.datepicker-switch {\n\t\twidth: 145px;\n\t}\n\n\t.datepicker-switch,\n\t.prev,\n\t.next,\n\ttfoot tr th {\n\t\tcursor: pointer;\n\t\t&:hover {\n\t\t\tbackground: @gray-lighter;\n\t\t}\n\t}\n\n\t.prev, .next {\n\t\t&.disabled {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\n\t// Basic styling for calendar-week cells\n\t.cw {\n\t\tfont-size: 10px;\n\t\twidth: 12px;\n\t\tpadding: 0 2px 0 5px;\n\t\tvertical-align: middle;\n\t}\n}\n.input-group.date .input-group-addon {\n\tcursor: pointer;\n}\n.input-daterange {\n\twidth: 100%;\n\tinput {\n\t\ttext-align: center;\n\t}\n\tinput:first-child {\n\t\tborder-radius: 3px 0 0 3px;\n\t}\n\tinput:last-child {\n\t\tborder-radius: 0 3px 3px 0;\n\t}\n\t.input-group-addon {\n\t\twidth: auto;\n\t\tmin-width: 16px;\n\t\tpadding: 4px 5px;\n\t\tline-height: @line-height-base;\n\t\tborder-width: 1px 0;\n\t\tmargin-left: -5px;\n\t\tmargin-right: -5px;\n\t}\n}\n","// Datepicker .less buildfile. Includes select mixins/variables from bootstrap\n// and imports the included datepicker.less to output a minimal datepicker.css\n//\n// Usage:\n// lessc build3.less datepicker.css\n//\n// Variables and mixins copied from Bootstrap 3.3.5\n\n// Variables\n@gray: lighten(#000, 33.5%); // #555\n@gray-light: lighten(#000, 46.7%); // #777\n@gray-lighter: lighten(#000, 93.5%); // #eee\n\n@brand-primary: darken(#428bca, 6.5%); // #337ab7\n\n@btn-primary-color: #fff;\n@btn-primary-bg: @brand-primary;\n@btn-primary-border: darken(@btn-primary-bg, 5%);\n\n@btn-link-disabled-color: @gray-light;\n\n@state-info-bg: #d9edf7;\n\n@line-height-base: 1.428571429; // 20/14\n@border-radius-base: 4px;\n\n@dropdown-bg: #fff;\n@dropdown-border: rgba(0,0,0,.15);\n\n\n// Mixins\n\n// Button variants\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n}\n\n@import \"../less/datepicker3.less\";\n","// Datepicker standalone .less buildfile. Includes all necessary mixins/variables/rules from bootstrap\n// and imports the included datepicker.less to output a minimal standalone datepicker.css\n//\n// Usage:\n// lessc build_standalone3.less datepicker.css\n//\n// Variables, mixins, and rules copied from Bootstrap 3.3.5\n\n@import \"build3.less\";\n\n// Dropdown css\n\n@zindex-dropdown: 1000;\n@dropdown-fallback-border: #ccc;\n\n// Drop shadows\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow;\n -moz-box-shadow: @shadow;\n box-shadow: @shadow;\n}\n\n// The dropdown menu (ul)\n// ----------------------\n.datepicker {\n &.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n list-style: none;\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n -webkit-background-clip: padding-box;\n -moz-background-clip: padding;\n background-clip: padding-box;\n\n // Normally inherited from bootstrap's `body`\n color: #333333;\n font-size: 13px;\n line-height: @line-height-base;\n }\n\n &.dropdown-menu, &.datepicker-inline {\n th, td {\n padding: 0px 5px;\n }\n }\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.min.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.min.css
deleted file mode 100755
index 9dc4e90b0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.standalone.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-.datepicker{border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker-rtl{direction:rtl}.datepicker-rtl.dropdown-menu{left:auto}.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0;padding:4px}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(0,0,0,.15);border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-bottom:before{top:-7px}.datepicker-dropdown.datepicker-orient-bottom:after{top:-6px}.datepicker-dropdown.datepicker-orient-top:before{bottom:-7px;border-bottom:0;border-top:7px solid rgba(0,0,0,.15)}.datepicker-dropdown.datepicker-orient-top:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker table tr td,.datepicker table tr th{text-align:center;width:30px;height:30px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.new,.datepicker table tr td.old{color:#777}.datepicker table tr td.day:hover,.datepicker table tr td.focused{background:#eee;cursor:pointer}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#777;cursor:default}.datepicker table tr td.highlighted{color:#000;background-color:#d9edf7;border-color:#85c5e5;border-radius:0}.datepicker table tr td.highlighted.focus,.datepicker table tr td.highlighted:focus{color:#000;background-color:#afd9ee;border-color:#298fc2}.datepicker table tr td.highlighted:hover{color:#000;background-color:#afd9ee;border-color:#52addb}.datepicker table tr td.highlighted.active,.datepicker table tr td.highlighted:active{color:#000;background-color:#afd9ee;border-color:#52addb}.datepicker table tr td.highlighted.active.focus,.datepicker table tr td.highlighted.active:focus,.datepicker table tr td.highlighted.active:hover,.datepicker table tr td.highlighted:active.focus,.datepicker table tr td.highlighted:active:focus,.datepicker table tr td.highlighted:active:hover{color:#000;background-color:#91cbe8;border-color:#298fc2}.datepicker table tr td.highlighted.disabled.focus,.datepicker table tr td.highlighted.disabled:focus,.datepicker table tr td.highlighted.disabled:hover,.datepicker table tr td.highlighted[disabled].focus,.datepicker table tr td.highlighted[disabled]:focus,.datepicker table tr td.highlighted[disabled]:hover,fieldset[disabled] .datepicker table tr td.highlighted.focus,fieldset[disabled] .datepicker table tr td.highlighted:focus,fieldset[disabled] .datepicker table tr td.highlighted:hover{background-color:#d9edf7;border-color:#85c5e5}.datepicker table tr td.highlighted.focused{background:#afd9ee}.datepicker table tr td.highlighted.disabled,.datepicker table tr td.highlighted.disabled:active{background:#d9edf7;color:#777}.datepicker table tr td.today{color:#000;background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.focus,.datepicker table tr td.today:focus{color:#000;background-color:#ffc966;border-color:#b37400}.datepicker table tr td.today:hover{color:#000;background-color:#ffc966;border-color:#f59e00}.datepicker table tr td.today.active,.datepicker table tr td.today:active{color:#000;background-color:#ffc966;border-color:#f59e00}.datepicker table tr td.today.active.focus,.datepicker table tr td.today.active:focus,.datepicker table tr td.today.active:hover,.datepicker table tr td.today:active.focus,.datepicker table tr td.today:active:focus,.datepicker table tr td.today:active:hover{color:#000;background-color:#ffbc42;border-color:#b37400}.datepicker table tr td.today.disabled.focus,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today[disabled].focus,.datepicker table tr td.today[disabled]:focus,.datepicker table tr td.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.today.focus,fieldset[disabled] .datepicker table tr td.today:focus,fieldset[disabled] .datepicker table tr td.today:hover{background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.focused{background:#ffc966}.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:active{background:#ffdb99;color:#777}.datepicker table tr td.range{color:#000;background-color:#eee;border-color:#bbb;border-radius:0}.datepicker table tr td.range.focus,.datepicker table tr td.range:focus{color:#000;background-color:#d5d5d5;border-color:#7c7c7c}.datepicker table tr td.range:hover{color:#000;background-color:#d5d5d5;border-color:#9d9d9d}.datepicker table tr td.range.active,.datepicker table tr td.range:active{color:#000;background-color:#d5d5d5;border-color:#9d9d9d}.datepicker table tr td.range.active.focus,.datepicker table tr td.range.active:focus,.datepicker table tr td.range.active:hover,.datepicker table tr td.range:active.focus,.datepicker table tr td.range:active:focus,.datepicker table tr td.range:active:hover{color:#000;background-color:#c3c3c3;border-color:#7c7c7c}.datepicker table tr td.range.disabled.focus,.datepicker table tr td.range.disabled:focus,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range[disabled].focus,.datepicker table tr td.range[disabled]:focus,.datepicker table tr td.range[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.focus,fieldset[disabled] .datepicker table tr td.range:focus,fieldset[disabled] .datepicker table tr td.range:hover{background-color:#eee;border-color:#bbb}.datepicker table tr td.range.focused{background:#d5d5d5}.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:active{background:#eee;color:#777}.datepicker table tr td.range.highlighted{color:#000;background-color:#e4eef3;border-color:#9dc1d3}.datepicker table tr td.range.highlighted.focus,.datepicker table tr td.range.highlighted:focus{color:#000;background-color:#c1d7e3;border-color:#4b88a6}.datepicker table tr td.range.highlighted:hover{color:#000;background-color:#c1d7e3;border-color:#73a6c0}.datepicker table tr td.range.highlighted.active,.datepicker table tr td.range.highlighted:active{color:#000;background-color:#c1d7e3;border-color:#73a6c0}.datepicker table tr td.range.highlighted.active.focus,.datepicker table tr td.range.highlighted.active:focus,.datepicker table tr td.range.highlighted.active:hover,.datepicker table tr td.range.highlighted:active.focus,.datepicker table tr td.range.highlighted:active:focus,.datepicker table tr td.range.highlighted:active:hover{color:#000;background-color:#a8c8d8;border-color:#4b88a6}.datepicker table tr td.range.highlighted.disabled.focus,.datepicker table tr td.range.highlighted.disabled:focus,.datepicker table tr td.range.highlighted.disabled:hover,.datepicker table tr td.range.highlighted[disabled].focus,.datepicker table tr td.range.highlighted[disabled]:focus,.datepicker table tr td.range.highlighted[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.highlighted.focus,fieldset[disabled] .datepicker table tr td.range.highlighted:focus,fieldset[disabled] .datepicker table tr td.range.highlighted:hover{background-color:#e4eef3;border-color:#9dc1d3}.datepicker table tr td.range.highlighted.focused{background:#c1d7e3}.datepicker table tr td.range.highlighted.disabled,.datepicker table tr td.range.highlighted.disabled:active{background:#e4eef3;color:#777}.datepicker table tr td.range.today{color:#000;background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.range.today.focus,.datepicker table tr td.range.today:focus{color:#000;background-color:#f4b747;border-color:#815608}.datepicker table tr td.range.today:hover{color:#000;background-color:#f4b747;border-color:#bf800c}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:active{color:#000;background-color:#f4b747;border-color:#bf800c}.datepicker table tr td.range.today.active.focus,.datepicker table tr td.range.today.active:focus,.datepicker table tr td.range.today.active:hover,.datepicker table tr td.range.today:active.focus,.datepicker table tr td.range.today:active:focus,.datepicker table tr td.range.today:active:hover{color:#000;background-color:#f2aa25;border-color:#815608}.datepicker table tr td.range.today.disabled.focus,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today[disabled].focus,.datepicker table tr td.range.today[disabled]:focus,.datepicker table tr td.range.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.today.focus,fieldset[disabled] .datepicker table tr td.range.today:focus,fieldset[disabled] .datepicker table tr td.range.today:hover{background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:active{background:#f7ca77;color:#777}.datepicker table tr td.selected,.datepicker table tr td.selected.highlighted{color:#fff;background-color:#777;border-color:#555;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.focus,.datepicker table tr td.selected.highlighted.focus,.datepicker table tr td.selected.highlighted:focus,.datepicker table tr td.selected:focus{color:#fff;background-color:#5e5e5e;border-color:#161616}.datepicker table tr td.selected.highlighted:hover,.datepicker table tr td.selected:hover{color:#fff;background-color:#5e5e5e;border-color:#373737}.datepicker table tr td.selected.active,.datepicker table tr td.selected.highlighted.active,.datepicker table tr td.selected.highlighted:active,.datepicker table tr td.selected:active{color:#fff;background-color:#5e5e5e;border-color:#373737}.datepicker table tr td.selected.active.focus,.datepicker table tr td.selected.active:focus,.datepicker table tr td.selected.active:hover,.datepicker table tr td.selected.highlighted.active.focus,.datepicker table tr td.selected.highlighted.active:focus,.datepicker table tr td.selected.highlighted.active:hover,.datepicker table tr td.selected.highlighted:active.focus,.datepicker table tr td.selected.highlighted:active:focus,.datepicker table tr td.selected.highlighted:active:hover,.datepicker table tr td.selected:active.focus,.datepicker table tr td.selected:active:focus,.datepicker table tr td.selected:active:hover{color:#fff;background-color:#4c4c4c;border-color:#161616}.datepicker table tr td.selected.disabled.focus,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.highlighted.disabled.focus,.datepicker table tr td.selected.highlighted.disabled:focus,.datepicker table tr td.selected.highlighted.disabled:hover,.datepicker table tr td.selected.highlighted[disabled].focus,.datepicker table tr td.selected.highlighted[disabled]:focus,.datepicker table tr td.selected.highlighted[disabled]:hover,.datepicker table tr td.selected[disabled].focus,.datepicker table tr td.selected[disabled]:focus,.datepicker table tr td.selected[disabled]:hover,fieldset[disabled] .datepicker table tr td.selected.focus,fieldset[disabled] .datepicker table tr td.selected.highlighted.focus,fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,fieldset[disabled] .datepicker table tr td.selected:focus,fieldset[disabled] .datepicker table tr td.selected:hover{background-color:#777;border-color:#555}.datepicker table tr td.active,.datepicker table tr td.active.highlighted{color:#fff;background-color:#337ab7;border-color:#2e6da4;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.focus,.datepicker table tr td.active.highlighted.focus,.datepicker table tr td.active.highlighted:focus,.datepicker table tr td.active:focus{color:#fff;background-color:#286090;border-color:#122b40}.datepicker table tr td.active.highlighted:hover,.datepicker table tr td.active:hover{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td.active.active,.datepicker table tr td.active.highlighted.active,.datepicker table tr td.active.highlighted:active,.datepicker table tr td.active:active{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td.active.active.focus,.datepicker table tr td.active.active:focus,.datepicker table tr td.active.active:hover,.datepicker table tr td.active.highlighted.active.focus,.datepicker table tr td.active.highlighted.active:focus,.datepicker table tr td.active.highlighted.active:hover,.datepicker table tr td.active.highlighted:active.focus,.datepicker table tr td.active.highlighted:active:focus,.datepicker table tr td.active.highlighted:active:hover,.datepicker table tr td.active:active.focus,.datepicker table tr td.active:active:focus,.datepicker table tr td.active:active:hover{color:#fff;background-color:#204d74;border-color:#122b40}.datepicker table tr td.active.disabled.focus,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.highlighted.disabled.focus,.datepicker table tr td.active.highlighted.disabled:focus,.datepicker table tr td.active.highlighted.disabled:hover,.datepicker table tr td.active.highlighted[disabled].focus,.datepicker table tr td.active.highlighted[disabled]:focus,.datepicker table tr td.active.highlighted[disabled]:hover,.datepicker table tr td.active[disabled].focus,.datepicker table tr td.active[disabled]:focus,.datepicker table tr td.active[disabled]:hover,fieldset[disabled] .datepicker table tr td.active.focus,fieldset[disabled] .datepicker table tr td.active.highlighted.focus,fieldset[disabled] .datepicker table tr td.active.highlighted:focus,fieldset[disabled] .datepicker table tr td.active.highlighted:hover,fieldset[disabled] .datepicker table tr td.active:focus,fieldset[disabled] .datepicker table tr td.active:hover{background-color:#337ab7;border-color:#2e6da4}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;border-radius:4px}.datepicker table tr td span.focused,.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#777;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{color:#fff;background-color:#337ab7;border-color:#2e6da4;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.disabled.focus,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover.focus,.datepicker table tr td span.active.disabled:hover:focus,.datepicker table tr td span.active.focus,.datepicker table tr td span.active:focus,.datepicker table tr td span.active:hover.focus,.datepicker table tr td span.active:hover:focus{color:#fff;background-color:#286090;border-color:#122b40}.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active{color:#fff;background-color:#286090;border-color:#204d74}.datepicker table tr td span.active.active.focus,.datepicker table tr td span.active.active:focus,.datepicker table tr td span.active.active:hover,.datepicker table tr td span.active.disabled.active.focus,.datepicker table tr td span.active.disabled.active:focus,.datepicker table tr td span.active.disabled.active:hover,.datepicker table tr td span.active.disabled:active.focus,.datepicker table tr td span.active.disabled:active:focus,.datepicker table tr td span.active.disabled:active:hover,.datepicker table tr td span.active.disabled:hover.active.focus,.datepicker table tr td span.active.disabled:hover.active:focus,.datepicker table tr td span.active.disabled:hover.active:hover,.datepicker table tr td span.active.disabled:hover:active.focus,.datepicker table tr td span.active.disabled:hover:active:focus,.datepicker table tr td span.active.disabled:hover:active:hover,.datepicker table tr td span.active:active.focus,.datepicker table tr td span.active:active:focus,.datepicker table tr td span.active:active:hover,.datepicker table tr td span.active:hover.active.focus,.datepicker table tr td span.active:hover.active:focus,.datepicker table tr td span.active:hover.active:hover,.datepicker table tr td span.active:hover:active.focus,.datepicker table tr td span.active:hover:active:focus,.datepicker table tr td span.active:hover:active:hover{color:#fff;background-color:#204d74;border-color:#122b40}.datepicker table tr td span.active.disabled.disabled.focus,.datepicker table tr td span.active.disabled.disabled:focus,.datepicker table tr td span.active.disabled.disabled:hover,.datepicker table tr td span.active.disabled.focus,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.disabled.focus,.datepicker table tr td span.active.disabled:hover.disabled:focus,.datepicker table tr td span.active.disabled:hover.disabled:hover,.datepicker table tr td span.active.disabled:hover[disabled].focus,.datepicker table tr td span.active.disabled:hover[disabled]:focus,.datepicker table tr td span.active.disabled:hover[disabled]:hover,.datepicker table tr td span.active.disabled[disabled].focus,.datepicker table tr td span.active.disabled[disabled]:focus,.datepicker table tr td span.active.disabled[disabled]:hover,.datepicker table tr td span.active:hover.disabled.focus,.datepicker table tr td span.active:hover.disabled:focus,.datepicker table tr td span.active:hover.disabled:hover,.datepicker table tr td span.active:hover[disabled].focus,.datepicker table tr td span.active:hover[disabled]:focus,.datepicker table tr td span.active:hover[disabled]:hover,.datepicker table tr td span.active[disabled].focus,.datepicker table tr td span.active[disabled]:focus,.datepicker table tr td span.active[disabled]:hover,fieldset[disabled] .datepicker table tr td span.active.disabled.focus,fieldset[disabled] .datepicker table tr td span.active.disabled:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover,fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td span.active.focus,fieldset[disabled] .datepicker table tr td span.active:focus,fieldset[disabled] .datepicker table tr td span.active:hover,fieldset[disabled] .datepicker table tr td span.active:hover.focus,fieldset[disabled] .datepicker table tr td span.active:hover:focus,fieldset[disabled] .datepicker table tr td span.active:hover:hover{background-color:#337ab7;border-color:#2e6da4}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#777}.datepicker .datepicker-switch{width:145px}.datepicker .datepicker-switch,.datepicker .next,.datepicker .prev,.datepicker tfoot tr th{cursor:pointer}.datepicker .datepicker-switch:hover,.datepicker .next:hover,.datepicker .prev:hover,.datepicker tfoot tr th:hover{background:#eee}.datepicker .next.disabled,.datepicker .prev.disabled{visibility:hidden}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.input-group.date .input-group-addon{cursor:pointer}.input-daterange{width:100%}.input-daterange input{text-align:center}.input-daterange input:first-child{border-radius:3px 0 0 3px}.input-daterange input:last-child{border-radius:0 3px 3px 0}.input-daterange .input-group-addon{width:auto;min-width:16px;padding:4px 5px;line-height:1.42857143;border-width:1px 0;margin-left:-5px;margin-right:-5px}.datepicker.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);-moz-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;color:#333;font-size:13px;line-height:1.42857143}.datepicker.datepicker-inline td,.datepicker.datepicker-inline th,.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{padding:0 5px}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js
deleted file mode 100755
index a94f79fc1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js
+++ /dev/null
@@ -1,2039 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-(function(factory){
- if (typeof define === 'function' && define.amd) {
- define(['jquery'], factory);
- } else if (typeof exports === 'object') {
- factory(require('jquery'));
- } else {
- factory(jQuery);
- }
-}(function($, undefined){
- function UTCDate(){
- return new Date(Date.UTC.apply(Date, arguments));
- }
- function UTCToday(){
- var today = new Date();
- return UTCDate(today.getFullYear(), today.getMonth(), today.getDate());
- }
- function isUTCEquals(date1, date2) {
- return (
- date1.getUTCFullYear() === date2.getUTCFullYear() &&
- date1.getUTCMonth() === date2.getUTCMonth() &&
- date1.getUTCDate() === date2.getUTCDate()
- );
- }
- function alias(method, deprecationMsg){
- return function(){
- if (deprecationMsg !== undefined) {
- $.fn.datepicker.deprecated(deprecationMsg);
- }
-
- return this[method].apply(this, arguments);
- };
- }
- function isValidDate(d) {
- return d && !isNaN(d.getTime());
- }
-
- var DateArray = (function(){
- var extras = {
- get: function(i){
- return this.slice(i)[0];
- },
- contains: function(d){
- // Array.indexOf is not cross-browser;
- // $.inArray doesn't work with Dates
- var val = d && d.valueOf();
- for (var i=0, l=this.length; i < l; i++)
- // Use date arithmetic to allow dates with different times to match
- if (0 <= this[i].valueOf() - val && this[i].valueOf() - val < 1000*60*60*24)
- return i;
- return -1;
- },
- remove: function(i){
- this.splice(i,1);
- },
- replace: function(new_array){
- if (!new_array)
- return;
- if (!$.isArray(new_array))
- new_array = [new_array];
- this.clear();
- this.push.apply(this, new_array);
- },
- clear: function(){
- this.length = 0;
- },
- copy: function(){
- var a = new DateArray();
- a.replace(this);
- return a;
- }
- };
-
- return function(){
- var a = [];
- a.push.apply(a, arguments);
- $.extend(a, extras);
- return a;
- };
- })();
-
-
- // Picker object
-
- var Datepicker = function(element, options){
- $.data(element, 'datepicker', this);
-
- this._events = [];
- this._secondaryEvents = [];
-
- this._process_options(options);
-
- this.dates = new DateArray();
- this.viewDate = this.o.defaultViewDate;
- this.focusDate = null;
-
- this.element = $(element);
- this.isInput = this.element.is('input');
- this.inputField = this.isInput ? this.element : this.element.find('input');
- this.component = this.element.hasClass('date') ? this.element.find('.add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn') : false;
- if (this.component && this.component.length === 0)
- this.component = false;
- this.isInline = !this.component && this.element.is('div');
-
- this.picker = $(DPGlobal.template);
-
- // Checking templates and inserting
- if (this._check_template(this.o.templates.leftArrow)) {
- this.picker.find('.prev').html(this.o.templates.leftArrow);
- }
-
- if (this._check_template(this.o.templates.rightArrow)) {
- this.picker.find('.next').html(this.o.templates.rightArrow);
- }
-
- this._buildEvents();
- this._attachEvents();
-
- if (this.isInline){
- this.picker.addClass('datepicker-inline').appendTo(this.element);
- }
- else {
- this.picker.addClass('datepicker-dropdown dropdown-menu');
- }
-
- if (this.o.rtl){
- this.picker.addClass('datepicker-rtl');
- }
-
- if (this.o.calendarWeeks) {
- this.picker.find('.datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear')
- .attr('colspan', function(i, val){
- return Number(val) + 1;
- });
- }
-
- this._process_options({
- startDate: this._o.startDate,
- endDate: this._o.endDate,
- daysOfWeekDisabled: this.o.daysOfWeekDisabled,
- daysOfWeekHighlighted: this.o.daysOfWeekHighlighted,
- datesDisabled: this.o.datesDisabled
- });
-
- this._allow_update = false;
- this.setViewMode(this.o.startView);
- this._allow_update = true;
-
- this.fillDow();
- this.fillMonths();
-
- this.update();
-
- if (this.isInline){
- this.show();
- }
- };
-
- Datepicker.prototype = {
- constructor: Datepicker,
-
- _resolveViewName: function(view){
- $.each(DPGlobal.viewModes, function(i, viewMode){
- if (view === i || $.inArray(view, viewMode.names) !== -1){
- view = i;
- return false;
- }
- });
-
- return view;
- },
-
- _resolveDaysOfWeek: function(daysOfWeek){
- if (!$.isArray(daysOfWeek))
- daysOfWeek = daysOfWeek.split(/[,\s]*/);
- return $.map(daysOfWeek, Number);
- },
-
- _check_template: function(tmp){
- try {
- // If empty
- if (tmp === undefined || tmp === "") {
- return false;
- }
- // If no html, everything ok
- if ((tmp.match(/[<>]/g) || []).length <= 0) {
- return true;
- }
- // Checking if html is fine
- var jDom = $(tmp);
- return jDom.length > 0;
- }
- catch (ex) {
- return false;
- }
- },
-
- _process_options: function(opts){
- // Store raw options for reference
- this._o = $.extend({}, this._o, opts);
- // Processed options
- var o = this.o = $.extend({}, this._o);
-
- // Check if "de-DE" style date is available, if not language should
- // fallback to 2 letter code eg "de"
- var lang = o.language;
- if (!dates[lang]){
- lang = lang.split('-')[0];
- if (!dates[lang])
- lang = defaults.language;
- }
- o.language = lang;
-
- // Retrieve view index from any aliases
- o.startView = this._resolveViewName(o.startView);
- o.minViewMode = this._resolveViewName(o.minViewMode);
- o.maxViewMode = this._resolveViewName(o.maxViewMode);
-
- // Check view is between min and max
- o.startView = Math.max(this.o.minViewMode, Math.min(this.o.maxViewMode, o.startView));
-
- // true, false, or Number > 0
- if (o.multidate !== true){
- o.multidate = Number(o.multidate) || false;
- if (o.multidate !== false)
- o.multidate = Math.max(0, o.multidate);
- }
- o.multidateSeparator = String(o.multidateSeparator);
-
- o.weekStart %= 7;
- o.weekEnd = (o.weekStart + 6) % 7;
-
- var format = DPGlobal.parseFormat(o.format);
- if (o.startDate !== -Infinity){
- if (!!o.startDate){
- if (o.startDate instanceof Date)
- o.startDate = this._local_to_utc(this._zero_time(o.startDate));
- else
- o.startDate = DPGlobal.parseDate(o.startDate, format, o.language, o.assumeNearbyYear);
- }
- else {
- o.startDate = -Infinity;
- }
- }
- if (o.endDate !== Infinity){
- if (!!o.endDate){
- if (o.endDate instanceof Date)
- o.endDate = this._local_to_utc(this._zero_time(o.endDate));
- else
- o.endDate = DPGlobal.parseDate(o.endDate, format, o.language, o.assumeNearbyYear);
- }
- else {
- o.endDate = Infinity;
- }
- }
-
- o.daysOfWeekDisabled = this._resolveDaysOfWeek(o.daysOfWeekDisabled||[]);
- o.daysOfWeekHighlighted = this._resolveDaysOfWeek(o.daysOfWeekHighlighted||[]);
-
- o.datesDisabled = o.datesDisabled||[];
- if (!$.isArray(o.datesDisabled)) {
- o.datesDisabled = o.datesDisabled.split(',');
- }
- o.datesDisabled = $.map(o.datesDisabled, function(d){
- return DPGlobal.parseDate(d, format, o.language, o.assumeNearbyYear);
- });
-
- var plc = String(o.orientation).toLowerCase().split(/\s+/g),
- _plc = o.orientation.toLowerCase();
- plc = $.grep(plc, function(word){
- return /^auto|left|right|top|bottom$/.test(word);
- });
- o.orientation = {x: 'auto', y: 'auto'};
- if (!_plc || _plc === 'auto')
- ; // no action
- else if (plc.length === 1){
- switch (plc[0]){
- case 'top':
- case 'bottom':
- o.orientation.y = plc[0];
- break;
- case 'left':
- case 'right':
- o.orientation.x = plc[0];
- break;
- }
- }
- else {
- _plc = $.grep(plc, function(word){
- return /^left|right$/.test(word);
- });
- o.orientation.x = _plc[0] || 'auto';
-
- _plc = $.grep(plc, function(word){
- return /^top|bottom$/.test(word);
- });
- o.orientation.y = _plc[0] || 'auto';
- }
- if (o.defaultViewDate instanceof Date || typeof o.defaultViewDate === 'string') {
- o.defaultViewDate = DPGlobal.parseDate(o.defaultViewDate, format, o.language, o.assumeNearbyYear);
- } else if (o.defaultViewDate) {
- var year = o.defaultViewDate.year || new Date().getFullYear();
- var month = o.defaultViewDate.month || 0;
- var day = o.defaultViewDate.day || 1;
- o.defaultViewDate = UTCDate(year, month, day);
- } else {
- o.defaultViewDate = UTCToday();
- }
- },
- _applyEvents: function(evs){
- for (var i=0, el, ch, ev; i < evs.length; i++){
- el = evs[i][0];
- if (evs[i].length === 2){
- ch = undefined;
- ev = evs[i][1];
- } else if (evs[i].length === 3){
- ch = evs[i][1];
- ev = evs[i][2];
- }
- el.on(ev, ch);
- }
- },
- _unapplyEvents: function(evs){
- for (var i=0, el, ev, ch; i < evs.length; i++){
- el = evs[i][0];
- if (evs[i].length === 2){
- ch = undefined;
- ev = evs[i][1];
- } else if (evs[i].length === 3){
- ch = evs[i][1];
- ev = evs[i][2];
- }
- el.off(ev, ch);
- }
- },
- _buildEvents: function(){
- var events = {
- keyup: $.proxy(function(e){
- if ($.inArray(e.keyCode, [27, 37, 39, 38, 40, 32, 13, 9]) === -1)
- this.update();
- }, this),
- keydown: $.proxy(this.keydown, this),
- paste: $.proxy(this.paste, this)
- };
-
- if (this.o.showOnFocus === true) {
- events.focus = $.proxy(this.show, this);
- }
-
- if (this.isInput) { // single input
- this._events = [
- [this.element, events]
- ];
- }
- // component: input + button
- else if (this.component && this.inputField.length) {
- this._events = [
- // For components that are not readonly, allow keyboard nav
- [this.inputField, events],
- [this.component, {
- click: $.proxy(this.show, this)
- }]
- ];
- }
- else {
- this._events = [
- [this.element, {
- click: $.proxy(this.show, this),
- keydown: $.proxy(this.keydown, this)
- }]
- ];
- }
- this._events.push(
- // Component: listen for blur on element descendants
- [this.element, '*', {
- blur: $.proxy(function(e){
- this._focused_from = e.target;
- }, this)
- }],
- // Input: listen for blur on element
- [this.element, {
- blur: $.proxy(function(e){
- this._focused_from = e.target;
- }, this)
- }]
- );
-
- if (this.o.immediateUpdates) {
- // Trigger input updates immediately on changed year/month
- this._events.push([this.element, {
- 'changeYear changeMonth': $.proxy(function(e){
- this.update(e.date);
- }, this)
- }]);
- }
-
- this._secondaryEvents = [
- [this.picker, {
- click: $.proxy(this.click, this)
- }],
- [this.picker, '.prev, .next', {
- click: $.proxy(this.navArrowsClick, this)
- }],
- [this.picker, '.day:not(.disabled)', {
- click: $.proxy(this.dayCellClick, this)
- }],
- [$(window), {
- resize: $.proxy(this.place, this)
- }],
- [$(document), {
- 'mousedown touchstart': $.proxy(function(e){
- // Clicked outside the datepicker, hide it
- if (!(
- this.element.is(e.target) ||
- this.element.find(e.target).length ||
- this.picker.is(e.target) ||
- this.picker.find(e.target).length ||
- this.isInline
- )){
- this.hide();
- }
- }, this)
- }]
- ];
- },
- _attachEvents: function(){
- this._detachEvents();
- this._applyEvents(this._events);
- },
- _detachEvents: function(){
- this._unapplyEvents(this._events);
- },
- _attachSecondaryEvents: function(){
- this._detachSecondaryEvents();
- this._applyEvents(this._secondaryEvents);
- },
- _detachSecondaryEvents: function(){
- this._unapplyEvents(this._secondaryEvents);
- },
- _trigger: function(event, altdate){
- var date = altdate || this.dates.get(-1),
- local_date = this._utc_to_local(date);
-
- this.element.trigger({
- type: event,
- date: local_date,
- viewMode: this.viewMode,
- dates: $.map(this.dates, this._utc_to_local),
- format: $.proxy(function(ix, format){
- if (arguments.length === 0){
- ix = this.dates.length - 1;
- format = this.o.format;
- } else if (typeof ix === 'string'){
- format = ix;
- ix = this.dates.length - 1;
- }
- format = format || this.o.format;
- var date = this.dates.get(ix);
- return DPGlobal.formatDate(date, format, this.o.language);
- }, this)
- });
- },
-
- show: function(){
- if (this.inputField.is(':disabled') || (this.inputField.prop('readonly') && this.o.enableOnReadonly === false))
- return;
- if (!this.isInline)
- this.picker.appendTo(this.o.container);
- this.place();
- this.picker.show();
- this._attachSecondaryEvents();
- this._trigger('show');
- if ((window.navigator.msMaxTouchPoints || 'ontouchstart' in document) && this.o.disableTouchKeyboard) {
- $(this.element).blur();
- }
- return this;
- },
-
- hide: function(){
- if (this.isInline || !this.picker.is(':visible'))
- return this;
- this.focusDate = null;
- this.picker.hide().detach();
- this._detachSecondaryEvents();
- this.setViewMode(this.o.startView);
-
- if (this.o.forceParse && this.inputField.val())
- this.setValue();
- this._trigger('hide');
- return this;
- },
-
- destroy: function(){
- this.hide();
- this._detachEvents();
- this._detachSecondaryEvents();
- this.picker.remove();
- delete this.element.data().datepicker;
- if (!this.isInput){
- delete this.element.data().date;
- }
- return this;
- },
-
- paste: function(e){
- var dateString;
- if (e.originalEvent.clipboardData && e.originalEvent.clipboardData.types
- && $.inArray('text/plain', e.originalEvent.clipboardData.types) !== -1) {
- dateString = e.originalEvent.clipboardData.getData('text/plain');
- } else if (window.clipboardData) {
- dateString = window.clipboardData.getData('Text');
- } else {
- return;
- }
- this.setDate(dateString);
- this.update();
- e.preventDefault();
- },
-
- _utc_to_local: function(utc){
- if (!utc) {
- return utc;
- }
-
- var local = new Date(utc.getTime() + (utc.getTimezoneOffset() * 60000));
-
- if (local.getTimezoneOffset() !== utc.getTimezoneOffset()) {
- local = new Date(utc.getTime() + (local.getTimezoneOffset() * 60000));
- }
-
- return local;
- },
- _local_to_utc: function(local){
- return local && new Date(local.getTime() - (local.getTimezoneOffset()*60000));
- },
- _zero_time: function(local){
- return local && new Date(local.getFullYear(), local.getMonth(), local.getDate());
- },
- _zero_utc_time: function(utc){
- return utc && UTCDate(utc.getUTCFullYear(), utc.getUTCMonth(), utc.getUTCDate());
- },
-
- getDates: function(){
- return $.map(this.dates, this._utc_to_local);
- },
-
- getUTCDates: function(){
- return $.map(this.dates, function(d){
- return new Date(d);
- });
- },
-
- getDate: function(){
- return this._utc_to_local(this.getUTCDate());
- },
-
- getUTCDate: function(){
- var selected_date = this.dates.get(-1);
- if (selected_date !== undefined) {
- return new Date(selected_date);
- } else {
- return null;
- }
- },
-
- clearDates: function(){
- this.inputField.val('');
- this.update();
- this._trigger('changeDate');
-
- if (this.o.autoclose) {
- this.hide();
- }
- },
-
- setDates: function(){
- var args = $.isArray(arguments[0]) ? arguments[0] : arguments;
- this.update.apply(this, args);
- this._trigger('changeDate');
- this.setValue();
- return this;
- },
-
- setUTCDates: function(){
- var args = $.isArray(arguments[0]) ? arguments[0] : arguments;
- this.setDates.apply(this, $.map(args, this._utc_to_local));
- return this;
- },
-
- setDate: alias('setDates'),
- setUTCDate: alias('setUTCDates'),
- remove: alias('destroy', 'Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead'),
-
- setValue: function(){
- var formatted = this.getFormattedDate();
- this.inputField.val(formatted);
- return this;
- },
-
- getFormattedDate: function(format){
- if (format === undefined)
- format = this.o.format;
-
- var lang = this.o.language;
- return $.map(this.dates, function(d){
- return DPGlobal.formatDate(d, format, lang);
- }).join(this.o.multidateSeparator);
- },
-
- getStartDate: function(){
- return this.o.startDate;
- },
-
- setStartDate: function(startDate){
- this._process_options({startDate: startDate});
- this.update();
- this.updateNavArrows();
- return this;
- },
-
- getEndDate: function(){
- return this.o.endDate;
- },
-
- setEndDate: function(endDate){
- this._process_options({endDate: endDate});
- this.update();
- this.updateNavArrows();
- return this;
- },
-
- setDaysOfWeekDisabled: function(daysOfWeekDisabled){
- this._process_options({daysOfWeekDisabled: daysOfWeekDisabled});
- this.update();
- return this;
- },
-
- setDaysOfWeekHighlighted: function(daysOfWeekHighlighted){
- this._process_options({daysOfWeekHighlighted: daysOfWeekHighlighted});
- this.update();
- return this;
- },
-
- setDatesDisabled: function(datesDisabled){
- this._process_options({datesDisabled: datesDisabled});
- this.update();
- return this;
- },
-
- place: function(){
- if (this.isInline)
- return this;
- var calendarWidth = this.picker.outerWidth(),
- calendarHeight = this.picker.outerHeight(),
- visualPadding = 10,
- container = $(this.o.container),
- windowWidth = container.width(),
- scrollTop = this.o.container === 'body' ? $(document).scrollTop() : container.scrollTop(),
- appendOffset = container.offset();
-
- var parentsZindex = [0];
- this.element.parents().each(function(){
- var itemZIndex = $(this).css('z-index');
- if (itemZIndex !== 'auto' && Number(itemZIndex) !== 0) parentsZindex.push(Number(itemZIndex));
- });
- var zIndex = Math.max.apply(Math, parentsZindex) + this.o.zIndexOffset;
- var offset = this.component ? this.component.parent().offset() : this.element.offset();
- var height = this.component ? this.component.outerHeight(true) : this.element.outerHeight(false);
- var width = this.component ? this.component.outerWidth(true) : this.element.outerWidth(false);
- var left = offset.left - appendOffset.left;
- var top = offset.top - appendOffset.top;
-
- if (this.o.container !== 'body') {
- top += scrollTop;
- }
-
- this.picker.removeClass(
- 'datepicker-orient-top datepicker-orient-bottom '+
- 'datepicker-orient-right datepicker-orient-left'
- );
-
- if (this.o.orientation.x !== 'auto'){
- this.picker.addClass('datepicker-orient-' + this.o.orientation.x);
- if (this.o.orientation.x === 'right')
- left -= calendarWidth - width;
- }
- // auto x orientation is best-placement: if it crosses a window
- // edge, fudge it sideways
- else {
- if (offset.left < 0) {
- // component is outside the window on the left side. Move it into visible range
- this.picker.addClass('datepicker-orient-left');
- left -= offset.left - visualPadding;
- } else if (left + calendarWidth > windowWidth) {
- // the calendar passes the widow right edge. Align it to component right side
- this.picker.addClass('datepicker-orient-right');
- left += width - calendarWidth;
- } else {
- if (this.o.rtl) {
- // Default to right
- this.picker.addClass('datepicker-orient-right');
- } else {
- // Default to left
- this.picker.addClass('datepicker-orient-left');
- }
- }
- }
-
- // auto y orientation is best-situation: top or bottom, no fudging,
- // decision based on which shows more of the calendar
- var yorient = this.o.orientation.y,
- top_overflow;
- if (yorient === 'auto'){
- top_overflow = -scrollTop + top - calendarHeight;
- yorient = top_overflow < 0 ? 'bottom' : 'top';
- }
-
- this.picker.addClass('datepicker-orient-' + yorient);
- if (yorient === 'top')
- top -= calendarHeight + parseInt(this.picker.css('padding-top'));
- else
- top += height;
-
- if (this.o.rtl) {
- var right = windowWidth - (left + width);
- this.picker.css({
- top: top,
- right: right,
- zIndex: zIndex
- });
- } else {
- this.picker.css({
- top: top,
- left: left,
- zIndex: zIndex
- });
- }
- return this;
- },
-
- _allow_update: true,
- update: function(){
- if (!this._allow_update)
- return this;
-
- var oldDates = this.dates.copy(),
- dates = [],
- fromArgs = false;
- if (arguments.length){
- $.each(arguments, $.proxy(function(i, date){
- if (date instanceof Date)
- date = this._local_to_utc(date);
- dates.push(date);
- }, this));
- fromArgs = true;
- } else {
- dates = this.isInput
- ? this.element.val()
- : this.element.data('date') || this.inputField.val();
- if (dates && this.o.multidate)
- dates = dates.split(this.o.multidateSeparator);
- else
- dates = [dates];
- delete this.element.data().date;
- }
-
- dates = $.map(dates, $.proxy(function(date){
- return DPGlobal.parseDate(date, this.o.format, this.o.language, this.o.assumeNearbyYear);
- }, this));
- dates = $.grep(dates, $.proxy(function(date){
- return (
- !this.dateWithinRange(date) ||
- !date
- );
- }, this), true);
- this.dates.replace(dates);
-
- if (this.o.updateViewDate) {
- if (this.dates.length)
- this.viewDate = new Date(this.dates.get(-1));
- else if (this.viewDate < this.o.startDate)
- this.viewDate = new Date(this.o.startDate);
- else if (this.viewDate > this.o.endDate)
- this.viewDate = new Date(this.o.endDate);
- else
- this.viewDate = this.o.defaultViewDate;
- }
-
- if (fromArgs){
- // setting date by clicking
- this.setValue();
- this.element.change();
- }
- else if (this.dates.length){
- // setting date by typing
- if (String(oldDates) !== String(this.dates) && fromArgs) {
- this._trigger('changeDate');
- this.element.change();
- }
- }
- if (!this.dates.length && oldDates.length) {
- this._trigger('clearDate');
- this.element.change();
- }
-
- this.fill();
- return this;
- },
-
- fillDow: function(){
- if (this.o.showWeekDays) {
- var dowCnt = this.o.weekStart,
- html = '';
- if (this.o.calendarWeeks){
- html += ' ';
- }
- while (dowCnt < this.o.weekStart + 7){
- html += ''+dates[this.o.language].daysMin[(dowCnt++)%7]+' ';
- }
- html += ' ';
- this.picker.find('.datepicker-days thead').append(html);
- }
- },
-
- fillMonths: function(){
- var localDate = this._utc_to_local(this.viewDate);
- var html = '';
- var focused;
- for (var i = 0; i < 12; i++){
- focused = localDate && localDate.getMonth() === i ? ' focused' : '';
- html += '' + dates[this.o.language].monthsShort[i] + ' ';
- }
- this.picker.find('.datepicker-months td').html(html);
- },
-
- setRange: function(range){
- if (!range || !range.length)
- delete this.range;
- else
- this.range = $.map(range, function(d){
- return d.valueOf();
- });
- this.fill();
- },
-
- getClassNames: function(date){
- var cls = [],
- year = this.viewDate.getUTCFullYear(),
- month = this.viewDate.getUTCMonth(),
- today = UTCToday();
- if (date.getUTCFullYear() < year || (date.getUTCFullYear() === year && date.getUTCMonth() < month)){
- cls.push('old');
- } else if (date.getUTCFullYear() > year || (date.getUTCFullYear() === year && date.getUTCMonth() > month)){
- cls.push('new');
- }
- if (this.focusDate && date.valueOf() === this.focusDate.valueOf())
- cls.push('focused');
- // Compare internal UTC date with UTC today, not local today
- if (this.o.todayHighlight && isUTCEquals(date, today)) {
- cls.push('today');
- }
- if (this.dates.contains(date) !== -1)
- cls.push('active');
- if (!this.dateWithinRange(date)){
- cls.push('disabled');
- }
- if (this.dateIsDisabled(date)){
- cls.push('disabled', 'disabled-date');
- }
- if ($.inArray(date.getUTCDay(), this.o.daysOfWeekHighlighted) !== -1){
- cls.push('highlighted');
- }
-
- if (this.range){
- if (date > this.range[0] && date < this.range[this.range.length-1]){
- cls.push('range');
- }
- if ($.inArray(date.valueOf(), this.range) !== -1){
- cls.push('selected');
- }
- if (date.valueOf() === this.range[0]){
- cls.push('range-start');
- }
- if (date.valueOf() === this.range[this.range.length-1]){
- cls.push('range-end');
- }
- }
- return cls;
- },
-
- _fill_yearsView: function(selector, cssClass, factor, year, startYear, endYear, beforeFn){
- var html = '';
- var step = factor / 10;
- var view = this.picker.find(selector);
- var startVal = Math.floor(year / factor) * factor;
- var endVal = startVal + step * 9;
- var focusedVal = Math.floor(this.viewDate.getFullYear() / step) * step;
- var selected = $.map(this.dates, function(d){
- return Math.floor(d.getUTCFullYear() / step) * step;
- });
-
- var classes, tooltip, before;
- for (var currVal = startVal - step; currVal <= endVal + step; currVal += step) {
- classes = [cssClass];
- tooltip = null;
-
- if (currVal === startVal - step) {
- classes.push('old');
- } else if (currVal === endVal + step) {
- classes.push('new');
- }
- if ($.inArray(currVal, selected) !== -1) {
- classes.push('active');
- }
- if (currVal < startYear || currVal > endYear) {
- classes.push('disabled');
- }
- if (currVal === focusedVal) {
- classes.push('focused');
- }
-
- if (beforeFn !== $.noop) {
- before = beforeFn(new Date(currVal, 0, 1));
- if (before === undefined) {
- before = {};
- } else if (typeof before === 'boolean') {
- before = {enabled: before};
- } else if (typeof before === 'string') {
- before = {classes: before};
- }
- if (before.enabled === false) {
- classes.push('disabled');
- }
- if (before.classes) {
- classes = classes.concat(before.classes.split(/\s+/));
- }
- if (before.tooltip) {
- tooltip = before.tooltip;
- }
- }
-
- html += '' + currVal + ' ';
- }
-
- view.find('.datepicker-switch').text(startVal + '-' + endVal);
- view.find('td').html(html);
- },
-
- fill: function(){
- var d = new Date(this.viewDate),
- year = d.getUTCFullYear(),
- month = d.getUTCMonth(),
- startYear = this.o.startDate !== -Infinity ? this.o.startDate.getUTCFullYear() : -Infinity,
- startMonth = this.o.startDate !== -Infinity ? this.o.startDate.getUTCMonth() : -Infinity,
- endYear = this.o.endDate !== Infinity ? this.o.endDate.getUTCFullYear() : Infinity,
- endMonth = this.o.endDate !== Infinity ? this.o.endDate.getUTCMonth() : Infinity,
- todaytxt = dates[this.o.language].today || dates['en'].today || '',
- cleartxt = dates[this.o.language].clear || dates['en'].clear || '',
- titleFormat = dates[this.o.language].titleFormat || dates['en'].titleFormat,
- todayDate = UTCToday(),
- titleBtnVisible = (this.o.todayBtn === true || this.o.todayBtn === 'linked') && todayDate >= this.o.startDate && todayDate <= this.o.endDate && !this.weekOfDateIsDisabled(todayDate),
- tooltip,
- before;
- if (isNaN(year) || isNaN(month))
- return;
- this.picker.find('.datepicker-days .datepicker-switch')
- .text(DPGlobal.formatDate(d, titleFormat, this.o.language));
- this.picker.find('tfoot .today')
- .text(todaytxt)
- .css('display', titleBtnVisible ? 'table-cell' : 'none');
- this.picker.find('tfoot .clear')
- .text(cleartxt)
- .css('display', this.o.clearBtn === true ? 'table-cell' : 'none');
- this.picker.find('thead .datepicker-title')
- .text(this.o.title)
- .css('display', typeof this.o.title === 'string' && this.o.title !== '' ? 'table-cell' : 'none');
- this.updateNavArrows();
- this.fillMonths();
- var prevMonth = UTCDate(year, month, 0),
- day = prevMonth.getUTCDate();
- prevMonth.setUTCDate(day - (prevMonth.getUTCDay() - this.o.weekStart + 7)%7);
- var nextMonth = new Date(prevMonth);
- if (prevMonth.getUTCFullYear() < 100){
- nextMonth.setUTCFullYear(prevMonth.getUTCFullYear());
- }
- nextMonth.setUTCDate(nextMonth.getUTCDate() + 42);
- nextMonth = nextMonth.valueOf();
- var html = [];
- var weekDay, clsName;
- while (prevMonth.valueOf() < nextMonth){
- weekDay = prevMonth.getUTCDay();
- if (weekDay === this.o.weekStart){
- html.push('');
- if (this.o.calendarWeeks){
- // ISO 8601: First week contains first thursday.
- // ISO also states week starts on Monday, but we can be more abstract here.
- var
- // Start of current week: based on weekstart/current date
- ws = new Date(+prevMonth + (this.o.weekStart - weekDay - 7) % 7 * 864e5),
- // Thursday of this week
- th = new Date(Number(ws) + (7 + 4 - ws.getUTCDay()) % 7 * 864e5),
- // First Thursday of year, year from thursday
- yth = new Date(Number(yth = UTCDate(th.getUTCFullYear(), 0, 1)) + (7 + 4 - yth.getUTCDay()) % 7 * 864e5),
- // Calendar week: ms between thursdays, div ms per day, div 7 days
- calWeek = (th - yth) / 864e5 / 7 + 1;
- html.push(''+ calWeek +' ');
- }
- }
- clsName = this.getClassNames(prevMonth);
- clsName.push('day');
-
- var content = prevMonth.getUTCDate();
-
- if (this.o.beforeShowDay !== $.noop){
- before = this.o.beforeShowDay(this._utc_to_local(prevMonth));
- if (before === undefined)
- before = {};
- else if (typeof before === 'boolean')
- before = {enabled: before};
- else if (typeof before === 'string')
- before = {classes: before};
- if (before.enabled === false)
- clsName.push('disabled');
- if (before.classes)
- clsName = clsName.concat(before.classes.split(/\s+/));
- if (before.tooltip)
- tooltip = before.tooltip;
- if (before.content)
- content = before.content;
- }
-
- //Check if uniqueSort exists (supported by jquery >=1.12 and >=2.2)
- //Fallback to unique function for older jquery versions
- if ($.isFunction($.uniqueSort)) {
- clsName = $.uniqueSort(clsName);
- } else {
- clsName = $.unique(clsName);
- }
-
- html.push('' + content + ' ');
- tooltip = null;
- if (weekDay === this.o.weekEnd){
- html.push(' ');
- }
- prevMonth.setUTCDate(prevMonth.getUTCDate() + 1);
- }
- this.picker.find('.datepicker-days tbody').html(html.join(''));
-
- var monthsTitle = dates[this.o.language].monthsTitle || dates['en'].monthsTitle || 'Months';
- var months = this.picker.find('.datepicker-months')
- .find('.datepicker-switch')
- .text(this.o.maxViewMode < 2 ? monthsTitle : year)
- .end()
- .find('tbody span').removeClass('active');
-
- $.each(this.dates, function(i, d){
- if (d.getUTCFullYear() === year)
- months.eq(d.getUTCMonth()).addClass('active');
- });
-
- if (year < startYear || year > endYear){
- months.addClass('disabled');
- }
- if (year === startYear){
- months.slice(0, startMonth).addClass('disabled');
- }
- if (year === endYear){
- months.slice(endMonth+1).addClass('disabled');
- }
-
- if (this.o.beforeShowMonth !== $.noop){
- var that = this;
- $.each(months, function(i, month){
- var moDate = new Date(year, i, 1);
- var before = that.o.beforeShowMonth(moDate);
- if (before === undefined)
- before = {};
- else if (typeof before === 'boolean')
- before = {enabled: before};
- else if (typeof before === 'string')
- before = {classes: before};
- if (before.enabled === false && !$(month).hasClass('disabled'))
- $(month).addClass('disabled');
- if (before.classes)
- $(month).addClass(before.classes);
- if (before.tooltip)
- $(month).prop('title', before.tooltip);
- });
- }
-
- // Generating decade/years picker
- this._fill_yearsView(
- '.datepicker-years',
- 'year',
- 10,
- year,
- startYear,
- endYear,
- this.o.beforeShowYear
- );
-
- // Generating century/decades picker
- this._fill_yearsView(
- '.datepicker-decades',
- 'decade',
- 100,
- year,
- startYear,
- endYear,
- this.o.beforeShowDecade
- );
-
- // Generating millennium/centuries picker
- this._fill_yearsView(
- '.datepicker-centuries',
- 'century',
- 1000,
- year,
- startYear,
- endYear,
- this.o.beforeShowCentury
- );
- },
-
- updateNavArrows: function(){
- if (!this._allow_update)
- return;
-
- var d = new Date(this.viewDate),
- year = d.getUTCFullYear(),
- month = d.getUTCMonth(),
- startYear = this.o.startDate !== -Infinity ? this.o.startDate.getUTCFullYear() : -Infinity,
- startMonth = this.o.startDate !== -Infinity ? this.o.startDate.getUTCMonth() : -Infinity,
- endYear = this.o.endDate !== Infinity ? this.o.endDate.getUTCFullYear() : Infinity,
- endMonth = this.o.endDate !== Infinity ? this.o.endDate.getUTCMonth() : Infinity,
- prevIsDisabled,
- nextIsDisabled,
- factor = 1;
- switch (this.viewMode){
- case 4:
- factor *= 10;
- /* falls through */
- case 3:
- factor *= 10;
- /* falls through */
- case 2:
- factor *= 10;
- /* falls through */
- case 1:
- prevIsDisabled = Math.floor(year / factor) * factor <= startYear;
- nextIsDisabled = Math.floor(year / factor) * factor + factor > endYear;
- break;
- case 0:
- prevIsDisabled = year <= startYear && month <= startMonth;
- nextIsDisabled = year >= endYear && month >= endMonth;
- break;
- }
-
- this.picker.find('.prev').toggleClass('disabled', prevIsDisabled);
- this.picker.find('.next').toggleClass('disabled', nextIsDisabled);
- },
-
- click: function(e){
- e.preventDefault();
- e.stopPropagation();
-
- var target, dir, day, year, month;
- target = $(e.target);
-
- // Clicked on the switch
- if (target.hasClass('datepicker-switch') && this.viewMode !== this.o.maxViewMode){
- this.setViewMode(this.viewMode + 1);
- }
-
- // Clicked on today button
- if (target.hasClass('today') && !target.hasClass('day')){
- this.setViewMode(0);
- this._setDate(UTCToday(), this.o.todayBtn === 'linked' ? null : 'view');
- }
-
- // Clicked on clear button
- if (target.hasClass('clear')){
- this.clearDates();
- }
-
- if (!target.hasClass('disabled')){
- // Clicked on a month, year, decade, century
- if (target.hasClass('month')
- || target.hasClass('year')
- || target.hasClass('decade')
- || target.hasClass('century')) {
- this.viewDate.setUTCDate(1);
-
- day = 1;
- if (this.viewMode === 1){
- month = target.parent().find('span').index(target);
- year = this.viewDate.getUTCFullYear();
- this.viewDate.setUTCMonth(month);
- } else {
- month = 0;
- year = Number(target.text());
- this.viewDate.setUTCFullYear(year);
- }
-
- this._trigger(DPGlobal.viewModes[this.viewMode - 1].e, this.viewDate);
-
- if (this.viewMode === this.o.minViewMode){
- this._setDate(UTCDate(year, month, day));
- } else {
- this.setViewMode(this.viewMode - 1);
- this.fill();
- }
- }
- }
-
- if (this.picker.is(':visible') && this._focused_from){
- this._focused_from.focus();
- }
- delete this._focused_from;
- },
-
- dayCellClick: function(e){
- var $target = $(e.currentTarget);
- var timestamp = $target.data('date');
- var date = new Date(timestamp);
-
- if (this.o.updateViewDate) {
- if (date.getUTCFullYear() !== this.viewDate.getUTCFullYear()) {
- this._trigger('changeYear', this.viewDate);
- }
-
- if (date.getUTCMonth() !== this.viewDate.getUTCMonth()) {
- this._trigger('changeMonth', this.viewDate);
- }
- }
- this._setDate(date);
- },
-
- // Clicked on prev or next
- navArrowsClick: function(e){
- var $target = $(e.currentTarget);
- var dir = $target.hasClass('prev') ? -1 : 1;
- if (this.viewMode !== 0){
- dir *= DPGlobal.viewModes[this.viewMode].navStep * 12;
- }
- this.viewDate = this.moveMonth(this.viewDate, dir);
- this._trigger(DPGlobal.viewModes[this.viewMode].e, this.viewDate);
- this.fill();
- },
-
- _toggle_multidate: function(date){
- var ix = this.dates.contains(date);
- if (!date){
- this.dates.clear();
- }
-
- if (ix !== -1){
- if (this.o.multidate === true || this.o.multidate > 1 || this.o.toggleActive){
- this.dates.remove(ix);
- }
- } else if (this.o.multidate === false) {
- this.dates.clear();
- this.dates.push(date);
- }
- else {
- this.dates.push(date);
- }
-
- if (typeof this.o.multidate === 'number')
- while (this.dates.length > this.o.multidate)
- this.dates.remove(0);
- },
-
- _setDate: function(date, which){
- if (!which || which === 'date')
- this._toggle_multidate(date && new Date(date));
- if ((!which && this.o.updateViewDate) || which === 'view')
- this.viewDate = date && new Date(date);
-
- this.fill();
- this.setValue();
- if (!which || which !== 'view') {
- this._trigger('changeDate');
- }
- this.inputField.trigger('change');
- if (this.o.autoclose && (!which || which === 'date')){
- this.hide();
- }
- },
-
- moveDay: function(date, dir){
- var newDate = new Date(date);
- newDate.setUTCDate(date.getUTCDate() + dir);
-
- return newDate;
- },
-
- moveWeek: function(date, dir){
- return this.moveDay(date, dir * 7);
- },
-
- moveMonth: function(date, dir){
- if (!isValidDate(date))
- return this.o.defaultViewDate;
- if (!dir)
- return date;
- var new_date = new Date(date.valueOf()),
- day = new_date.getUTCDate(),
- month = new_date.getUTCMonth(),
- mag = Math.abs(dir),
- new_month, test;
- dir = dir > 0 ? 1 : -1;
- if (mag === 1){
- test = dir === -1
- // If going back one month, make sure month is not current month
- // (eg, Mar 31 -> Feb 31 == Feb 28, not Mar 02)
- ? function(){
- return new_date.getUTCMonth() === month;
- }
- // If going forward one month, make sure month is as expected
- // (eg, Jan 31 -> Feb 31 == Feb 28, not Mar 02)
- : function(){
- return new_date.getUTCMonth() !== new_month;
- };
- new_month = month + dir;
- new_date.setUTCMonth(new_month);
- // Dec -> Jan (12) or Jan -> Dec (-1) -- limit expected date to 0-11
- new_month = (new_month + 12) % 12;
- }
- else {
- // For magnitudes >1, move one month at a time...
- for (var i=0; i < mag; i++)
- // ...which might decrease the day (eg, Jan 31 to Feb 28, etc)...
- new_date = this.moveMonth(new_date, dir);
- // ...then reset the day, keeping it in the new month
- new_month = new_date.getUTCMonth();
- new_date.setUTCDate(day);
- test = function(){
- return new_month !== new_date.getUTCMonth();
- };
- }
- // Common date-resetting loop -- if date is beyond end of month, make it
- // end of month
- while (test()){
- new_date.setUTCDate(--day);
- new_date.setUTCMonth(new_month);
- }
- return new_date;
- },
-
- moveYear: function(date, dir){
- return this.moveMonth(date, dir*12);
- },
-
- moveAvailableDate: function(date, dir, fn){
- do {
- date = this[fn](date, dir);
-
- if (!this.dateWithinRange(date))
- return false;
-
- fn = 'moveDay';
- }
- while (this.dateIsDisabled(date));
-
- return date;
- },
-
- weekOfDateIsDisabled: function(date){
- return $.inArray(date.getUTCDay(), this.o.daysOfWeekDisabled) !== -1;
- },
-
- dateIsDisabled: function(date){
- return (
- this.weekOfDateIsDisabled(date) ||
- $.grep(this.o.datesDisabled, function(d){
- return isUTCEquals(date, d);
- }).length > 0
- );
- },
-
- dateWithinRange: function(date){
- return date >= this.o.startDate && date <= this.o.endDate;
- },
-
- keydown: function(e){
- if (!this.picker.is(':visible')){
- if (e.keyCode === 40 || e.keyCode === 27) { // allow down to re-show picker
- this.show();
- e.stopPropagation();
- }
- return;
- }
- var dateChanged = false,
- dir, newViewDate,
- focusDate = this.focusDate || this.viewDate;
- switch (e.keyCode){
- case 27: // escape
- if (this.focusDate){
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.fill();
- }
- else
- this.hide();
- e.preventDefault();
- e.stopPropagation();
- break;
- case 37: // left
- case 38: // up
- case 39: // right
- case 40: // down
- if (!this.o.keyboardNavigation || this.o.daysOfWeekDisabled.length === 7)
- break;
- dir = e.keyCode === 37 || e.keyCode === 38 ? -1 : 1;
- if (this.viewMode === 0) {
- if (e.ctrlKey){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveYear');
-
- if (newViewDate)
- this._trigger('changeYear', this.viewDate);
- } else if (e.shiftKey){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveMonth');
-
- if (newViewDate)
- this._trigger('changeMonth', this.viewDate);
- } else if (e.keyCode === 37 || e.keyCode === 39){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveDay');
- } else if (!this.weekOfDateIsDisabled(focusDate)){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveWeek');
- }
- } else if (this.viewMode === 1) {
- if (e.keyCode === 38 || e.keyCode === 40) {
- dir = dir * 4;
- }
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveMonth');
- } else if (this.viewMode === 2) {
- if (e.keyCode === 38 || e.keyCode === 40) {
- dir = dir * 4;
- }
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveYear');
- }
- if (newViewDate){
- this.focusDate = this.viewDate = newViewDate;
- this.setValue();
- this.fill();
- e.preventDefault();
- }
- break;
- case 13: // enter
- if (!this.o.forceParse)
- break;
- focusDate = this.focusDate || this.dates.get(-1) || this.viewDate;
- if (this.o.keyboardNavigation) {
- this._toggle_multidate(focusDate);
- dateChanged = true;
- }
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.setValue();
- this.fill();
- if (this.picker.is(':visible')){
- e.preventDefault();
- e.stopPropagation();
- if (this.o.autoclose)
- this.hide();
- }
- break;
- case 9: // tab
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.fill();
- this.hide();
- break;
- }
- if (dateChanged){
- if (this.dates.length)
- this._trigger('changeDate');
- else
- this._trigger('clearDate');
- this.inputField.trigger('change');
- }
- },
-
- setViewMode: function(viewMode){
- this.viewMode = viewMode;
- this.picker
- .children('div')
- .hide()
- .filter('.datepicker-' + DPGlobal.viewModes[this.viewMode].clsName)
- .show();
- this.updateNavArrows();
- this._trigger('changeViewMode', new Date(this.viewDate));
- }
- };
-
- var DateRangePicker = function(element, options){
- $.data(element, 'datepicker', this);
- this.element = $(element);
- this.inputs = $.map(options.inputs, function(i){
- return i.jquery ? i[0] : i;
- });
- delete options.inputs;
-
- this.keepEmptyValues = options.keepEmptyValues;
- delete options.keepEmptyValues;
-
- datepickerPlugin.call($(this.inputs), options)
- .on('changeDate', $.proxy(this.dateUpdated, this));
-
- this.pickers = $.map(this.inputs, function(i){
- return $.data(i, 'datepicker');
- });
- this.updateDates();
- };
- DateRangePicker.prototype = {
- updateDates: function(){
- this.dates = $.map(this.pickers, function(i){
- return i.getUTCDate();
- });
- this.updateRanges();
- },
- updateRanges: function(){
- var range = $.map(this.dates, function(d){
- return d.valueOf();
- });
- $.each(this.pickers, function(i, p){
- p.setRange(range);
- });
- },
- clearDates: function(){
- $.each(this.pickers, function(i, p){
- p.clearDates();
- });
- },
- dateUpdated: function(e){
- // `this.updating` is a workaround for preventing infinite recursion
- // between `changeDate` triggering and `setUTCDate` calling. Until
- // there is a better mechanism.
- if (this.updating)
- return;
- this.updating = true;
-
- var dp = $.data(e.target, 'datepicker');
-
- if (dp === undefined) {
- return;
- }
-
- var new_date = dp.getUTCDate(),
- keep_empty_values = this.keepEmptyValues,
- i = $.inArray(e.target, this.inputs),
- j = i - 1,
- k = i + 1,
- l = this.inputs.length;
- if (i === -1)
- return;
-
- $.each(this.pickers, function(i, p){
- if (!p.getUTCDate() && (p === dp || !keep_empty_values))
- p.setUTCDate(new_date);
- });
-
- if (new_date < this.dates[j]){
- // Date being moved earlier/left
- while (j >= 0 && new_date < this.dates[j]){
- this.pickers[j--].setUTCDate(new_date);
- }
- } else if (new_date > this.dates[k]){
- // Date being moved later/right
- while (k < l && new_date > this.dates[k]){
- this.pickers[k++].setUTCDate(new_date);
- }
- }
- this.updateDates();
-
- delete this.updating;
- },
- destroy: function(){
- $.map(this.pickers, function(p){ p.destroy(); });
- $(this.inputs).off('changeDate', this.dateUpdated);
- delete this.element.data().datepicker;
- },
- remove: alias('destroy', 'Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead')
- };
-
- function opts_from_el(el, prefix){
- // Derive options from element data-attrs
- var data = $(el).data(),
- out = {}, inkey,
- replace = new RegExp('^' + prefix.toLowerCase() + '([A-Z])');
- prefix = new RegExp('^' + prefix.toLowerCase());
- function re_lower(_,a){
- return a.toLowerCase();
- }
- for (var key in data)
- if (prefix.test(key)){
- inkey = key.replace(replace, re_lower);
- out[inkey] = data[key];
- }
- return out;
- }
-
- function opts_from_locale(lang){
- // Derive options from locale plugins
- var out = {};
- // Check if "de-DE" style date is available, if not language should
- // fallback to 2 letter code eg "de"
- if (!dates[lang]){
- lang = lang.split('-')[0];
- if (!dates[lang])
- return;
- }
- var d = dates[lang];
- $.each(locale_opts, function(i,k){
- if (k in d)
- out[k] = d[k];
- });
- return out;
- }
-
- var old = $.fn.datepicker;
- var datepickerPlugin = function(option){
- var args = Array.apply(null, arguments);
- args.shift();
- var internal_return;
- this.each(function(){
- var $this = $(this),
- data = $this.data('datepicker'),
- options = typeof option === 'object' && option;
- if (!data){
- var elopts = opts_from_el(this, 'date'),
- // Preliminary otions
- xopts = $.extend({}, defaults, elopts, options),
- locopts = opts_from_locale(xopts.language),
- // Options priority: js args, data-attrs, locales, defaults
- opts = $.extend({}, defaults, locopts, elopts, options);
- if ($this.hasClass('input-daterange') || opts.inputs){
- $.extend(opts, {
- inputs: opts.inputs || $this.find('input').toArray()
- });
- data = new DateRangePicker(this, opts);
- }
- else {
- data = new Datepicker(this, opts);
- }
- $this.data('datepicker', data);
- }
- if (typeof option === 'string' && typeof data[option] === 'function'){
- internal_return = data[option].apply(data, args);
- }
- });
-
- if (
- internal_return === undefined ||
- internal_return instanceof Datepicker ||
- internal_return instanceof DateRangePicker
- )
- return this;
-
- if (this.length > 1)
- throw new Error('Using only allowed for the collection of a single element (' + option + ' function)');
- else
- return internal_return;
- };
- $.fn.datepicker = datepickerPlugin;
-
- var defaults = $.fn.datepicker.defaults = {
- assumeNearbyYear: false,
- autoclose: false,
- beforeShowDay: $.noop,
- beforeShowMonth: $.noop,
- beforeShowYear: $.noop,
- beforeShowDecade: $.noop,
- beforeShowCentury: $.noop,
- calendarWeeks: false,
- clearBtn: false,
- toggleActive: false,
- daysOfWeekDisabled: [],
- daysOfWeekHighlighted: [],
- datesDisabled: [],
- endDate: Infinity,
- forceParse: true,
- format: 'mm/dd/yyyy',
- keepEmptyValues: false,
- keyboardNavigation: true,
- language: 'en',
- minViewMode: 0,
- maxViewMode: 4,
- multidate: false,
- multidateSeparator: ',',
- orientation: "auto",
- rtl: false,
- startDate: -Infinity,
- startView: 0,
- todayBtn: false,
- todayHighlight: false,
- updateViewDate: true,
- weekStart: 0,
- disableTouchKeyboard: false,
- enableOnReadonly: true,
- showOnFocus: true,
- zIndexOffset: 10,
- container: 'body',
- immediateUpdates: false,
- title: '',
- templates: {
- leftArrow: '«',
- rightArrow: '»'
- },
- showWeekDays: true
- };
- var locale_opts = $.fn.datepicker.locale_opts = [
- 'format',
- 'rtl',
- 'weekStart'
- ];
- $.fn.datepicker.Constructor = Datepicker;
- var dates = $.fn.datepicker.dates = {
- en: {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- clear: "Clear",
- titleFormat: "MM yyyy"
- }
- };
-
- var DPGlobal = {
- viewModes: [
- {
- names: ['days', 'month'],
- clsName: 'days',
- e: 'changeMonth'
- },
- {
- names: ['months', 'year'],
- clsName: 'months',
- e: 'changeYear',
- navStep: 1
- },
- {
- names: ['years', 'decade'],
- clsName: 'years',
- e: 'changeDecade',
- navStep: 10
- },
- {
- names: ['decades', 'century'],
- clsName: 'decades',
- e: 'changeCentury',
- navStep: 100
- },
- {
- names: ['centuries', 'millennium'],
- clsName: 'centuries',
- e: 'changeMillennium',
- navStep: 1000
- }
- ],
- validParts: /dd?|DD?|mm?|MM?|yy(?:yy)?/g,
- nonpunctuation: /[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,
- parseFormat: function(format){
- if (typeof format.toValue === 'function' && typeof format.toDisplay === 'function')
- return format;
- // IE treats \0 as a string end in inputs (truncating the value),
- // so it's a bad format delimiter, anyway
- var separators = format.replace(this.validParts, '\0').split('\0'),
- parts = format.match(this.validParts);
- if (!separators || !separators.length || !parts || parts.length === 0){
- throw new Error("Invalid date format.");
- }
- return {separators: separators, parts: parts};
- },
- parseDate: function(date, format, language, assumeNearby){
- if (!date)
- return undefined;
- if (date instanceof Date)
- return date;
- if (typeof format === 'string')
- format = DPGlobal.parseFormat(format);
- if (format.toValue)
- return format.toValue(date, format, language);
- var fn_map = {
- d: 'moveDay',
- m: 'moveMonth',
- w: 'moveWeek',
- y: 'moveYear'
- },
- dateAliases = {
- yesterday: '-1d',
- today: '+0d',
- tomorrow: '+1d'
- },
- parts, part, dir, i, fn;
- if (date in dateAliases){
- date = dateAliases[date];
- }
- if (/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(date)){
- parts = date.match(/([\-+]\d+)([dmwy])/gi);
- date = new Date();
- for (i=0; i < parts.length; i++){
- part = parts[i].match(/([\-+]\d+)([dmwy])/i);
- dir = Number(part[1]);
- fn = fn_map[part[2].toLowerCase()];
- date = Datepicker.prototype[fn](date, dir);
- }
- return Datepicker.prototype._zero_utc_time(date);
- }
-
- parts = date && date.match(this.nonpunctuation) || [];
-
- function applyNearbyYear(year, threshold){
- if (threshold === true)
- threshold = 10;
-
- // if year is 2 digits or less, than the user most likely is trying to get a recent century
- if (year < 100){
- year += 2000;
- // if the new year is more than threshold years in advance, use last century
- if (year > ((new Date()).getFullYear()+threshold)){
- year -= 100;
- }
- }
-
- return year;
- }
-
- var parsed = {},
- setters_order = ['yyyy', 'yy', 'M', 'MM', 'm', 'mm', 'd', 'dd'],
- setters_map = {
- yyyy: function(d,v){
- return d.setUTCFullYear(assumeNearby ? applyNearbyYear(v, assumeNearby) : v);
- },
- m: function(d,v){
- if (isNaN(d))
- return d;
- v -= 1;
- while (v < 0) v += 12;
- v %= 12;
- d.setUTCMonth(v);
- while (d.getUTCMonth() !== v)
- d.setUTCDate(d.getUTCDate()-1);
- return d;
- },
- d: function(d,v){
- return d.setUTCDate(v);
- }
- },
- val, filtered;
- setters_map['yy'] = setters_map['yyyy'];
- setters_map['M'] = setters_map['MM'] = setters_map['mm'] = setters_map['m'];
- setters_map['dd'] = setters_map['d'];
- date = UTCToday();
- var fparts = format.parts.slice();
- // Remove noop parts
- if (parts.length !== fparts.length){
- fparts = $(fparts).filter(function(i,p){
- return $.inArray(p, setters_order) !== -1;
- }).toArray();
- }
- // Process remainder
- function match_part(){
- var m = this.slice(0, parts[i].length),
- p = parts[i].slice(0, m.length);
- return m.toLowerCase() === p.toLowerCase();
- }
- if (parts.length === fparts.length){
- var cnt;
- for (i=0, cnt = fparts.length; i < cnt; i++){
- val = parseInt(parts[i], 10);
- part = fparts[i];
- if (isNaN(val)){
- switch (part){
- case 'MM':
- filtered = $(dates[language].months).filter(match_part);
- val = $.inArray(filtered[0], dates[language].months) + 1;
- break;
- case 'M':
- filtered = $(dates[language].monthsShort).filter(match_part);
- val = $.inArray(filtered[0], dates[language].monthsShort) + 1;
- break;
- }
- }
- parsed[part] = val;
- }
- var _date, s;
- for (i=0; i < setters_order.length; i++){
- s = setters_order[i];
- if (s in parsed && !isNaN(parsed[s])){
- _date = new Date(date);
- setters_map[s](_date, parsed[s]);
- if (!isNaN(_date))
- date = _date;
- }
- }
- }
- return date;
- },
- formatDate: function(date, format, language){
- if (!date)
- return '';
- if (typeof format === 'string')
- format = DPGlobal.parseFormat(format);
- if (format.toDisplay)
- return format.toDisplay(date, format, language);
- var val = {
- d: date.getUTCDate(),
- D: dates[language].daysShort[date.getUTCDay()],
- DD: dates[language].days[date.getUTCDay()],
- m: date.getUTCMonth() + 1,
- M: dates[language].monthsShort[date.getUTCMonth()],
- MM: dates[language].months[date.getUTCMonth()],
- yy: date.getUTCFullYear().toString().substring(2),
- yyyy: date.getUTCFullYear()
- };
- val.dd = (val.d < 10 ? '0' : '') + val.d;
- val.mm = (val.m < 10 ? '0' : '') + val.m;
- date = [];
- var seps = $.extend([], format.separators);
- for (var i=0, cnt = format.parts.length; i <= cnt; i++){
- if (seps.length)
- date.push(seps.shift());
- date.push(val[format.parts[i]]);
- }
- return date.join('');
- },
- headTemplate: ''+
- ''+
- ' '+
- ' '+
- ''+
- ''+defaults.templates.leftArrow+' '+
- ' '+
- ''+defaults.templates.rightArrow+' '+
- ' '+
- ' ',
- contTemplate: ' ',
- footTemplate: ''+
- ''+
- ' '+
- ' '+
- ''+
- ' '+
- ' '+
- ' '
- };
- DPGlobal.template = ''+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- ' '+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
';
-
- $.fn.datepicker.DPGlobal = DPGlobal;
-
-
- /* DATEPICKER NO CONFLICT
- * =================== */
-
- $.fn.datepicker.noConflict = function(){
- $.fn.datepicker = old;
- return this;
- };
-
- /* DATEPICKER VERSION
- * =================== */
- $.fn.datepicker.version = '1.9.0';
-
- $.fn.datepicker.deprecated = function(msg){
- var console = window.console;
- if (console && console.warn) {
- console.warn('DEPRECATED: ' + msg);
- }
- };
-
-
- /* DATEPICKER DATA-API
- * ================== */
-
- $(document).on(
- 'focus.datepicker.data-api click.datepicker.data-api',
- '[data-provide="datepicker"]',
- function(e){
- var $this = $(this);
- if ($this.data('datepicker'))
- return;
- e.preventDefault();
- // component click requires us to explicitly show it
- datepickerPlugin.call($this, 'show');
- }
- );
- $(function(){
- datepickerPlugin.call($('[data-provide="datepicker-inline"]'));
- });
-
-}));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js
deleted file mode 100755
index 8800106e8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*!
- * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
- *
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- */
-
-!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a,b){function c(){return new Date(Date.UTC.apply(Date,arguments))}function d(){var a=new Date;return c(a.getFullYear(),a.getMonth(),a.getDate())}function e(a,b){return a.getUTCFullYear()===b.getUTCFullYear()&&a.getUTCMonth()===b.getUTCMonth()&&a.getUTCDate()===b.getUTCDate()}function f(c,d){return function(){return d!==b&&a.fn.datepicker.deprecated(d),this[c].apply(this,arguments)}}function g(a){return a&&!isNaN(a.getTime())}function h(b,c){function d(a,b){return b.toLowerCase()}var e,f=a(b).data(),g={},h=new RegExp("^"+c.toLowerCase()+"([A-Z])");c=new RegExp("^"+c.toLowerCase());for(var i in f)c.test(i)&&(e=i.replace(h,d),g[e]=f[i]);return g}function i(b){var c={};if(q[b]||(b=b.split("-")[0],q[b])){var d=q[b];return a.each(p,function(a,b){b in d&&(c[b]=d[b])}),c}}var j=function(){var b={get:function(a){return this.slice(a)[0]},contains:function(a){for(var b=a&&a.valueOf(),c=0,d=this.length;c]/g)||[]).length<=0)return!0;return a(c).length>0}catch(a){return!1}},_process_options:function(b){this._o=a.extend({},this._o,b);var e=this.o=a.extend({},this._o),f=e.language;q[f]||(f=f.split("-")[0],q[f]||(f=o.language)),e.language=f,e.startView=this._resolveViewName(e.startView),e.minViewMode=this._resolveViewName(e.minViewMode),e.maxViewMode=this._resolveViewName(e.maxViewMode),e.startView=Math.max(this.o.minViewMode,Math.min(this.o.maxViewMode,e.startView)),!0!==e.multidate&&(e.multidate=Number(e.multidate)||!1,!1!==e.multidate&&(e.multidate=Math.max(0,e.multidate))),e.multidateSeparator=String(e.multidateSeparator),e.weekStart%=7,e.weekEnd=(e.weekStart+6)%7;var g=r.parseFormat(e.format);e.startDate!==-1/0&&(e.startDate?e.startDate instanceof Date?e.startDate=this._local_to_utc(this._zero_time(e.startDate)):e.startDate=r.parseDate(e.startDate,g,e.language,e.assumeNearbyYear):e.startDate=-1/0),e.endDate!==1/0&&(e.endDate?e.endDate instanceof Date?e.endDate=this._local_to_utc(this._zero_time(e.endDate)):e.endDate=r.parseDate(e.endDate,g,e.language,e.assumeNearbyYear):e.endDate=1/0),e.daysOfWeekDisabled=this._resolveDaysOfWeek(e.daysOfWeekDisabled||[]),e.daysOfWeekHighlighted=this._resolveDaysOfWeek(e.daysOfWeekHighlighted||[]),e.datesDisabled=e.datesDisabled||[],a.isArray(e.datesDisabled)||(e.datesDisabled=e.datesDisabled.split(",")),e.datesDisabled=a.map(e.datesDisabled,function(a){return r.parseDate(a,g,e.language,e.assumeNearbyYear)});var h=String(e.orientation).toLowerCase().split(/\s+/g),i=e.orientation.toLowerCase();if(h=a.grep(h,function(a){return/^auto|left|right|top|bottom$/.test(a)}),e.orientation={x:"auto",y:"auto"},i&&"auto"!==i)if(1===h.length)switch(h[0]){case"top":case"bottom":e.orientation.y=h[0];break;case"left":case"right":e.orientation.x=h[0]}else i=a.grep(h,function(a){return/^left|right$/.test(a)}),e.orientation.x=i[0]||"auto",i=a.grep(h,function(a){return/^top|bottom$/.test(a)}),e.orientation.y=i[0]||"auto";else;if(e.defaultViewDate instanceof Date||"string"==typeof e.defaultViewDate)e.defaultViewDate=r.parseDate(e.defaultViewDate,g,e.language,e.assumeNearbyYear);else if(e.defaultViewDate){var j=e.defaultViewDate.year||(new Date).getFullYear(),k=e.defaultViewDate.month||0,l=e.defaultViewDate.day||1;e.defaultViewDate=c(j,k,l)}else e.defaultViewDate=d()},_applyEvents:function(a){for(var c,d,e,f=0;fe?(this.picker.addClass("datepicker-orient-right"),m+=l-b):this.o.rtl?this.picker.addClass("datepicker-orient-right"):this.picker.addClass("datepicker-orient-left");var o,p=this.o.orientation.y;if("auto"===p&&(o=-f+n-c,p=o<0?"bottom":"top"),this.picker.addClass("datepicker-orient-"+p),"top"===p?n-=c+parseInt(this.picker.css("padding-top")):n+=k,this.o.rtl){var q=e-(m+l);this.picker.css({top:n,right:q,zIndex:i})}else this.picker.css({top:n,left:m,zIndex:i});return this},_allow_update:!0,update:function(){if(!this._allow_update)return this;var b=this.dates.copy(),c=[],d=!1;return arguments.length?(a.each(arguments,a.proxy(function(a,b){b instanceof Date&&(b=this._local_to_utc(b)),c.push(b)},this)),d=!0):(c=this.isInput?this.element.val():this.element.data("date")||this.inputField.val(),c=c&&this.o.multidate?c.split(this.o.multidateSeparator):[c],delete this.element.data().date),c=a.map(c,a.proxy(function(a){return r.parseDate(a,this.o.format,this.o.language,this.o.assumeNearbyYear)},this)),c=a.grep(c,a.proxy(function(a){return!this.dateWithinRange(a)||!a},this),!0),this.dates.replace(c),this.o.updateViewDate&&(this.dates.length?this.viewDate=new Date(this.dates.get(-1)):this.viewDatethis.o.endDate?this.viewDate=new Date(this.o.endDate):this.viewDate=this.o.defaultViewDate),d?(this.setValue(),this.element.change()):this.dates.length&&String(b)!==String(this.dates)&&d&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&b.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var b=this.o.weekStart,c="";for(this.o.calendarWeeks&&(c+=' ');b'+q[this.o.language].daysMin[b++%7]+"";c+=" ",this.picker.find(".datepicker-days thead").append(c)}},fillMonths:function(){for(var a,b=this._utc_to_local(this.viewDate),c="",d=0;d<12;d++)a=b&&b.getMonth()===d?" focused":"",c+=''+q[this.o.language].monthsShort[d]+" ";this.picker.find(".datepicker-months td").html(c)},setRange:function(b){b&&b.length?this.range=a.map(b,function(a){return a.valueOf()}):delete this.range,this.fill()},getClassNames:function(b){var c=[],f=this.viewDate.getUTCFullYear(),g=this.viewDate.getUTCMonth(),h=d();return b.getUTCFullYear()f||b.getUTCFullYear()===f&&b.getUTCMonth()>g)&&c.push("new"),this.focusDate&&b.valueOf()===this.focusDate.valueOf()&&c.push("focused"),this.o.todayHighlight&&e(b,h)&&c.push("today"),-1!==this.dates.contains(b)&&c.push("active"),this.dateWithinRange(b)||c.push("disabled"),this.dateIsDisabled(b)&&c.push("disabled","disabled-date"),-1!==a.inArray(b.getUTCDay(),this.o.daysOfWeekHighlighted)&&c.push("highlighted"),this.range&&(b>this.range[0]&&bh)&&j.push("disabled"),t===r&&j.push("focused"),i!==a.noop&&(l=i(new Date(t,0,1)),l===b?l={}:"boolean"==typeof l?l={enabled:l}:"string"==typeof l&&(l={classes:l}),!1===l.enabled&&j.push("disabled"),l.classes&&(j=j.concat(l.classes.split(/\s+/))),l.tooltip&&(k=l.tooltip)),m+='"+t+" ";o.find(".datepicker-switch").text(p+"-"+q),o.find("td").html(m)},fill:function(){var e,f,g=new Date(this.viewDate),h=g.getUTCFullYear(),i=g.getUTCMonth(),j=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,k=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,l=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,m=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,n=q[this.o.language].today||q.en.today||"",o=q[this.o.language].clear||q.en.clear||"",p=q[this.o.language].titleFormat||q.en.titleFormat,s=d(),t=(!0===this.o.todayBtn||"linked"===this.o.todayBtn)&&s>=this.o.startDate&&s<=this.o.endDate&&!this.weekOfDateIsDisabled(s);if(!isNaN(h)&&!isNaN(i)){this.picker.find(".datepicker-days .datepicker-switch").text(r.formatDate(g,p,this.o.language)),this.picker.find("tfoot .today").text(n).css("display",t?"table-cell":"none"),this.picker.find("tfoot .clear").text(o).css("display",!0===this.o.clearBtn?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display","string"==typeof this.o.title&&""!==this.o.title?"table-cell":"none"),this.updateNavArrows(),this.fillMonths();var u=c(h,i,0),v=u.getUTCDate();u.setUTCDate(v-(u.getUTCDay()-this.o.weekStart+7)%7);var w=new Date(u);u.getUTCFullYear()<100&&w.setUTCFullYear(u.getUTCFullYear()),w.setUTCDate(w.getUTCDate()+42),w=w.valueOf();for(var x,y,z=[];u.valueOf()"),this.o.calendarWeeks)){var A=new Date(+u+(this.o.weekStart-x-7)%7*864e5),B=new Date(Number(A)+(11-A.getUTCDay())%7*864e5),C=new Date(Number(C=c(B.getUTCFullYear(),0,1))+(11-C.getUTCDay())%7*864e5),D=(B-C)/864e5/7+1;z.push(''+D+" ")}y=this.getClassNames(u),y.push("day");var E=u.getUTCDate();this.o.beforeShowDay!==a.noop&&(f=this.o.beforeShowDay(this._utc_to_local(u)),f===b?f={}:"boolean"==typeof f?f={enabled:f}:"string"==typeof f&&(f={classes:f}),!1===f.enabled&&y.push("disabled"),f.classes&&(y=y.concat(f.classes.split(/\s+/))),f.tooltip&&(e=f.tooltip),f.content&&(E=f.content)),y=a.isFunction(a.uniqueSort)?a.uniqueSort(y):a.unique(y),z.push(''+E+" "),e=null,x===this.o.weekEnd&&z.push(""),u.setUTCDate(u.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(z.join(""));var F=q[this.o.language].monthsTitle||q.en.monthsTitle||"Months",G=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?F:h).end().find("tbody span").removeClass("active");if(a.each(this.dates,function(a,b){b.getUTCFullYear()===h&&G.eq(b.getUTCMonth()).addClass("active")}),(hl)&&G.addClass("disabled"),h===j&&G.slice(0,k).addClass("disabled"),h===l&&G.slice(m+1).addClass("disabled"),this.o.beforeShowMonth!==a.noop){var H=this;a.each(G,function(c,d){var e=new Date(h,c,1),f=H.o.beforeShowMonth(e);f===b?f={}:"boolean"==typeof f?f={enabled:f}:"string"==typeof f&&(f={classes:f}),!1!==f.enabled||a(d).hasClass("disabled")||a(d).addClass("disabled"),f.classes&&a(d).addClass(f.classes),f.tooltip&&a(d).prop("title",f.tooltip)})}this._fill_yearsView(".datepicker-years","year",10,h,j,l,this.o.beforeShowYear),this._fill_yearsView(".datepicker-decades","decade",100,h,j,l,this.o.beforeShowDecade),this._fill_yearsView(".datepicker-centuries","century",1e3,h,j,l,this.o.beforeShowCentury)}},updateNavArrows:function(){if(this._allow_update){var a,b,c=new Date(this.viewDate),d=c.getUTCFullYear(),e=c.getUTCMonth(),f=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,g=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,h=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,i=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,j=1;switch(this.viewMode){case 4:j*=10;case 3:j*=10;case 2:j*=10;case 1:a=Math.floor(d/j)*j<=f,b=Math.floor(d/j)*j+j>h;break;case 0:a=d<=f&&e<=g,b=d>=h&&e>=i}this.picker.find(".prev").toggleClass("disabled",a),this.picker.find(".next").toggleClass("disabled",b)}},click:function(b){b.preventDefault(),b.stopPropagation();var e,f,g,h;e=a(b.target),e.hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1),e.hasClass("today")&&!e.hasClass("day")&&(this.setViewMode(0),this._setDate(d(),"linked"===this.o.todayBtn?null:"view")),e.hasClass("clear")&&this.clearDates(),e.hasClass("disabled")||(e.hasClass("month")||e.hasClass("year")||e.hasClass("decade")||e.hasClass("century"))&&(this.viewDate.setUTCDate(1),f=1,1===this.viewMode?(h=e.parent().find("span").index(e),g=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(h)):(h=0,g=Number(e.text()),this.viewDate.setUTCFullYear(g)),this._trigger(r.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(c(g,h,f)):(this.setViewMode(this.viewMode-1),this.fill())),this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus(),delete this._focused_from},dayCellClick:function(b){var c=a(b.currentTarget),d=c.data("date"),e=new Date(d);this.o.updateViewDate&&(e.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),e.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate)),this._setDate(e)},navArrowsClick:function(b){var c=a(b.currentTarget),d=c.hasClass("prev")?-1:1;0!==this.viewMode&&(d*=12*r.viewModes[this.viewMode].navStep),this.viewDate=this.moveMonth(this.viewDate,d),this._trigger(r.viewModes[this.viewMode].e,this.viewDate),this.fill()},_toggle_multidate:function(a){var b=this.dates.contains(a);if(a||this.dates.clear(),-1!==b?(!0===this.o.multidate||this.o.multidate>1||this.o.toggleActive)&&this.dates.remove(b):!1===this.o.multidate?(this.dates.clear(),this.dates.push(a)):this.dates.push(a),"number"==typeof this.o.multidate)for(;this.dates.length>this.o.multidate;)this.dates.remove(0)},_setDate:function(a,b){b&&"date"!==b||this._toggle_multidate(a&&new Date(a)),(!b&&this.o.updateViewDate||"view"===b)&&(this.viewDate=a&&new Date(a)),this.fill(),this.setValue(),b&&"view"===b||this._trigger("changeDate"),this.inputField.trigger("change"),!this.o.autoclose||b&&"date"!==b||this.hide()},moveDay:function(a,b){var c=new Date(a);return c.setUTCDate(a.getUTCDate()+b),c},moveWeek:function(a,b){return this.moveDay(a,7*b)},moveMonth:function(a,b){if(!g(a))return this.o.defaultViewDate;if(!b)return a;var c,d,e=new Date(a.valueOf()),f=e.getUTCDate(),h=e.getUTCMonth(),i=Math.abs(b);if(b=b>0?1:-1,1===i)d=-1===b?function(){return e.getUTCMonth()===h}:function(){return e.getUTCMonth()!==c},c=h+b,e.setUTCMonth(c),c=(c+12)%12;else{for(var j=0;j0},dateWithinRange:function(a){return a>=this.o.startDate&&a<=this.o.endDate},keydown:function(a){if(!this.picker.is(":visible"))return void(40!==a.keyCode&&27!==a.keyCode||(this.show(),a.stopPropagation()));var b,c,d=!1,e=this.focusDate||this.viewDate;switch(a.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),a.preventDefault(),a.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||7===this.o.daysOfWeekDisabled.length)break;b=37===a.keyCode||38===a.keyCode?-1:1,0===this.viewMode?a.ctrlKey?(c=this.moveAvailableDate(e,b,"moveYear"))&&this._trigger("changeYear",this.viewDate):a.shiftKey?(c=this.moveAvailableDate(e,b,"moveMonth"))&&this._trigger("changeMonth",this.viewDate):37===a.keyCode||39===a.keyCode?c=this.moveAvailableDate(e,b,"moveDay"):this.weekOfDateIsDisabled(e)||(c=this.moveAvailableDate(e,b,"moveWeek")):1===this.viewMode?(38!==a.keyCode&&40!==a.keyCode||(b*=4),c=this.moveAvailableDate(e,b,"moveMonth")):2===this.viewMode&&(38!==a.keyCode&&40!==a.keyCode||(b*=4),c=this.moveAvailableDate(e,b,"moveYear")),c&&(this.focusDate=this.viewDate=c,this.setValue(),this.fill(),a.preventDefault());break;case 13:if(!this.o.forceParse)break;e=this.focusDate||this.dates.get(-1)||this.viewDate,this.o.keyboardNavigation&&(this._toggle_multidate(e),d=!0),this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(a.preventDefault(),a.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}d&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))},setViewMode:function(a){this.viewMode=a,this.picker.children("div").hide().filter(".datepicker-"+r.viewModes[this.viewMode].clsName).show(),this.updateNavArrows(),this._trigger("changeViewMode",new Date(this.viewDate))}};var l=function(b,c){a.data(b,"datepicker",this),this.element=a(b),this.inputs=a.map(c.inputs,function(a){return a.jquery?a[0]:a}),delete c.inputs,this.keepEmptyValues=c.keepEmptyValues,delete c.keepEmptyValues,n.call(a(this.inputs),c).on("changeDate",a.proxy(this.dateUpdated,this)),this.pickers=a.map(this.inputs,function(b){return a.data(b,"datepicker")}),this.updateDates()};l.prototype={updateDates:function(){this.dates=a.map(this.pickers,function(a){return a.getUTCDate()}),this.updateRanges()},updateRanges:function(){var b=a.map(this.dates,function(a){return a.valueOf()});a.each(this.pickers,function(a,c){c.setRange(b)})},clearDates:function(){a.each(this.pickers,function(a,b){b.clearDates()})},dateUpdated:function(c){if(!this.updating){this.updating=!0;var d=a.data(c.target,"datepicker");if(d!==b){var e=d.getUTCDate(),f=this.keepEmptyValues,g=a.inArray(c.target,this.inputs),h=g-1,i=g+1,j=this.inputs.length;if(-1!==g){if(a.each(this.pickers,function(a,b){b.getUTCDate()||b!==d&&f||b.setUTCDate(e)}),e=0&ðis.dates[i])for(;ithis.dates[i];)this.pickers[i++].setUTCDate(e);this.updateDates(),delete this.updating}}}},destroy:function(){a.map(this.pickers,function(a){a.destroy()}),a(this.inputs).off("changeDate",this.dateUpdated),delete this.element.data().datepicker},remove:f("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};var m=a.fn.datepicker,n=function(c){var d=Array.apply(null,arguments);d.shift();var e;if(this.each(function(){var b=a(this),f=b.data("datepicker"),g="object"==typeof c&&c;if(!f){var j=h(this,"date"),m=a.extend({},o,j,g),n=i(m.language),p=a.extend({},o,n,j,g);b.hasClass("input-daterange")||p.inputs?(a.extend(p,{inputs:p.inputs||b.find("input").toArray()}),f=new l(this,p)):f=new k(this,p),b.data("datepicker",f)}"string"==typeof c&&"function"==typeof f[c]&&(e=f[c].apply(f,d))}),e===b||e instanceof k||e instanceof l)return this;if(this.length>1)throw new Error("Using only allowed for the collection of a single element ("+c+" function)");return e};a.fn.datepicker=n;var o=a.fn.datepicker.defaults={assumeNearbyYear:!1,autoclose:!1,beforeShowDay:a.noop,beforeShowMonth:a.noop,beforeShowYear:a.noop,beforeShowDecade:a.noop,beforeShowCentury:a.noop,calendarWeeks:!1,clearBtn:!1,toggleActive:!1,daysOfWeekDisabled:[],daysOfWeekHighlighted:[],datesDisabled:[],endDate:1/0,forceParse:!0,format:"mm/dd/yyyy",keepEmptyValues:!1,keyboardNavigation:!0,language:"en",minViewMode:0,maxViewMode:4,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-1/0,startView:0,todayBtn:!1,todayHighlight:!1,updateViewDate:!0,weekStart:0,disableTouchKeyboard:!1,enableOnReadonly:!0,showOnFocus:!0,zIndexOffset:10,container:"body",immediateUpdates:!1,title:"",templates:{leftArrow:"«",rightArrow:"»"},showWeekDays:!0},p=a.fn.datepicker.locale_opts=["format","rtl","weekStart"];a.fn.datepicker.Constructor=k;var q=a.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear",titleFormat:"MM yyyy"}},r={viewModes:[{names:["days","month"],clsName:"days",e:"changeMonth"},{names:["months","year"],clsName:"months",e:"changeYear",navStep:1},{names:["years","decade"],clsName:"years",e:"changeDecade",navStep:10},{names:["decades","century"],clsName:"decades",e:"changeCentury",navStep:100},{names:["centuries","millennium"],clsName:"centuries",e:"changeMillennium",navStep:1e3}],validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,parseFormat:function(a){if("function"==typeof a.toValue&&"function"==typeof a.toDisplay)return a;var b=a.replace(this.validParts,"\0").split("\0"),c=a.match(this.validParts);if(!b||!b.length||!c||0===c.length)throw new Error("Invalid date format.");return{separators:b,parts:c}},parseDate:function(c,e,f,g){function h(a,b){return!0===b&&(b=10),a<100&&(a+=2e3)>(new Date).getFullYear()+b&&(a-=100),a}function i(){var a=this.slice(0,j[n].length),b=j[n].slice(0,a.length);return a.toLowerCase()===b.toLowerCase()}if(!c)return b;if(c instanceof Date)return c;if("string"==typeof e&&(e=r.parseFormat(e)),e.toValue)return e.toValue(c,e,f);var j,l,m,n,o,p={d:"moveDay",m:"moveMonth",w:"moveWeek",y:"moveYear"},s={yesterday:"-1d",today:"+0d",tomorrow:"+1d"};if(c in s&&(c=s[c]),/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(c)){for(j=c.match(/([\-+]\d+)([dmwy])/gi),c=new Date,n=0;n'+o.templates.leftArrow+' '+o.templates.rightArrow+" ",contTemplate:' ',footTemplate:' '};r.template=''+r.headTemplate+" "+r.footTemplate+'
'+r.headTemplate+r.contTemplate+r.footTemplate+'
'+r.headTemplate+r.contTemplate+r.footTemplate+'
'+r.headTemplate+r.contTemplate+r.footTemplate+'
'+r.headTemplate+r.contTemplate+r.footTemplate+"
",a.fn.datepicker.DPGlobal=r,a.fn.datepicker.noConflict=function(){return a.fn.datepicker=m,this},a.fn.datepicker.version="1.9.0",a.fn.datepicker.deprecated=function(a){var b=window.console;b&&b.warn&&b.warn("DEPRECATED: "+a)},a(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(b){var c=a(this);c.data("datepicker")||(b.preventDefault(),n.call(c,"show"))}),a(function(){n.call(a('[data-provide="datepicker-inline"]'))})});
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker-en-CA.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker-en-CA.min.js
deleted file mode 100755
index 0aab38f3a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker-en-CA.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-CA"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:0,format:"yyyy-mm-dd"},a.fn.datepicker.deprecated("This filename doesn't follow the convention, use bootstrap-datepicker.en-CA.js instead.")}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar-tn.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar-tn.min.js
deleted file mode 100755
index 9d70dc2fa..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar-tn.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["ar-tn"]={days:["الأØد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت","الأØد"],daysShort:["Ø£Øد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت","Ø£Øد"],daysMin:["Ø","Ù†","Ø«","ع","Ø®","ج","س","Ø"],months:["جانÙÙŠ","ÙÙŠÙري","مارس","Ø£Ùريل","ماي","جوان","جويليه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],monthsShort:["جانÙÙŠ","ÙÙŠÙري","مارس","Ø£Ùريل","ماي","جوان","جويليه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],today:"هذا اليوم",rtl:!0}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar.min.js
deleted file mode 100755
index ece41af72..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ar.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ar={days:["الأØد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت","الأØد"],daysShort:["Ø£Øد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت","Ø£Øد"],daysMin:["Ø","Ù†","Ø«","ع","Ø®","ج","س","Ø"],months:["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],monthsShort:["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],today:"هذا اليوم",rtl:!0}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.az.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.az.min.js
deleted file mode 100755
index aa1edbf4f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.az.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.az={days:["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],daysShort:["B.","B.e","Ç.a","Ç.","C.a","C.","Ş."],daysMin:["B.","B.e","Ç.a","Ç.","C.a","C.","Ş."],months:["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avqust","Sentyabr","Oktyabr","Noyabr","Dekabr"],monthsShort:["Yan","Fev","Mar","Apr","May","İyun","İyul","Avq","Sen","Okt","Noy","Dek"],today:"Bu gün",weekStart:1,clear:"Təmizlə",monthsTitle:"Aylar"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bg.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bg.min.js
deleted file mode 100755
index 28e8b22dc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bg.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.bg={days:["ÐеделÑ","Понеделник","Вторник","СрÑда","Четвъртък","Петък","Събота"],daysShort:["Ðед","Пон","Вто","СрÑ","Чет","Пет","Съб"],daysMin:["Ð","П","Ð’","С","Ч","П","С"],months:["Януари","Февруари","Март","Ðприл","Май","Юни","Юли","ÐвгуÑÑ‚","Септември","Октомври","Ðоември","Декември"],monthsShort:["Ян","Фев","Мар","Ðпр","Май","Юни","Юли","Ðвг","Сеп","Окт","Ðое","Дек"],today:"днеÑ"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bm.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bm.min.js
deleted file mode 100755
index e0796a3ba..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bm.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.bm={days:["Kari","Ntɛnɛn","Tarata","Araba","Alamisa","Juma","Sibiri"],daysShort:["Kar","Ntɛ","Tar","Ara","Ala","Jum","Sib"],daysMin:["Ka","Nt","Ta","Ar","Al","Ju","Si"],months:["Zanwuyekalo","Fewuruyekalo","Marisikalo","Awirilikalo","Mɛkalo","Zuwɛnkalo","Zuluyekalo","Utikalo","Sɛtanburukalo","ɔkutɔburukalo","Nowanburukalo","Desanburukalo"],monthsShort:["Zan","Few","Mar","Awi","Mɛ","Zuw","Zul","Uti","Sɛt","ɔku","Now","Des"],today:"Bi",monthsTitle:"Kalo",clear:"Ka jɔsi",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bn.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bn.min.js
deleted file mode 100755
index f67b5e26e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bn.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.bn={days:["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"],daysShort:["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"],daysMin:["রবি","সোম","মঙà§à¦—ল","বà§à¦§","বৃহসà§à¦ªà¦¤à¦¿","শà§à¦•à§à¦°","শনি"],months:["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à¦¿","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","অগাসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নà¦à§‡à¦®à§à¦¬à¦°","ডিসেমà§à¦¬à¦°"],monthsShort:["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à¦¿","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","অগাসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নà¦à§‡à¦®à§à¦¬à¦°","ডিসেমà§à¦¬à¦°"],today:"আজ",monthsTitle:"মাস",clear:"পরিষà§à¦•à¦¾à¦°",weekStart:0,format:"mm/dd/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.br.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.br.min.js
deleted file mode 100755
index af3e3bd0a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.br.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.br={days:["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"],daysShort:["Sul","Lun","Meu.","Mer.","Yao.","Gwe.","Sad."],daysMin:["Su","L","Meu","Mer","Y","G","Sa"],months:["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu"],monthsShort:["Genv.","C'hw.","Meur.","Ebre.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kerz."],today:"Hiziv",monthsTitle:"Miz",clear:"Dilemel",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bs.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bs.min.js
deleted file mode 100755
index cfb06fde7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.bs.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.bs={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],daysMin:["N","Po","U","Sr","Č","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ca.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ca.min.js
deleted file mode 100755
index ac107894c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ca.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ca={days:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],daysShort:["Diu","Dil","Dmt","Dmc","Dij","Div","Dis"],daysMin:["dg","dl","dt","dc","dj","dv","ds"],months:["Gener","Febrer","Març","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],monthsShort:["Gen","Feb","Mar","Abr","Mai","Jun","Jul","Ago","Set","Oct","Nov","Des"],today:"Avui",monthsTitle:"Mesos",clear:"Esborrar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cs.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cs.min.js
deleted file mode 100755
index 42dfd1a29..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cs.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.cs={days:["NedÄ›le","PondÄ›lÃ","Úterý","StÅ™eda","ÄŒtvrtek","Pátek","Sobota"],daysShort:["Ned","Pon","Úte","StÅ™","ÄŒtv","Pát","Sob"],daysMin:["Ne","Po","Út","St","ÄŒt","Pá","So"],months:["Leden","Únor","BÅ™ezen","Duben","KvÄ›ten","ÄŒerven","ÄŒervenec","Srpen","ZářÃ","ŘÃjen","Listopad","Prosinec"],monthsShort:["Led","Úno","BÅ™e","Dub","KvÄ›","ÄŒer","ÄŒnc","Srp","Zář","ŘÃj","Lis","Pro"],today:"Dnes",clear:"Vymazat",monthsTitle:"MÄ›sÃc",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cy.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cy.min.js
deleted file mode 100755
index f85ea031d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.cy.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.cy={days:["Sul","Llun","Mawrth","Mercher","Iau","Gwener","Sadwrn"],daysShort:["Sul","Llu","Maw","Mer","Iau","Gwe","Sad"],daysMin:["Su","Ll","Ma","Me","Ia","Gwe","Sa"],months:["Ionawr","Chewfror","Mawrth","Ebrill","Mai","Mehefin","Gorfennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"],monthsShort:["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rha"],today:"Heddiw"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.da.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.da.min.js
deleted file mode 100755
index 53c818052..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.da.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.da={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",weekStart:1,clear:"Nulstil",format:"dd/mm/yyyy",monthsTitle:"Måneder"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.de.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.de.min.js
deleted file mode 100755
index 1b5d6a247..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.de.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",monthsTitle:"Monate",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.el.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.el.min.js
deleted file mode 100755
index 046e9eb5e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.el.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.el={days:["ΚυÏιακή","ΔευτÎÏα","ΤÏίτη","ΤετάÏτη","Î Îμπτη","ΠαÏασκευή","Σάββατο"],daysShort:["ΚυÏ","Δευ","ΤÏι","Τετ","Πεμ","ΠαÏ","Σαβ"],daysMin:["Κυ","Δε","ΤÏ","Τε","Πε","Πα","Σα"],months:["ΙανουάÏιος","ΦεβÏουάÏιος","ΜάÏτιος","ΑπÏίλιος","Μάιος","ΙοÏνιος","ΙοÏλιος","ΑÏγουστος","ΣεπτÎμβÏιος","ΟκτώβÏιος","ÎοÎμβÏιος","ΔεκÎμβÏιος"],monthsShort:["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μάι","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ"],today:"ΣήμεÏα",clear:"ΚαθαÏισμός",weekStart:1,format:"d/m/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-AU.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-AU.min.js
deleted file mode 100755
index b8d5f41cf..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-AU.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-AU"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"d/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-CA.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-CA.min.js
deleted file mode 100755
index 7b1070f74..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-CA.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-CA"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:0,format:"yyyy-mm-dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-GB.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-GB.min.js
deleted file mode 100755
index 2966f5414..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-GB.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-GB"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-IE.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-IE.min.js
deleted file mode 100755
index dc8f71c02..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-IE.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-IE"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-NZ.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-NZ.min.js
deleted file mode 100755
index c374a8d40..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-NZ.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-NZ"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"d/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-ZA.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-ZA.min.js
deleted file mode 100755
index 885a928cb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.en-ZA.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["en-ZA"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"yyyy/mm/d"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eo.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eo.min.js
deleted file mode 100755
index 736db021a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eo.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.eo={days:["dimanĉo","lundo","mardo","merkredo","ĵaÅdo","vendredo","sabato"],daysShort:["dim.","lun.","mar.","mer.","ĵaÅ.","ven.","sam."],daysMin:["d","l","ma","me","ĵ","v","s"],months:["januaro","februaro","marto","aprilo","majo","junio","julio","aÅgusto","septembro","oktobro","novembro","decembro"],monthsShort:["jan.","feb.","mar.","apr.","majo","jun.","jul.","aÅg.","sep.","okt.","nov.","dec."],today:"HodiaÅ",clear:"Nuligi",weekStart:1,format:"yyyy-mm-dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.es.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.es.min.js
deleted file mode 100755
index f3cef5d2b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.es.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy",monthsTitle:"Meses",clear:"Borrar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.et.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.et.min.js
deleted file mode 100755
index 34cd9c60e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.et.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.et={days:["Pühapäev","Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev"],daysShort:["Pühap","Esmasp","Teisip","Kolmap","Neljap","Reede","Laup"],daysMin:["P","E","T","K","N","R","L"],months:["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],monthsShort:["Jaan","Veebr","Märts","Apr","Mai","Juuni","Juuli","Aug","Sept","Okt","Nov","Dets"],today:"Täna",clear:"Tühjenda",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eu.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eu.min.js
deleted file mode 100755
index c5aa359e4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.eu.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.eu={days:["Igandea","Astelehena","Asteartea","Asteazkena","Osteguna","Ostirala","Larunbata"],daysShort:["Ig","Al","Ar","Az","Og","Ol","Lr"],daysMin:["Ig","Al","Ar","Az","Og","Ol","Lr"],months:["Urtarrila","Otsaila","Martxoa","Apirila","Maiatza","Ekaina","Uztaila","Abuztua","Iraila","Urria","Azaroa","Abendua"],monthsShort:["Urt","Ots","Mar","Api","Mai","Eka","Uzt","Abu","Ira","Urr","Aza","Abe"],today:"Gaur",monthsTitle:"Hilabeteak",clear:"Ezabatu",weekStart:1,format:"yyyy/mm/dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fa.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fa.min.js
deleted file mode 100755
index 8575237a0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fa.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.fa={days:["یک‌شنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنج‌شنبه","جمعه","شنبه","یک‌شنبه"],daysShort:["یک","دو","سه","چهار","پنج","جمعه","شنبه","یک"],daysMin:["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´","ÛŒ"],months:["ژانویه","Ùوریه","مارس","آوریل","مه","ژوئن","ژوئیه","اوت","سپتامبر","اکتبر","نوامبر","دسامبر"],monthsShort:["ژان","Ùور","مار","آور","مه","ژون","Ú˜ÙˆÛŒ","اوت","سپت","اکت","نوا","دسا"],today:"امروز",clear:"پاک Ú©Ù†",weekStart:1,format:"yyyy/mm/dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fi.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fi.min.js
deleted file mode 100755
index 239dfb796..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fi.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.fi={days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],daysShort:["sun","maa","tii","kes","tor","per","lau"],daysMin:["su","ma","ti","ke","to","pe","la"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],monthsShort:["tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mar","jou"],today:"tänään",clear:"Tyhjennä",weekStart:1,format:"d.m.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fo.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fo.min.js
deleted file mode 100755
index fa24e3a12..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fo.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.fo={days:["Sunnudagur","Mánadagur","Týsdagur","Mikudagur","Hósdagur","FrÃggjadagur","Leygardagur"],daysShort:["Sun","Mán","Týs","Mik","Hós","FrÃ","Ley"],daysMin:["Su","Má","Tý","Mi","Hó","Fr","Le"],months:["Januar","Februar","Marts","AprÃl","Mei","Juni","Juli","August","Septembur","Oktobur","Novembur","Desembur"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],today:"à Dag",clear:"Reinsa"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr-CH.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr-CH.min.js
deleted file mode 100755
index 1c6bcdcbf..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr-CH.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.fr={days:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],daysShort:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],daysMin:["D","L","Ma","Me","J","V","S"],months:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],monthsShort:["Jan","Fév","Mar","Avr","Mai","Jui","Jul","Aou","Sep","Oct","Nov","Déc"],today:"Aujourd'hui",monthsTitle:"Mois",clear:"Effacer",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr.min.js
deleted file mode 100755
index 244cfba80..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.fr.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.fr={days:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],daysShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],daysMin:["d","l","ma","me","j","v","s"],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthsShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],today:"Aujourd'hui",monthsTitle:"Mois",clear:"Effacer",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.gl.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.gl.min.js
deleted file mode 100755
index 3d92606b3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.gl.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.gl={days:["Domingo","Luns","Martes","Mércores","Xoves","Venres","Sábado"],daysShort:["Dom","Lun","Mar","Mér","Xov","Ven","Sáb"],daysMin:["Do","Lu","Ma","Me","Xo","Ve","Sa"],months:["Xaneiro","Febreiro","Marzo","Abril","Maio","Xuño","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"],monthsShort:["Xan","Feb","Mar","Abr","Mai","Xun","Xul","Ago","Sep","Out","Nov","Dec"],today:"Hoxe",clear:"Limpar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.he.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.he.min.js
deleted file mode 100755
index 191cb453a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.he.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.he={days:["ר×שון","×©× ×™","שלישי","רביעי","חמישי","שישי","שבת","ר×שון"],daysShort:["×","ב","×’","ד","×”","ו","ש","×"],daysMin:["×","ב","×’","ד","×”","ו","ש","×"],months:["×™× ×•×ר","פברו×ר","מרץ","×פריל","מ××™","×™×•× ×™","יולי","×וגוסט","ספטמבר","×וקטובר","× ×•×‘×ž×‘×¨","דצמבר"],monthsShort:["×™× ×•","פבר","מרץ","×פר","מ××™","×™×•× ","יול","×וג","ספט","×וק","× ×•×‘","דצמ"],today:"היו×",rtl:!0}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hi.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hi.min.js
deleted file mode 100755
index 635baffa8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hi.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.hi={days:["रविवार","सोमवार","मंगलवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"],daysShort:["सूरà¥à¤¯","सोम","मंगल","बà¥à¤§","गà¥à¤°à¥","शà¥à¤•à¥à¤°","शनि"],daysMin:["र","सो","मं","बà¥","गà¥","शà¥","श"],months:["जनवरी","फ़रवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤Ÿà¥‚बर","नवंबर","दिसमà¥à¤¬à¤°"],monthsShort:["जन","फ़रवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितं","अकà¥à¤Ÿà¥‚बर","नवं","दिसमà¥à¤¬à¤°"],today:"आज",monthsTitle:"महीने",clear:"साफ",weekStart:1,format:"dd / mm / yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hr.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hr.min.js
deleted file mode 100755
index 8b34bce0f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hr.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.hr={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","ÄŒetvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","ÄŒet","Pet","Sub"],daysMin:["Ne","Po","Ut","Sr","ÄŒe","Pe","Su"],months:["SijeÄanj","VeljaÄa","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],monthsShort:["Sij","Velj","Ožu","Tra","Svi","Lip","Srp","Kol","Ruj","Lis","Stu","Pro"],today:"Danas"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hu.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hu.min.js
deleted file mode 100755
index f9decf9a2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hu.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.hu={days:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],daysShort:["vas","hét","ked","sze","csü","pén","szo"],daysMin:["V","H","K","Sze","Cs","P","Szo"],months:["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december"],monthsShort:["jan","feb","már","ápr","máj","jún","júl","aug","sze","okt","nov","dec"],today:"ma",weekStart:1,clear:"töröl",titleFormat:"yyyy. MM",format:"yyyy.mm.dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hy.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hy.min.js
deleted file mode 100755
index a1cf653d3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.hy.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.hy={days:["Ô¿Õ«Ö€Õ¡Õ¯Õ«","ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«","ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«","ÕˆÖ‚Ö€Õ¢Õ¡Õ©","Õ‡Õ¡Õ¢Õ¡Õ©"],daysShort:["Ô¿Õ«Ö€","ÔµÖ€Õ¯","ÔµÖ€Õ¥","Õ‰Õ¸Ö€","Õ€Õ«Õ¶","ÕˆÖ‚Ö€Õ¢","Õ‡Õ¡Õ¢"],daysMin:["Ô¿Õ«","ÔµÕ¯","ÔµÖ„","Õ‰Õ¸","Õ€Õ«","ÕˆÖ‚","Õ‡Õ¡"],months:["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€","Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€","Õ„Õ¡Ö€Õ¿","Ô±ÕºÖ€Õ«Õ¬","Õ„Õ¡ÕµÕ«Õ½","Õ€Õ¸Ö‚Õ¶Õ«Õ½","Õ€Õ¸Ö‚Õ¬Õ«Õ½","Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½","ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€","Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€"],monthsShort:["Õ€Õ¶Õ¾","Õ“Õ¥Õ¿","Õ„Õ¡Ö€","Ô±ÕºÖ€","Õ„Õ¡Õµ","Õ€Õ¸Ö‚Õ¶","Õ€Õ¸Ö‚Õ¬","Õ•Õ£Õ½","ÕÕ¥Õº","Õ€Õ¸Õ¯","Õ†Õ¸Õµ","Ô´Õ¥Õ¯"],today:"Ô±ÕµÕ½Ö…Ö€",clear:"Õ‹Õ¶Õ»Õ¥Õ¬",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"Ô±Õ´Õ«Õ½Õ¶Õ§Ö€"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.id.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.id.min.js
deleted file mode 100755
index 7c3220a64..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.id.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.id={days:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],daysShort:["Mgu","Sen","Sel","Rab","Kam","Jum","Sab"],daysMin:["Mg","Sn","Sl","Ra","Ka","Ju","Sa"],months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ags","Sep","Okt","Nov","Des"],today:"Hari Ini",clear:"Kosongkan"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.is.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.is.min.js
deleted file mode 100755
index f49bd18cc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.is.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.is={days:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur"],daysShort:["Sun","Mán","Þri","Mið","Fim","Fös","Lau"],daysMin:["Su","Má","Þr","Mi","Fi","Fö","La"],months:["Janúar","Febrúar","Mars","AprÃl","MaÃ","JúnÃ","JúlÃ","Ãgúst","September","Október","Nóvember","Desember"],monthsShort:["Jan","Feb","Mar","Apr","MaÃ","Jún","Júl","Ãgú","Sep","Okt","Nóv","Des"],today:"à Dag"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it-CH.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it-CH.min.js
deleted file mode 100755
index 7e1adbb95..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it-CH.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.it={days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],daysShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],daysMin:["Do","Lu","Ma","Me","Gi","Ve","Sa"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthsShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],today:"Oggi",clear:"Cancella",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it.min.js
deleted file mode 100755
index cc30766ff..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.it.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.it={days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],daysShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],daysMin:["Do","Lu","Ma","Me","Gi","Ve","Sa"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthsShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],today:"Oggi",monthsTitle:"Mesi",clear:"Cancella",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ja.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ja.min.js
deleted file mode 100755
index e321f04ff..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ja.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ja={days:["日曜","月曜","ç«æ›œ","水曜","木曜","金曜","土曜"],daysShort:["æ—¥","月","ç«","æ°´","木","金","土"],daysMin:["æ—¥","月","ç«","æ°´","木","金","土"],months:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今日",format:"yyyy/mm/dd",titleFormat:"yyyyå¹´mm月",clear:"クリア"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ka.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ka.min.js
deleted file mode 100755
index 84f14c0e9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ka.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ka={days:["კვირáƒ","áƒáƒ შáƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"],daysShort:["კვი","áƒáƒ შ","სáƒáƒ›","áƒáƒ—ხ","ხუთ","პáƒáƒ ","შáƒáƒ‘"],daysMin:["კვ","áƒáƒ ","სáƒ","áƒáƒ—","ხუ","პáƒ","შáƒ"],months:["იáƒáƒœáƒ•áƒáƒ ი","თებერვáƒáƒšáƒ˜","მáƒáƒ ტი","áƒáƒžáƒ ილი","მáƒáƒ˜áƒ¡áƒ˜","ივნისი","ივლისი","áƒáƒ’ვისტáƒ","სექტემბერი","áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი","ნáƒáƒ”მბერი","დეკემბერი"],monthsShort:["იáƒáƒœ","თებ","მáƒáƒ ","áƒáƒžáƒ ","მáƒáƒ˜","ივნ","ივლ","áƒáƒ’ვ","სექ","áƒáƒ¥áƒ¢","ნáƒáƒ”","დეკ"],today:"დღეს",clear:"გáƒáƒ¡áƒ£áƒ¤áƒ—áƒáƒ•áƒ”ბáƒ",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kh.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kh.min.js
deleted file mode 100755
index bf2abc5d8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kh.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.kh={days:["អាទិážáŸ’áž™","ចន្ទ","អង្គារ","ពុធ","ព្រហស្បážáž·áŸ","សុក្រ","សៅរáŸ"],daysShort:["អា.áž‘áž·","ចន្ទ","អង្គារ","ពុធ","ព្រ.áž ","សុក្រ","សៅរáŸ"],daysMin:["អា.áž‘áž·","ចន្ទ","អង្គារ","ពុធ","ព្រ.áž ","សុក្រ","សៅរáŸ"],months:["មករា","កុម្ភះ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ"],monthsShort:["មករា","កុម្ភះ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ"],today:"ážáŸ’ងៃនáŸáŸ‡",clear:"សំអាáž"},a.fn.datepicker.deprecated('The language code "kh" is deprecated and will be removed in 2.0. For Khmer support use "km" instead.')}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kk.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kk.min.js
deleted file mode 100755
index f4e2f3f1a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kk.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.kk={days:["ЖекÑенбі","ДүйÑенбі","СейÑенбі","СәрÑенбі","БейÑенбі","Жұма","Сенбі"],daysShort:["Жек","Дүй","Сей","Сәр","Бей","Жұм","Сен"],daysMin:["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"],months:["Қаңтар","Ðқпан","Ðаурыз","Сәуір","Мамыр","МауÑым","Шілде","Тамыз","Қыркүйек","Қазан","Қараша","ЖелтоқÑан"],monthsShort:["Қаң","Ðқп","Ðау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел"],today:"Бүгін",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.km.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.km.min.js
deleted file mode 100755
index 648d83f84..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.km.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.km={days:["អាទិážáŸ’áž™","ចន្ទ","អង្គារ","ពុធ","ព្រហស្បážáž·áŸ","សុក្រ","សៅរáŸ"],daysShort:["អា.áž‘áž·","ចន្ទ","អង្គារ","ពុធ","ព្រ.áž ","សុក្រ","សៅរáŸ"],daysMin:["អា.áž‘áž·","ចន្ទ","អង្គារ","ពុធ","ព្រ.áž ","សុក្រ","សៅរáŸ"],months:["មករា","កុម្ភះ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ"],monthsShort:["មករា","កុម្ភះ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ"],today:"ážáŸ’ងៃនáŸáŸ‡",clear:"សំអាáž"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ko.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ko.min.js
deleted file mode 100755
index 9751ee5c2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ko.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ko={days:["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","í† ìš”ì¼"],daysShort:["ì¼","ì›”","í™”","수","목","금","í† "],daysMin:["ì¼","ì›”","í™”","수","목","금","í† "],months:["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”"],monthsShort:["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”"],today:"오늘",clear:"ì‚ì œ",format:"yyyy-mm-dd",titleFormat:"yyyyë…„mmì›”",weekStart:0}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kr.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kr.min.js
deleted file mode 100755
index 43393409e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.kr.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.kr={days:["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","í† ìš”ì¼"],daysShort:["ì¼","ì›”","í™”","수","목","금","í† "],daysMin:["ì¼","ì›”","í™”","수","목","금","í† "],months:["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”"],monthsShort:["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”"]},a.fn.datepicker.deprecated('The language code "kr" is deprecated and will be removed in 2.0. For korean support use "ko" instead.')}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lt.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lt.min.js
deleted file mode 100755
index da78ea85f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lt.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.lt={days:["Sekmadienis","Pirmadienis","Antradienis","TreÄiadienis","Ketvirtadienis","Penktadienis","Å eÅ¡tadienis"],daysShort:["S","Pr","A","T","K","Pn","Å "],daysMin:["Sk","Pr","An","Tr","Ke","Pn","Å t"],months:["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","RugpjÅ«tis","RugsÄ—jis","Spalis","Lapkritis","Gruodis"],monthsShort:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],today:"Å iandien",monthsTitle:"MÄ—nesiai",clear:"IÅ¡valyti",weekStart:1,format:"yyyy-mm-dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lv.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lv.min.js
deleted file mode 100755
index 89cea00f8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.lv.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.lv={days:["SvÄ“tdiena","Pirmdiena","Otrdiena","TreÅ¡diena","Ceturtdiena","Piektdiena","Sestdiena"],daysShort:["Sv","P","O","T","C","Pk","S"],daysMin:["Sv","Pr","Ot","Tr","Ce","Pk","Se"],months:["JanvÄris","FebruÄris","Marts","AprÄ«lis","Maijs","JÅ«nijs","JÅ«lijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],monthsShort:["Jan","Feb","Mar","Apr","Mai","JÅ«n","JÅ«l","Aug","Sep","Okt","Nov","Dec"],monthsTitle:"MÄ“neÅ¡i",today:"Å odien",clear:"NodzÄ“st",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.me.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.me.min.js
deleted file mode 100755
index c65a89164..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.me.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.me={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],daysMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,clear:"Izbriši",format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mk.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mk.min.js
deleted file mode 100755
index 46423f758..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mk.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.mk={days:["Ðедела","Понеделник","Вторник","Среда","Четврток","Петок","Сабота"],daysShort:["Ðед","Пон","Вто","Сре","Чет","Пет","Саб"],daysMin:["Ðе","По","Ð’Ñ‚","Ср","Че","Пе","Са"],months:["Јануари","Февруари","Март","Ðприл","Мај","Јуни","Јули","ÐвгуÑÑ‚","Септември","Октомври","Ðоември","Декември"],monthsShort:["Јан","Фев","Мар","Ðпр","Мај","Јун","Јул","Ðвг","Сеп","Окт","Ðое","Дек"],today:"ДенеÑ",format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mn.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mn.min.js
deleted file mode 100755
index 6ebaec9d8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.mn.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.mn={days:["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"],daysShort:["ÐÑм","Дав","ÐœÑг","Лха","Пүр","Баа","БÑм"],daysMin:["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"],months:["Хулгана","ҮхÑÑ€","Бар","Туулай","Луу","Могой","Морь","Хонь","Бич","Тахиа","Ðохой","Гахай"],monthsShort:["Хул","ҮхÑ","Бар","Туу","Луу","Мог","Мор","Хон","Бич","Тах","Ðох","Гах"],today:"Өнөөдөр",clear:"Тодорхой",format:"yyyy.mm.dd",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ms.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ms.min.js
deleted file mode 100755
index 47efafdc2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ms.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ms={days:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],daysShort:["Aha","Isn","Sel","Rab","Kha","Jum","Sab"],daysMin:["Ah","Is","Se","Ra","Kh","Ju","Sa"],months:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],today:"Hari Ini",clear:"Bersihkan"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl-BE.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl-BE.min.js
deleted file mode 100755
index 85d3146df..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl-BE.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["nl-BE"]={days:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],daysShort:["zo","ma","di","wo","do","vr","za"],daysMin:["zo","ma","di","wo","do","vr","za"],months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthsShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],today:"Vandaag",monthsTitle:"Maanden",clear:"Leegmaken",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl.min.js
deleted file mode 100755
index af977b71e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.nl.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.nl={days:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],daysShort:["zo","ma","di","wo","do","vr","za"],daysMin:["zo","ma","di","wo","do","vr","za"],months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthsShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],today:"Vandaag",monthsTitle:"Maanden",clear:"Wissen",weekStart:1,format:"dd-mm-yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.no.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.no.min.js
deleted file mode 100755
index 0c5136e44..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.no.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.no={days:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],daysShort:["søn","man","tir","ons","tor","fre","lør"],daysMin:["sø","ma","ti","on","to","fr","lø"],months:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthsShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],today:"i dag",monthsTitle:"Måneder",clear:"Nullstill",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.oc.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.oc.min.js
deleted file mode 100755
index 630fa16b9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.oc.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.oc={days:["Dimenge","Diluns","Dimars","Dimècres","Dijòus","Divendres","Dissabte"],daysShort:["Dim","Dil","Dmr","Dmc","Dij","Div","Dis"],daysMin:["dg","dl","dr","dc","dj","dv","ds"],months:["Genièr","Febrièr","Març","Abrial","Mai","Junh","Julhet","Agost","Setembre","Octobre","Novembre","Decembre"],monthsShort:["Gen","Feb","Mar","Abr","Mai","Jun","Jul","Ago","Set","Oct","Nov","Dec"],today:"Uèi",monthsTitle:"Meses",clear:"Escafar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pl.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pl.min.js
deleted file mode 100755
index ffb30ec8b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pl.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.pl={days:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"],daysShort:["Niedz.","Pon.","Wt.","Śr.","Czw.","Piąt.","Sob."],daysMin:["Ndz.","Pn.","Wt.","Śr.","Czw.","Pt.","Sob."],months:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],monthsShort:["Sty.","Lut.","Mar.","Kwi.","Maj","Cze.","Lip.","Sie.","Wrz.","Paź.","Lis.","Gru."],today:"Dzisiaj",weekStart:1,clear:"Wyczyść",format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt-BR.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt-BR.min.js
deleted file mode 100755
index 2d3f8afda..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt-BR.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["pt-BR"]={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",monthsTitle:"Meses",clear:"Limpar",format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt.min.js
deleted file mode 100755
index e2b4e64d7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.pt.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.pt={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",monthsTitle:"Meses",clear:"Limpar",format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ro.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ro.min.js
deleted file mode 100755
index 5fff2986d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ro.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ro={days:["Duminică","Luni","Marţi","Miercuri","Joi","Vineri","Sâmbătă"],daysShort:["Dum","Lun","Mar","Mie","Joi","Vin","Sâm"],daysMin:["Du","Lu","Ma","Mi","Jo","Vi","Sâ"],months:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],monthsShort:["Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Nov","Dec"],today:"Astăzi",clear:"Șterge",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs-latin.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs-latin.min.js
deleted file mode 100755
index e520c9573..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs-latin.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["rs-latin"]={days:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sre","Čet","Pet","Sub"],daysMin:["N","Po","U","Sr","Č","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,format:"dd.mm.yyyy"},a.fn.datepicker.deprecated('This language code "rs-latin" is deprecated (invalid serbian language code) and will be removed in 2.0. For Serbian latin support use "sr-latin" instead.')}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs.min.js
deleted file mode 100755
index ba95ae298..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.rs.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.rs={days:["Ðедеља","Понедељак","Уторак","Среда","Четвртак","Петак","Субота"],daysShort:["Ðед","Пон","Уто","Сре","Чет","Пет","Суб"],daysMin:["Ð","По","У","Ср","Ч","Пе","Су"],months:["Јануар","Фебруар","Март","Ðприл","Мај","Јун","Јул","ÐвгуÑÑ‚","Септембар","Октобар","Ðовембар","Децембар"],monthsShort:["Јан","Феб","Мар","Ðпр","Мај","Јун","Јул","Ðвг","Сеп","Окт","Ðов","Дец"],today:"ДанаÑ",weekStart:1,format:"dd.mm.yyyy"},a.fn.datepicker.deprecated('This language code "rs" is deprecated (invalid serbian language code) and will be removed in 2.0. For Serbian support use "sr" instead.')}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ru.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ru.min.js
deleted file mode 100755
index 52bc010b9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ru.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ru={days:["ВоÑкреÑенье","Понедельник","Вторник","Среда","Четверг","ПÑтница","Суббота"],daysShort:["Ð’Ñк","Пнд","Ð’Ñ‚Ñ€","Срд","Чтв","Птн","Суб"],daysMin:["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек"],today:"СегоднÑ",clear:"ОчиÑтить",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"МеÑÑцы"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.si.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.si.min.js
deleted file mode 100755
index b9746b8fc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.si.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.si={days:["ඉරිදà·","සඳුදà·","අඟහරුවà·à¶¯à·","බදà·à¶¯à·","බ්â€à¶»à·„ස්පà¶à·’න්දà·","සිකුරà·à¶¯à·","සෙනසුරà·à¶¯à·"],daysShort:["ඉරි","සඳු","අඟ","බදà·","බ්â€à¶»à·„","සිකු","සෙන"],daysMin:["ඉ","à·ƒ","අ","බ","බ්â€à¶»","සි","සෙ"],months:["ජනවà·à¶»à·’","පෙබරවà·à¶»à·’","මà·à¶»à·Šà¶à·”","අප්â€à¶»à·šà¶½à·Š","මà·à¶ºà·’","ජුනි","ජූලි","අගà·à·ƒà·Šà¶à·”","à·ƒà·à¶´à·Šà¶à·à¶¸à·Šà¶¶à¶»à·Š","ඔක්à¶à·à¶¶à¶»à·Š","නොවà·à¶¸à·Šà¶¶à¶»à·Š","දෙසà·à¶¸à·Šà¶¶à¶»à·Š"],monthsShort:["ජන","පෙබ","මà·à¶»à·Š","අප්â€à¶»à·š","මà·à¶ºà·’","ජුනි","ජූලි","අගà·","à·ƒà·à¶´à·Š","ඔක්","නොවà·","දෙසà·"],today:"අද",monthsTitle:"මà·à·ƒ",clear:"මකන්න",weekStart:0,format:"yyyy-mm-dd"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sk.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sk.min.js
deleted file mode 100755
index 79a9267fd..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sk.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sk={days:["Nedeľa","Pondelok","Utorok","Streda","Å tvrtok","Piatok","Sobota"],daysShort:["Ned","Pon","Uto","Str","Å tv","Pia","Sob"],daysMin:["Ne","Po","Ut","St","Å t","Pia","So"],months:["Január","Február","Marec","AprÃl","Máj","Jún","Júl","August","September","Október","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Máj","Jún","Júl","Aug","Sep","Okt","Nov","Dec"],today:"Dnes",clear:"VymazaÅ¥",weekStart:1,format:"d.m.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sl.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sl.min.js
deleted file mode 100755
index 831cf7390..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sl.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sl={days:["Nedelja","Ponedeljek","Torek","Sreda","ÄŒetrtek","Petek","Sobota"],daysShort:["Ned","Pon","Tor","Sre","ÄŒet","Pet","Sob"],daysMin:["Ne","Po","To","Sr","ÄŒe","Pe","So"],months:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danes",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sq.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sq.min.js
deleted file mode 100755
index 8c586055a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sq.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sq={days:["E Diel","E Hënë","E Martē","E Mërkurë","E Enjte","E Premte","E Shtunë"],daysShort:["Die","Hën","Mar","Mër","Enj","Pre","Shtu"],daysMin:["Di","Hë","Ma","Më","En","Pr","Sht"],months:["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","Nëntor","Dhjetor"],monthsShort:["Jan","Shk","Mar","Pri","Maj","Qer","Korr","Gu","Sht","Tet","Nën","Dhjet"],monthsTitle:"Muaj",today:"Sot",weekStart:1,format:"dd/mm/yyyy",clear:"Pastro"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr-latin.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr-latin.min.js
deleted file mode 100755
index c6b7001ac..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr-latin.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["sr-latin"]={days:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sre","Čet","Pet","Sub"],daysMin:["N","Po","U","Sr","Č","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr.min.js
deleted file mode 100755
index 4e46dbf64..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sr.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sr={days:["Ðедеља","Понедељак","Уторак","Среда","Четвртак","Петак","Субота"],daysShort:["Ðед","Пон","Уто","Сре","Чет","Пет","Суб"],daysMin:["Ð","По","У","Ср","Ч","Пе","Су"],months:["Јануар","Фебруар","Март","Ðприл","Мај","Јун","Јул","ÐвгуÑÑ‚","Септембар","Октобар","Ðовембар","Децембар"],monthsShort:["Јан","Феб","Мар","Ðпр","Мај","Јун","Јул","Ðвг","Сеп","Окт","Ðов","Дец"],today:"ДанаÑ",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sv.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sv.min.js
deleted file mode 100755
index 7ab6becb9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sv.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sv={days:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],daysShort:["sön","mån","tis","ons","tor","fre","lör"],daysMin:["sö","må","ti","on","to","fr","lö"],months:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],monthsShort:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],today:"Idag",format:"yyyy-mm-dd",weekStart:1,clear:"Rensa"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sw.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sw.min.js
deleted file mode 100755
index 454d3053c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.sw.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.sw={days:["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"],daysShort:["J2","J3","J4","J5","Alh","Ij","J1"],daysMin:["2","3","4","5","A","I","1"],months:["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Desemba"],monthsShort:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Des"],today:"Leo"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ta.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ta.min.js
deleted file mode 100755
index e7909494a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.ta.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.ta={days:["ஞாயிறà¯","திஙà¯à®•à®³à¯","செவà¯à®µà®¾à®¯à¯","பà¯à®¤à®©à¯","வியாழனà¯","வெளà¯à®³à®¿","சனி"],daysShort:["ஞாயி","திஙà¯","செவà¯","பà¯à®¤","வியா","வெளà¯","சனி"],daysMin:["ஞா","தி","செ","பà¯","வி","வெ","ச"],months:["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯"],monthsShort:["ஜன","பிபà¯","மாரà¯","à®à®ªà¯","மே","ஜூனà¯","ஜூலை","ஆக","செபà¯","அகà¯","நவ","டிச"],today:"இனà¯à®±à¯",monthsTitle:"மாதஙà¯à®•à®³à¯",clear:"நீகà¯à®•à¯",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tg.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tg.min.js
deleted file mode 100755
index 104b6dd95..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tg.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.tg={days:["Якшанбе","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"],daysShort:["Яшб","Дшб","Сшб","Чшб","Пшб","Ҷум","Шнб"],daysMin:["Яш","Дш","Сш","Чш","Пш","Ҷм","Шб"],months:["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр"],monthsShort:["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек"],today:"Имрӯз",monthsTitle:"Моҳҳо",clear:"Тоза намудан",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.th.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.th.min.js
deleted file mode 100755
index 1e398ba8b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.th.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.th={days:["à¸à¸²à¸—ิตย์","จันทร์","à¸à¸±à¸‡à¸„าร","พุธ","พฤหัส","ศุà¸à¸£à¹Œ","เสาร์","à¸à¸²à¸—ิตย์"],daysShort:["à¸à¸²","จ","à¸","พ","พฤ","ศ","ส","à¸à¸²"],daysMin:["à¸à¸²","จ","à¸","พ","พฤ","ศ","ส","à¸à¸²"],months:["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ าพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม"],monthsShort:["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค."],today:"วันนี้"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tk.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tk.min.js
deleted file mode 100755
index 716edef2e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tk.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.tk={days:["ÃekÅŸenbe","DuÅŸenbe","SiÅŸenbe","ÇarÅŸenbe","PenÅŸenbe","Anna","Åženbe"],daysShort:["Ãek","DuÅŸ","SiÅŸ","Çar","Pen","Ann","Åžen"],daysMin:["Ãe","Du","Si","Ça","Pe","An","Åže"],months:["Ãanwar","Fewral","Mart","Aprel","Maý","Iýun","Iýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr"],monthsShort:["Ãan","Few","Mar","Apr","Maý","Iýn","Iýl","Awg","Sen","Okt","Noý","Dek"],today:"Bu gün",monthsTitle:"Aýlar",clear:"Aýyr",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tr.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tr.min.js
deleted file mode 100755
index 7889b1135..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.tr.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.tr={days:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],daysShort:["Pz","Pzt","Sal","Çrş","Prş","Cu","Cts"],daysMin:["Pz","Pzt","Sa","Çr","Pr","Cu","Ct"],months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],monthsShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],today:"Bugün",clear:"Temizle",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uk.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uk.min.js
deleted file mode 100755
index 41b02e6b2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uk.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.uk={days:["ÐеділÑ","Понеділок","Вівторок","Середа","Четвер","П'ÑтницÑ","Субота"],daysShort:["Ðед","Пнд","Ð’Ñ‚Ñ€","Срд","Чтв","Птн","Суб"],daysMin:["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"],months:["Cічень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","ВереÑень","Жовтень","ЛиÑтопад","Грудень"],monthsShort:["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","ЛиÑ","Гру"],today:"Сьогодні",clear:"ОчиÑтити",format:"dd.mm.yyyy",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-cyrl.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-cyrl.min.js
deleted file mode 100755
index a0a8f213c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-cyrl.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["uz-cyrl"]={days:["Якшанба","Душанба","Сешанба","Чоршанба","Пайшанба","Жума","Шанба"],daysShort:["Якш","Ду","Се","Чор","Пай","Жу","Ша"],daysMin:["Як","Ду","Се","Чо","Па","Жу","Ша"],months:["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек"],today:"Бугун",clear:"Ўчириш",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"Ойлар"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-latn.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-latn.min.js
deleted file mode 100755
index 2f58e343e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.uz-latn.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["uz-latn"]={days:["Yakshanba","Dushanba","Seshanba","Chorshanba","Payshanba","Juma","Shanba"],daysShort:["Yak","Du","Se","Chor","Pay","Ju","Sha"],daysMin:["Ya","Du","Se","Cho","Pa","Ju","Sha"],months:["Yanvar","Fevral","Mart","Aprel","May","Iyun","Iyul","Avgust","Sentabr","Oktabr","Noyabr","Dekabr"],monthsShort:["Yan","Fev","Mar","Apr","May","Iyn","Iyl","Avg","Sen","Okt","Noy","Dek"],today:"Bugun",clear:"O'chirish",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"Oylar"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.vi.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.vi.min.js
deleted file mode 100755
index 3311d23f8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.vi.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates.vi={days:["Chủ nháºt","Thứ hai","Thứ ba","Thứ tÆ°","Thứ năm","Thứ sáu","Thứ bảy"],daysShort:["CN","Thứ 2","Thứ 3","Thứ 4","Thứ 5","Thứ 6","Thứ 7"],daysMin:["CN","T2","T3","T4","T5","T6","T7"],months:["Tháng 1","Tháng 2","Tháng 3","Tháng 4","Tháng 5","Tháng 6","Tháng 7","Tháng 8","Tháng 9","Tháng 10","Tháng 11","Tháng 12"],monthsShort:["Th1","Th2","Th3","Th4","Th5","Th6","Th7","Th8","Th9","Th10","Th11","Th12"],today:"Hôm nay",clear:"Xóa",format:"dd/mm/yyyy"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-CN.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-CN.min.js
deleted file mode 100755
index 8e6920b0c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-CN.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["zh-CN"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期å…"],daysShort:["周日","周一","周二","周三","周四","周五","周å…"],daysMin:["æ—¥","一","二","三","å››","五","å…"],months:["一月","二月","三月","四月","五月","å…月","七月","八月","ä¹æœˆ","å月","å一月","å二月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今天",monthsTitle:"选择月份",clear:"清除",format:"yyyy-mm-dd",titleFormat:"yyyyå¹´mm月",weekStart:1}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-TW.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-TW.min.js
deleted file mode 100755
index e309c1d7d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/dist/locales/bootstrap-datepicker.zh-TW.min.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(a){a.fn.datepicker.dates["zh-TW"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期å…"],daysShort:["週日","週一","週二","週三","週四","週五","週å…"],daysMin:["æ—¥","一","二","三","å››","五","å…"],months:["一月","二月","三月","四月","五月","å…月","七月","八月","ä¹æœˆ","å月","å一月","å二月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今天",format:"yyyyå¹´mm月ddæ—¥",weekStart:1,clear:"清除"}}(jQuery);
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/Makefile b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/Makefile
deleted file mode 100755
index 34b6ef8d4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/Makefile
+++ /dev/null
@@ -1,153 +0,0 @@
-# Makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line.
-SPHINXOPTS =
-SPHINXBUILD = sphinx-build
-PAPER =
-BUILDDIR = _build
-
-# Internal variables.
-PAPEROPT_a4 = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
-# the i18n builder cannot share the environment and doctrees with the others
-I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
-
-.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
-
-help:
- @echo "Please use \`make ' where is one of"
- @echo " html to make standalone HTML files"
- @echo " dirhtml to make HTML files named index.html in directories"
- @echo " singlehtml to make a single large HTML file"
- @echo " pickle to make pickle files"
- @echo " json to make JSON files"
- @echo " htmlhelp to make HTML files and a HTML help project"
- @echo " qthelp to make HTML files and a qthelp project"
- @echo " devhelp to make HTML files and a Devhelp project"
- @echo " epub to make an epub"
- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
- @echo " latexpdf to make LaTeX files and run them through pdflatex"
- @echo " text to make text files"
- @echo " man to make manual pages"
- @echo " texinfo to make Texinfo files"
- @echo " info to make Texinfo files and run them through makeinfo"
- @echo " gettext to make PO message catalogs"
- @echo " changes to make an overview of all changed/added/deprecated items"
- @echo " linkcheck to check all external links for integrity"
- @echo " doctest to run all doctests embedded in the documentation (if enabled)"
-
-clean:
- -rm -rf $(BUILDDIR)/*
-
-html:
- $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
- $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-singlehtml:
- $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
- @echo
- @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
-
-pickle:
- $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
- @echo
- @echo "Build finished; now you can process the pickle files."
-
-json:
- $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
- @echo
- @echo "Build finished; now you can process the JSON files."
-
-htmlhelp:
- $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
- @echo
- @echo "Build finished; now you can run HTML Help Workshop with the" \
- ".hhp project file in $(BUILDDIR)/htmlhelp."
-
-qthelp:
- $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
- @echo
- @echo "Build finished; now you can run "qcollectiongenerator" with the" \
- ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
- @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/bootstrap-datepicker.qhcp"
- @echo "To view the help file:"
- @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/bootstrap-datepicker.qhc"
-
-devhelp:
- $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
- @echo
- @echo "Build finished."
- @echo "To view the help file:"
- @echo "# mkdir -p $$HOME/.local/share/devhelp/bootstrap-datepicker"
- @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/bootstrap-datepicker"
- @echo "# devhelp"
-
-epub:
- $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
- @echo
- @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
-
-latex:
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
- @echo
- @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
- @echo "Run \`make' in that directory to run these through (pdf)latex" \
- "(use \`make latexpdf' here to do that automatically)."
-
-latexpdf:
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
- @echo "Running LaTeX files through pdflatex..."
- $(MAKE) -C $(BUILDDIR)/latex all-pdf
- @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
-
-text:
- $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
- @echo
- @echo "Build finished. The text files are in $(BUILDDIR)/text."
-
-man:
- $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
- @echo
- @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
-
-texinfo:
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
- @echo
- @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
- @echo "Run \`make' in that directory to run these through makeinfo" \
- "(use \`make info' here to do that automatically)."
-
-info:
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
- @echo "Running Texinfo files through makeinfo..."
- make -C $(BUILDDIR)/texinfo info
- @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
-
-gettext:
- $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
- @echo
- @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
-
-changes:
- $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
- @echo
- @echo "The overview file is in $(BUILDDIR)/changes."
-
-linkcheck:
- $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
- @echo
- @echo "Link check complete; look for any errors in the above output " \
- "or in $(BUILDDIR)/linkcheck/output.txt."
-
-doctest:
- $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
- @echo "Testing of doctests in the sources finished, look at the " \
- "results in $(BUILDDIR)/doctest/output.txt."
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/README.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/README.md
deleted file mode 100755
index 38cee0004..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-Documentation
-=============
-
-Project documentation is built using [Sphinx docs](http://sphinx-doc.org/), which uses [ReST](http://docutils.sourceforge.net/rst.html) for markup. This allows the docs to cover a vast amount of topics without using a thousand-line README file.
-
-Sphinx docs is pip-installable via `pip install sphinx`. Once installed, open a command line in the docs folder and run the following commands:
-
-```bash
-$ sudo pip install -r requirements.txt
-```
-
-This will install the requirements needed for the generating the docs. Afterwards you can run:
-
-```bash
-$ make html
-```
-
-The docs will be generated, the output files will be placed in the `_build/html/` directory, and can be browsed (locally) with any browser.
-
-The docs can also be found online at .
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/demo_head.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/demo_head.html
deleted file mode 100755
index 64d2e7c92..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/demo_head.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_component.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_component.html
deleted file mode 100755
index 2b99921b3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_component.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_daterange.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_daterange.html
deleted file mode 100755
index 9d158e78c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_daterange.html
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_inline.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_inline.html
deleted file mode 100755
index ff4e8ed55..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_inline.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_input.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_input.html
deleted file mode 100755
index 2e1c289f4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/markup_input.html
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_calendarweeks.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_calendarweeks.html
deleted file mode 100755
index 7565f8939..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_calendarweeks.html
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_clearbtn.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_clearbtn.html
deleted file mode 100755
index a4b5ef059..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_clearbtn.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_daysofweekdisabled.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_daysofweekdisabled.html
deleted file mode 100755
index bd31b38c0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_daysofweekdisabled.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_enddate.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_enddate.html
deleted file mode 100755
index 43da9d9d6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_enddate.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_language.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_language.html
deleted file mode 100755
index 37f5930d0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_language.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_multidate.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_multidate.html
deleted file mode 100755
index 191b239b8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_multidate.html
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_showweekdays.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_showweekdays.html
deleted file mode 100755
index 85cb229df..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_showweekdays.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_startdate.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_startdate.html
deleted file mode 100755
index ce9778430..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_startdate.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todaybtn.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todaybtn.html
deleted file mode 100755
index 08430120d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todaybtn.html
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todayhighlight.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todayhighlight.html
deleted file mode 100755
index fb38008fb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_todayhighlight.html
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_weekstart.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_weekstart.html
deleted file mode 100755
index e55a04fc7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/option_weekstart.html
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.css b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.css
deleted file mode 100755
index 0535e8cea..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.css
+++ /dev/null
@@ -1,9 +0,0 @@
-@import url('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css');
-@import url('../../../dist/css/bootstrap-datepicker3.min.css');
-
-body {
- /* Padding around all elements to allow space for screenshots */
- padding: 10px;
- /* Transparent background for PNG screenshots */
- background: none;
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.js
deleted file mode 100755
index ebadc0271..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/common.js
+++ /dev/null
@@ -1,2 +0,0 @@
-document.write("");
-document.write("");
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/debug.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/debug.js
deleted file mode 100755
index e609fa6ba..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/debug.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- Usage: $ phantomjs --remote-debugger-port=9001 --remote-debugger-autorun=yes debug.js page.html
-
- Open Chrome tab to http://localhost:9001/; open second link (ie, path to page.html)
-*/
-var system = require('system' ), fs = require('fs'), webpage = require('webpage');
-
-(function(phantom){
- var page=webpage.create();
-
- function debugPage(){
- console.log("Refresh a second debugger-port page and open a second webkit inspector for the target page.");
- console.log("Letting this page continue will then trigger a break in the target page.");
- debugger; // pause here in first web browser tab for steps 5 & 6
- page.open(system.args[1]);
- page.evaluateAsync(function() {
- debugger; // step 7 will wait here in the second web browser tab
- });
- }
- debugPage();
-}(phantom));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/html-imports.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/html-imports.min.js
deleted file mode 100755
index 368d2261d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/html-imports.min.js
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright (c) 2012 The Polymer Authors. All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-window.HTMLImports=window.HTMLImports||{flags:{}},function(a){var b=(a.path,a.xhr),c=function(a,b){this.cache={},this.onload=a,this.oncomplete=b,this.inflight=0,this.pending={}};c.prototype={addNodes:function(a){this.inflight+=a.length,d(a,this.require,this),this.checkDone()},require:function(a){var b=a.src||a.href;a.__nodeUrl=b,this.dedupe(b,a)||this.fetch(b,a)},dedupe:function(a,b){return this.pending[a]?(this.pending[a].push(b),!0):this.cache[a]?(this.onload(a,b,this.cache[a]),this.tail(),!0):(this.pending[a]=[b],!1)},fetch:function(a,c){var d=function(b,d){this.receive(a,c,b,d)}.bind(this);b.load(a,d)},receive:function(a,b,c,d){c||(this.cache[a]=d),this.pending[a].forEach(function(b){c||this.onload(a,b,d),this.tail()},this),this.pending[a]=null},tail:function(){--this.inflight,this.checkDone()},checkDone:function(){this.inflight||this.oncomplete()}},b=b||{async:!0,ok:function(a){return a.status>=200&&a.status<300||304===a.status||0===a.status},load:function(c,d,e){var f=new XMLHttpRequest;return(a.flags.debug||a.flags.bust)&&(c+="?"+Math.random()),f.open("GET",c,b.async),f.addEventListener("readystatechange",function(){4===f.readyState&&d.call(e,!b.ok(f)&&f,f.response||f.responseText,c)}),f.send(),f},loadDocument:function(a,b,c){this.load(a,b,c).responseType="document"}};var d=Array.prototype.forEach.call.bind(Array.prototype.forEach);a.xhr=b,a.Loader=c}(window.HTMLImports),function(a){function b(a){return c(a,j)}function c(a,b){return"link"===a.localName&&a.getAttribute("rel")===b}function d(a){return"script"===a.localName}function e(a,b){var c=a;c instanceof Document||(c=document.implementation.createHTMLDocument(j)),c._URL=b;var d=c.createElement("base");return d.setAttribute("href",b),c.baseURI||(c.baseURI=b),c.head.appendChild(d),a instanceof Document||(c.body.innerHTML=a),window.HTMLTemplateElement&&HTMLTemplateElement.bootstrap&&HTMLTemplateElement.bootstrap(c),c}function f(a,b){function c(){k==l&&requestAnimationFrame(a)}function d(){k++,c()}b=b||o;var e=HTMLImports.isIE?"complete":"interactive",h="complete"===b.readyState||b.readyState===e;if(!h){var i=function(){("complete"===b.readyState||b.readyState===e)&&(b.removeEventListener("readystatechange",i),f(a,b))};return void b.addEventListener("readystatechange",i)}var j=b.querySelectorAll("link[rel=import]"),k=0,l=j.length;if(l)for(var m,n=0;l>n&&(m=j[n]);n++)g(m)?d.call(m):(m.addEventListener("load",d),m.addEventListener("error",d));else c()}function g(a){return i?a.import&&"loading"!==a.import.readyState:a.__importParsed}var h="import"in document.createElement("link"),i=!a.flags.imports&&h,j="import";if(!i){{var k,l=a.Loader,m=(a.xhr,"stylesheet"),n={documents:{},cache:{},preloadSelectors:["link[rel="+j+"]","template","script[src]:not([type])",'script[src][type="text/javascript"]'].join(","),loader:function(a){if(k&&k.inflight){var b=k.oncomplete;return k.oncomplete=function(){b(),a()},k}return k=new l(n.loaded,a),k.cache=n.cache,k},load:function(a,b){k=n.loader(b),n.preload(a)},preload:function(a){var b=this.marshalNodes(a);k.addNodes(b)},marshalNodes:function(a){var b=a.querySelectorAll(n.preloadSelectors);return b=this.filterMainDocumentNodes(a,b),b=this.extractTemplateNodes(b)},filterMainDocumentNodes:function(a,b){return a===document&&(b=Array.prototype.filter.call(b,function(a){return!d(a)})),b},extractTemplateNodes:function(a){var b=[];return a=Array.prototype.filter.call(a,function(a){if("template"===a.localName){if(a.content){var c=a.content.querySelectorAll("link[rel="+m+"]");c.length&&(b=b.concat(Array.prototype.slice.call(c,0)))}return!1}return!0}),b.length&&(a=a.concat(b)),a},loaded:function(a,c,d){if(b(c)){var f=n.documents[a];f||(f=e(d,a),n.documents[a]=f,n.preload(f)),c.import=c.content=d=f}c.__resource=d}};Array.prototype.forEach.call.bind(Array.prototype.forEach)}a.importer=n}var o=window.ShadowDOMPolyfill?wrap(document):document;Object.defineProperty(o,"_currentScript",{get:function(){return HTMLImports.currentScript||o.currentScript},writeable:!0,configurable:!0}),a.hasNative=h,a.useNative=i,a.whenImportsReady=f,a.IMPORT_LINK_TYPE=j,a.isImportLoaded=g}(window.HTMLImports),function(a){function b(a){var b=a.ownerDocument.createElement("style");return b.textContent=a.textContent,g.resolveUrlsInStyle(b),b}function c(a,b){this.doc=a,this.doc.__loadTracker=this,this.callback=b}function d(a){return"link"===a.localName&&a.getAttribute("rel")===h}function e(a){return a.parentNode&&!f(a)}function f(a){return a.ownerDocument===document||a.ownerDocument.impl===document}var g=a.path,h="import",i=/Trident/.test(navigator.userAgent),j={selectors:["link[rel="+h+"]","link[rel=stylesheet]","style","script:not([type])",'script[type="text/javascript"]'],map:{link:"parseLink",script:"parseScript",style:"parseStyle"},parse:function(a,b){if(a.__importParsed)b&&b();else{a.__importParsed=!0;for(var d,e=new c(a,b),f=a.querySelectorAll(j.selectors),g=a.scripts?a.scripts.length:0,h=0;hg&&(e=f[g]);g++)a.addEventListener(e,c)},receive:function(){this.pending--,this.checkDone()},checkDone:function(){this.isOpen&&this.pending<=0&&this.callback&&(this.isOpen=!1,this.callback())}};Array.prototype.forEach.call.bind(Array.prototype.forEach);a.parser=j,a.path=g,a.isIE=i}(HTMLImports),function(){function a(){HTMLImports.ready=!0,HTMLImports.readyTime=(new Date).getTime(),c.dispatchEvent(new CustomEvent("HTMLImportsLoaded",{bubbles:!0}))}function b(){HTMLImports.useNative||HTMLImports.importer.load(c,function(){HTMLImports.parser.parse(c)})}"function"!=typeof window.CustomEvent&&(window.CustomEvent=function(a,b){var c=document.createEvent("HTMLEvents");return c.initEvent(a,b.bubbles===!1?!1:!0,b.cancelable===!1?!1:!0,b.detail),c});var c=window.ShadowDOMPolyfill?window.ShadowDOMPolyfill.wrapIfNeeded(document):document;HTMLImports.useNative||("complete"===document.readyState||"interactive"===document.readyState&&!window.attachEvent?b():document.addEventListener("DOMContentLoaded",b)),HTMLImports.whenImportsReady(function(){a()})}();
-//# sourceMappingURL=html-imports.min.map
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/screenshot.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/screenshot.js
deleted file mode 100755
index 920d030cc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_screenshots/script/screenshot.js
+++ /dev/null
@@ -1,69 +0,0 @@
-/* jshint phantom:true, devel:true */
-/* Usage: phantomjs screenshot.js in.html out.png */
-
-var sys = require('system'),
- page = new WebPage();
-page.viewportSize = {
- width: 800,
- height: 600
-};
-
-page.open(sys.args[1], function(status){
- if (status !== 'success'){
- console.log('Bad status: %s', status);
- phantom.exit(1);
- }
- window.setTimeout(function(){
- var box = page.evaluate(function(){
- var lefts, rights, tops, bottoms,
- padding = 10, // px
- selection, show;
-
- // Call setup method
- if (window.setup)
- window.setup();
- // Show all pickers, or only those marked for showing
- show = $('body').data('show');
- show = show ? $(show) : $('*');
- show
- .filter(function(){
- return 'datepicker' in $(this).data();
- })
- .datepicker('show');
-
- // Get bounds of selected elements
- selection = $($('body').data('capture'));
- tops = selection.map(function(){
- return $(this).offset().top;
- }).toArray();
- lefts = selection.map(function(){
- return $(this).offset().left;
- }).toArray();
- bottoms = selection.map(function(){
- return $(this).offset().top + $(this).outerHeight();
- }).toArray();
- rights = selection.map(function(){
- return $(this).offset().left + $(this).outerWidth();
- }).toArray();
-
- // Convert bounds to single bounding box
- var b = {
- top: Math.min.apply(Math, tops),
- left: Math.min.apply(Math, lefts)
- };
- b.width = Math.max.apply(Math, rights) - b.left;
- b.height = Math.max.apply(Math, bottoms) - b.top;
-
- // Return bounding box
- return {
- top: Math.max(b.top - padding, 0),
- left: Math.max(b.left - padding, 0),
- width: b.width + 2 * padding,
- height: b.height + 2 * padding
- };
- });
- page.clipRect = box;
- page.render(sys.args[2]);
- phantom.exit();
- }, 1);
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/demo_head.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/demo_head.png
deleted file mode 100755
index 1207162c4..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/demo_head.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_component.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_component.png
deleted file mode 100755
index 18df9d01d..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_component.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_daterange.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_daterange.png
deleted file mode 100755
index 9c9a2d448..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_daterange.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_inline.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_inline.png
deleted file mode 100755
index 2e811ee0c..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_inline.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_input.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_input.png
deleted file mode 100755
index e0852075b..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/markup_input.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_calendarweeks.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_calendarweeks.png
deleted file mode 100755
index 588bb8d1b..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_calendarweeks.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_clearbtn.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_clearbtn.png
deleted file mode 100755
index a80cd1286..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_clearbtn.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_daysofweekdisabled.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_daysofweekdisabled.png
deleted file mode 100755
index 23efc19d9..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_daysofweekdisabled.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_enddate.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_enddate.png
deleted file mode 100755
index 9b960a2f4..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_enddate.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_language.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_language.png
deleted file mode 100755
index de840747c..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_language.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_multidate.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_multidate.png
deleted file mode 100755
index 25dd5a8d8..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_multidate.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_showweekdays.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_showweekdays.png
deleted file mode 100755
index 0475d1a04..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_showweekdays.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_startdate.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_startdate.png
deleted file mode 100755
index 7766476a9..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_startdate.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todaybtn.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todaybtn.png
deleted file mode 100755
index de4a1450c..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todaybtn.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todayhighlight.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todayhighlight.png
deleted file mode 100755
index f15408d64..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_todayhighlight.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_weekstart.png b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_weekstart.png
deleted file mode 100755
index bafbe9e1d..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/_static/screenshots/option_weekstart.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/conf.py b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/conf.py
deleted file mode 100755
index 131dd5214..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/conf.py
+++ /dev/null
@@ -1,249 +0,0 @@
-# -*- coding: utf-8 -*-
-#
-# bootstrap-datepicker documentation build configuration file, created by
-# sphinx-quickstart on Fri Aug 2 14:45:57 2013.
-#
-# This file is execfile()d with the current directory set to its containing dir.
-#
-# Note that not all possible configuration values are present in this
-# autogenerated file.
-#
-# All configuration values have a default; values that are commented out
-# serve to show the default.
-
-import sys, os
-
-# The version info for the project you're documenting, acts as replacement for
-# |version| and |release|, also used in various other places throughout the
-# built documents.
-#
-# The short X.Y version.
-#version = ''
-# The full version, including alpha/beta/rc tags.
-#release = ''
-
-import sphinx_rtd_theme
-
-# If extensions (or modules to document with autodoc) are in another directory,
-# add these directories to sys.path here. If the directory is relative to the
-# documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.insert(0, os.path.abspath('.'))
-
-# -- General configuration -----------------------------------------------------
-
-# If your documentation needs a minimal Sphinx version, state it here.
-#needs_sphinx = '1.0'
-
-primary_domain = 'js'
-
-# Add any Sphinx extension module names here, as strings. They can be extensions
-# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
-extensions = []
-
-# Add any paths that contain templates here, relative to this directory.
-templates_path = ['_templates']
-
-# The suffix of source filenames.
-source_suffix = '.rst'
-
-# The encoding of source files.
-#source_encoding = 'utf-8-sig'
-
-# The master toctree document.
-master_doc = 'index'
-
-# General information about the project.
-project = u'bootstrap-datepicker'
-copyright = u'2016, eternicode'
-
-# The language for content autogenerated by Sphinx. Refer to documentation
-# for a list of supported languages.
-#language = None
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-#today_fmt = '%B %d, %Y'
-
-# List of patterns, relative to source directory, that match files and
-# directories to ignore when looking for source files.
-exclude_patterns = ['_build']
-
-# The reST default role (used for this markup: `text`) to use for all documents.
-#default_role = None
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
-
-# The name of the Pygments (syntax highlighting) style to use.
-pygments_style = 'sphinx'
-
-highlight_language = 'javascript'
-
-# A list of ignored prefixes for module index sorting.
-#modindex_common_prefix = []
-
-
-# -- Options for HTML output ---------------------------------------------------
-
-# The theme to use for HTML and HTML Help pages. See the documentation for
-# a list of builtin themes.
-html_theme = 'sphinx_rtd_theme'
-
-# Theme options are theme-specific and customize the look and feel of a theme
-# further. For a list of options available for each theme, see the
-# documentation.
-#html_theme_options = {}
-
-# Add any paths that contain custom themes here, relative to this directory.
-# html_theme_path = ['_themes',]
-html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
-
-# The name for this set of Sphinx documents. If None, it defaults to
-# " v documentation".
-#html_title = None
-
-# A shorter title for the navigation bar. Default is the same as html_title.
-#html_short_title = None
-
-# The name of an image file (relative to this directory) to place at the top
-# of the sidebar.
-#html_logo = None
-
-# The name of an image file (within the static path) to use as favicon of the
-# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
-# pixels large.
-#html_favicon = None
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ['_static']
-
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-#html_last_updated_fmt = '%b %d, %Y'
-
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-# Custom sidebar templates, maps document names to template names.
-#html_sidebars = {}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-#html_additional_pages = {}
-
-# If false, no module index is generated.
-#html_domain_indices = True
-
-# If false, no index is generated.
-#html_use_index = True
-
-# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
-# If true, links to the reST sources are added to the pages.
-#html_show_sourcelink = True
-
-# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
-#html_show_sphinx = True
-
-# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
-#html_show_copyright = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a tag referring to it. The value of this option must be the
-# base URL from which the finished HTML is served.
-#html_use_opensearch = ''
-
-# This is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = None
-
-# Output file base name for HTML help builder.
-htmlhelp_basename = 'bootstrap-datepickerdoc'
-
-
-# -- Options for LaTeX output --------------------------------------------------
-
-latex_elements = {
-# The paper size ('letterpaper' or 'a4paper').
-#'papersize': 'letterpaper',
-
-# The font size ('10pt', '11pt' or '12pt').
-#'pointsize': '10pt',
-
-# Additional stuff for the LaTeX preamble.
-#'preamble': '',
-}
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title, author, documentclass [howto/manual]).
-latex_documents = [
- ('index', 'bootstrap-datepicker.tex', u'bootstrap-datepicker Documentation',
- u'eternicode', 'manual'),
-]
-
-# The name of an image file (relative to this directory) to place at the top of
-# the title page.
-#latex_logo = None
-
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# If true, show page references after internal links.
-#latex_show_pagerefs = False
-
-# If true, show URL addresses after external links.
-#latex_show_urls = False
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-#latex_domain_indices = True
-
-
-# -- Options for manual page output --------------------------------------------
-
-# One entry per manual page. List of tuples
-# (source start file, name, description, authors, manual section).
-man_pages = [
- ('index', 'bootstrap-datepicker', u'bootstrap-datepicker Documentation',
- [u'eternicode'], 1)
-]
-
-# If true, show URL addresses after external links.
-#man_show_urls = False
-
-
-# -- Options for Texinfo output ------------------------------------------------
-
-# Grouping the document tree into Texinfo files. List of tuples
-# (source start file, target name, title, author,
-# dir menu entry, description, category)
-texinfo_documents = [
- ('index', 'bootstrap-datepicker', u'bootstrap-datepicker Documentation',
- u'eternicode', 'bootstrap-datepicker', 'One line description of project.',
- 'Miscellaneous'),
-]
-
-# Documents to append as an appendix to all manuals.
-#texinfo_appendices = []
-
-# If false, no module index is generated.
-#texinfo_domain_indices = True
-
-# How to display URL addresses: 'footnote', 'no', or 'inline'.
-#texinfo_show_urls = 'footnote'
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/events.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/events.rst
deleted file mode 100755
index 89ffddb0b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/events.rst
+++ /dev/null
@@ -1,63 +0,0 @@
-Events
-======
-
-Datepicker triggers a number of events in certain circumstances. All events have extra data attached to the event object that is passed to any event handlers
-
-::
-
- $('.datepicker').datepicker()
- .on(picker_event, function(e) {
- // `e` here contains the extra attributes
- });
-
-* ``date``: the relevant Date object, in local timezone. For a multidate picker, this will be the latest date picked.
-* ``dates``: an Array of Date objects, in local timezone, when using a multidate picker.
-* ``format([ix], [format])``: a function to make formatting ``date`` easier. ``ix`` can be the index of a Date in the ``dates`` array to format; if absent, the last date selected will be used. ``format`` can be any format string that datepicker supports; if absent, the format set on the datepicker will be used. Both arguments are optional.
-
-
-show
-----
-
-Fired when the date picker is displayed.
-
-
-hide
-----
-
-Fired when the date picker is hidden.
-
-
-clearDate
----------
-
-Fired when the date is cleared, normally when the "clear" button (enabled with the ``clearBtn`` option) is pressed.
-
-
-changeDate
-----------
-
-Fired when the date is changed.
-
-
-changeMonth
------------
-
-Fired when the *view* month is changed from year view.
-
-
-changeYear
-----------
-
-Fired when the *view* year is changed from decade view.
-
-
-changeDecade
-------------
-
-Fired when the *view* decade is changed from century view.
-
-
-changeCentury
--------------
-
-Fired when the *view* century is changed from millennium view.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/i18n.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/i18n.rst
deleted file mode 100755
index ba2928aee..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/i18n.rst
+++ /dev/null
@@ -1,36 +0,0 @@
-I18N
-====
-
-The plugin supports i18n for the month and weekday names and the ``weekStart`` option. The default is English ("en"); other available translations are available in the ``js/locales/`` directory, simply include your desired locale after the plugin. To add more languages, simply add a key to ``$.fn.datepicker.dates``, before calling ``.datepicker()``. Example
-
-::
-
- $.fn.datepicker.dates['en'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- clear: "Clear",
- format: "mm/dd/yyyy",
- titleFormat: "MM yyyy", /* Leverages same syntax as 'format' */
- weekStart: 0
- };
-
-Right-to-left languages may also include ``rtl: true`` to make the calendar display appropriately.
-
-If your browser (or those of your users) is displaying characters wrong, chances are the browser is loading the javascript file with a non-unicode encoding. Simply add ``charset="UTF-8"`` to your ``script`` tag:
-
-.. code-block:: html
-
-
-
-::
-
- $('.datepicker').datepicker({
- language: 'XX'
- });
-
-.. figure:: _static/screenshots/option_language.png
- :align: center
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/index.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/index.rst
deleted file mode 100755
index 66f1b8cdc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/index.rst
+++ /dev/null
@@ -1,127 +0,0 @@
-bootstrap-datepicker
-====================
-
-Bootstrap-datepicker provides a flexible datepicker widget in the Bootstrap style.
-
-.. figure:: _static/screenshots/demo_head.png
- :align: center
-
-Versions are incremented according to `semver `_.
-
-`Online Demo `_
-
-
-Requirements
-------------
-
-* `Bootstrap`_ 2.0.4+
-* `jQuery`_ 1.7.1+
-
-.. _Bootstrap: https://getbootstrap.com/
-.. _jQuery: https://jquery.com/
-
-These are the specific versions bootstrap-datepicker is tested against (``js`` files) and built against (``css`` files). Use other versions at your own risk.
-
-
-Dependencies
-------------
-
-Requires bootstrap's dropdown component (``dropdowns.less``) for some styles, and bootstrap's sprites (``sprites.less`` and associated images) for arrows.
-
-A standalone .css file (including necessary dropdown styles and alternative, text-based arrows) can be generated by running ``build/build_standalone.less`` through the ``lessc`` compiler::
-
- $ lessc build/build_standalone.less datepicker.css
-
-
-Usage
------
-
-Call the datepicker via javascript::
-
- $('.datepicker').datepicker();
-
-
-Data API
-^^^^^^^^
-
-As with bootstrap's own plugins, datepicker provides a data-api that can be used to instantiate datepickers without the need for custom javascript. For most datepickers, simply set ``data-provide="datepicker"`` on the element you want to initialize, and it will be intialized lazily, in true bootstrap fashion. For inline datepickers, use ``data-provide="datepicker-inline"``; these will be immediately initialized on page load, and cannot be lazily loaded.
-
-.. code-block:: html
-
-
-
-Markup with component
-
-.. code-block:: html
-
-
-
-You can disable datepicker's data-api in the same way as you would disable other bootstrap plugins::
-
- $(document).off('.datepicker.data-api');
-
-
-Configuration
-^^^^^^^^^^^^^
-
-:doc:`options` are passed to the ``datepicker`` function via an options hash at instantiation::
-
- $('.datepicker').datepicker({
- format: 'mm/dd/yyyy',
- startDate: '-3d'
- });
-
-Most options may be provided as data-attributes on the target element:
-
-.. code-block:: html
-
-
-
-::
-
- $('.datepicker').datepicker({
- startDate: '-3d'
- });
-
-Defaults for all options can be modified directly by changing values in the ``$.fn.datepicker.defaults`` hash::
-
- $.fn.datepicker.defaults.format = "mm/dd/yyyy";
- $('.datepicker').datepicker({
- startDate: '-3d'
- });
-
-
-Stylesheets
-^^^^^^^^^^^
-
-There are a few different stylesheets included in the library. This is an overview of what each file is to be used for:
-
-:code:`bootstrap-datepicker.css` gives legacy support for twitter bootstrap v2, :code:`bootstrap-datepicker3.css` is used for twitter bootstrap v3 support
-and :code:`bootstrap-datepicker.standalone.css` can be used to include the datepicker without depending on the twitter bootstrap library.
-
-No Conflict mode
-^^^^^^^^^^^^^^^^
-
-``$.fn.datepicker.noConflict`` provides a way to avoid conflict with other jQuery datepicker plugins::
-
- var datepicker = $.fn.datepicker.noConflict(); // return $.fn.datepicker to previously assigned value
- $.fn.bootstrapDP = datepicker; // give $().bootstrapDP the bootstrap-datepicker functionality
-
-
-
-Table of Contents
------------------
-
-.. toctree::
-
- markup
- options
- methods
- events
- keyboard
- i18n
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/keyboard.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/keyboard.rst
deleted file mode 100755
index e34ba65d6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/keyboard.rst
+++ /dev/null
@@ -1,27 +0,0 @@
-Keyboard support
-================
-
-The datepicker includes keyboard navigation. The "focused date" is kept track of and highlighted (as with mouse hover) during keyboard nav, and is cleared when a date is toggled or the picker is hidden.
-
-up, down, left, right arrow keys
---------------------------------
-
-By themselves, left/right will move focus backward/forward one day, up/down will move focus back/forward one week.
-
-With the shift key, up/left will move focus backward one month, down/right will move focus forward one month.
-
-With the ctrl key, up/left will move focus backward one year, down/right will move focus forward one year.
-
-Shift+ctrl behaves the same as ctrl -- that is, it does not change both month and year simultaneously, only the year.
-
-enter
------
-
-When the picker is visible, enter will toggle the focused date (if there is one). When the picker is not visible, enter will have normal effects -- submitting the current form, etc.
-
-When the date is deselected, the ``clearDate`` event is triggered; otherwise, the ``changeDate`` event is triggered. If ``autoclose`` is enabled, the picker will be hidden after selection or deselection.
-
-escape
-------
-
-The escape key can be used to clear the focused date and hide and re-show the datepicker; hiding the picker is necessary if the user wants to manually edit the value.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/make.bat b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/make.bat
deleted file mode 100755
index 282b37a8f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/make.bat
+++ /dev/null
@@ -1,190 +0,0 @@
-@ECHO OFF
-
-REM Command file for Sphinx documentation
-
-if "%SPHINXBUILD%" == "" (
- set SPHINXBUILD=sphinx-build
-)
-set BUILDDIR=_build
-set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
-set I18NSPHINXOPTS=%SPHINXOPTS% .
-if NOT "%PAPER%" == "" (
- set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
- set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
-)
-
-if "%1" == "" goto help
-
-if "%1" == "help" (
- :help
- echo.Please use `make ^` where ^ is one of
- echo. html to make standalone HTML files
- echo. dirhtml to make HTML files named index.html in directories
- echo. singlehtml to make a single large HTML file
- echo. pickle to make pickle files
- echo. json to make JSON files
- echo. htmlhelp to make HTML files and a HTML help project
- echo. qthelp to make HTML files and a qthelp project
- echo. devhelp to make HTML files and a Devhelp project
- echo. epub to make an epub
- echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
- echo. text to make text files
- echo. man to make manual pages
- echo. texinfo to make Texinfo files
- echo. gettext to make PO message catalogs
- echo. changes to make an overview over all changed/added/deprecated items
- echo. linkcheck to check all external links for integrity
- echo. doctest to run all doctests embedded in the documentation if enabled
- goto end
-)
-
-if "%1" == "clean" (
- for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
- del /q /s %BUILDDIR%\*
- goto end
-)
-
-if "%1" == "html" (
- %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/html.
- goto end
-)
-
-if "%1" == "dirhtml" (
- %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
- goto end
-)
-
-if "%1" == "singlehtml" (
- %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
- goto end
-)
-
-if "%1" == "pickle" (
- %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can process the pickle files.
- goto end
-)
-
-if "%1" == "json" (
- %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can process the JSON files.
- goto end
-)
-
-if "%1" == "htmlhelp" (
- %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can run HTML Help Workshop with the ^
-.hhp project file in %BUILDDIR%/htmlhelp.
- goto end
-)
-
-if "%1" == "qthelp" (
- %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can run "qcollectiongenerator" with the ^
-.qhcp project file in %BUILDDIR%/qthelp, like this:
- echo.^> qcollectiongenerator %BUILDDIR%\qthelp\bootstrap-datepicker.qhcp
- echo.To view the help file:
- echo.^> assistant -collectionFile %BUILDDIR%\qthelp\bootstrap-datepicker.ghc
- goto end
-)
-
-if "%1" == "devhelp" (
- %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished.
- goto end
-)
-
-if "%1" == "epub" (
- %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The epub file is in %BUILDDIR%/epub.
- goto end
-)
-
-if "%1" == "latex" (
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
- goto end
-)
-
-if "%1" == "text" (
- %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The text files are in %BUILDDIR%/text.
- goto end
-)
-
-if "%1" == "man" (
- %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The manual pages are in %BUILDDIR%/man.
- goto end
-)
-
-if "%1" == "texinfo" (
- %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
- goto end
-)
-
-if "%1" == "gettext" (
- %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
- goto end
-)
-
-if "%1" == "changes" (
- %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
- if errorlevel 1 exit /b 1
- echo.
- echo.The overview file is in %BUILDDIR%/changes.
- goto end
-)
-
-if "%1" == "linkcheck" (
- %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
- if errorlevel 1 exit /b 1
- echo.
- echo.Link check complete; look for any errors in the above output ^
-or in %BUILDDIR%/linkcheck/output.txt.
- goto end
-)
-
-if "%1" == "doctest" (
- %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
- if errorlevel 1 exit /b 1
- echo.
- echo.Testing of doctests in the sources finished, look at the ^
-results in %BUILDDIR%/doctest/output.txt.
- goto end
-)
-
-:end
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/markup.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/markup.rst
deleted file mode 100755
index 546b844e9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/markup.rst
+++ /dev/null
@@ -1,89 +0,0 @@
-Markup
-=======
-
-The following are examples of supported markup. On their own, these will not provide a datepicker widget; you will need to instantiate the datepicker on the markup.
-
-
-input
------
-
-The simplest case: focusing the input (clicking or tabbing into it) will show the picker.
-
-.. code-block:: html
-
-
-
-.. figure:: _static/screenshots/markup_input.png
- :align: center
-
-component
----------
-
-Adding the ``date`` class to an ``input-group`` bootstrap component will allow the ``input-group-addon`` elements to trigger the picker.
-
-.. code-block:: html
-
-
-
-.. figure:: _static/screenshots/markup_component.png
- :align: center
-
-.. _daterange:
-
-date-range
-----------
-
-Using the ``input-daterange`` construct with multiple child inputs will instantiate one picker per input and link them together to allow selecting ranges.
-
-.. code-block:: html
-
-
-
-.. figure:: _static/screenshots/markup_daterange.png
- :align: center
-
-Note that that ``input-daterange`` itself does not implement the ``datepicker`` methods. Methods should be directly called to the inputs. For example:
-
-::
-
- $('.input-daterange input').each(function() {
- $(this).datepicker('clearDates');
- });
-
-inline or embedded
-------------------
-
-Instantiating the datepicker on a simple div will give an embedded picker that is always visible.
-
-.. code-block:: html
-
-
-
-.. figure:: _static/screenshots/markup_inline.png
- :align: center
-
-
-Example to save the embedded datepicker value to a hidden field
-
-.. code-block:: html
-
-
-
-
-::
-
- $('#datepicker').datepicker();
- $('#datepicker').on('changeDate', function() {
- $('#my_hidden_input').val(
- $('#datepicker').datepicker('getFormattedDate')
- );
- });
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/methods.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/methods.rst
deleted file mode 100755
index f4be72b6e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/methods.rst
+++ /dev/null
@@ -1,226 +0,0 @@
-Methods
-=======
-
-Methods are called on a datepicker by calling the ``datepicker`` function with a string first argument, followed by any arguments the method takes
-
-::
-
- $('.datepicker').datepicker('method', arg1, arg2);
-
-
-destroy
--------
-
-Arguments: None
-
-Remove the datepicker. Removes attached events, internal attached objects, and added HTML elements.
-
-*Alias: remove*
-
-
-show
-----
-
-Arguments: None
-
-Show the picker.
-
-
-hide
-----
-
-Arguments: None
-
-Hide the picker.
-
-
-update
-------
-
-Arguments:
-
-* date (String|Date|Array, optional)
-* date (String|Date, optional)
-* ...
-
-Update the datepicker with given arguments or the current input value.
-The arguments can be either an array of strings, an array of Date objects, multiples strings or multiples Date objects.
-If ``date`` arguments are provided and they are Date objects, it is assumed to be "local" Date objects, and will be converted to UTC for internal use.
-
-::
-
- $('.datepicker').datepicker('update');
- $('.datepicker').datepicker('update', '2011-03-05');
- $('.datepicker').datepicker('update', '2011-03-05', '2011-03-07');
- $('.datepicker').datepicker('update', new Date(2011, 2, 5));
- $('.datepicker').datepicker('update', [new Date(2011, 2, 5), new Date(2011, 2, 7)]);
-
-To reset the datepicker and clear the selected date, pass an empty string with ``update``:
-
-::
-
- $('.datepicker').datepicker('update', '');
-
-
-setDate
--------
-
-Arguments:
-
-* date (Date)
-
-Sets the internal date. ``date`` is assumed to be a "local" date object, and will be converted to UTC for internal use.
-
-
-setUTCDate
-----------
-
-Arguments:
-
-* date (Date)
-
-Sets the internal date. ``date`` is assumed to be a UTC date object, and will not be converted.
-
-
-setDates
---------
-
-Arguments:
-
-* date[, date[, ...]] (Date)
-
-or
-
-* [date[, date[, ...]]] (Array)
-
-Sets the internal date list; accepts multiple dates or a single array of dates as arguments. Each ``date`` is assumed to be a "local" date object, and will be converted to UTC for internal use. For use with multidate pickers.
-
-
-clearDates
-----------
-
-Arguments: None
-
-Clear dates.
-
-
-setUTCDates
------------
-
-Arguments:
-
-* date[, date[, ...]] (Date)
-
-or
-
-* [date[, date[, ...]]] (Array)
-
-Sets the internal date list. Each ``date`` is assumed to be a UTC date object, and will not be converted. For use with multidate pickers.
-
-
-getDate
--------
-
-Arguments: None
-
-Returns a localized date object representing the internal date object of the first datepicker in the selection. For multidate pickers, returns the latest date selected.
-
-
-getUTCDate
-----------
-
-Arguments: None
-
-Returns the internal UTC date object, as-is and unconverted to local time, of the first datepicker in the selection. For multidate pickers, returns the latest date selected.
-
-
-getDates
---------
-
-Arguments: None
-
-Returns a list of localized date objects representing the internal date objects of the first datepicker in the selection. For use with multidate pickers.
-
-
-getUTCDates
------------
-
-Arguments: None
-
-Returns the internal list of UTC date objects, as they are and unconverted to local time, of the first datepicker in the selection. For use with multidate pickers.
-
-
-getStartDate
-------------
-
-Arguments: None
-
-Returns the lower date limit on the datepicker.
-
-
-getEndDate
-----------
-
-Arguments: None
-
-Returns the upper date limit on the datepicker.
-
-
-setStartDate
-------------
-
-Arguments:
-
-* startDate (Date)
-
-Sets a new lower date limit on the datepicker. See :ref:`startDate` for valid values.
-
-Omit startDate (or provide an otherwise falsey value) to unset the limit.
-
-
-setEndDate
-----------
-
-Arguments:
-
-* endDate (Date)
-
-Sets a new upper date limit on the datepicker. See :ref:`endDate` for valid values.
-
-Omit endDate (or provide an otherwise falsey value) to unset the limit.
-
-
-setDatesDisabled
-----------------
-
-Arguments:
-
-* datesDisabled (String|Array)
-
-Sets the days that should be disabled. See :ref:`datesDisabled` for valid values.
-
-Omit datesDisabled (or provide an otherwise falsey value) to unset the disabled days.
-
-
-setDaysOfWeekDisabled
----------------------
-
-Arguments:
-
-* daysOfWeekDisabled (String|Array)
-
-Sets the days of week that should be disabled. See :ref:`daysOfWeekDisabled` for valid values.
-
-Omit daysOfWeekDisabled (or provide an otherwise falsey value) to unset the disabled days of week.
-
-
-setDaysOfWeekHighlighted
-------------------------
-
-Arguments:
-
-* daysOfWeekHighlighted (String|Array)
-
-Sets the days of week that should be highlighted. See :ref:`daysOfWeekHighlighted` for valid values.
-
-Omit daysOfWeekHighlighted (or provide an otherwise falsey value) to unset the highlighted days of week.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/options.rst b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/options.rst
deleted file mode 100755
index 949cf9fac..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/options.rst
+++ /dev/null
@@ -1,570 +0,0 @@
-Options
-=======
-
-All options that take a "Date" can handle a ``Date`` object; a String formatted according to the given ``format``; or a timedelta relative to today, eg "-1d", "+6m +1y", etc, where valid units are "d" (day), "w" (week), "m" (month), and "y" (year). Use "0" as today.
-There are also aliases for the relative timedelta's: "yesterday" equals "-1d", "today" is equal to "+0d" and "tomorrow" is equal to "+1d".
-
-Most options can be provided via data-attributes. An option can be converted to a data-attribute by taking its name, replacing each uppercase letter with its lowercase equivalent preceded by a dash, and prepending "data-date-" to the result. For example, ``startDate`` would be ``data-date-start-date``, ``format`` would be ``data-date-format``, and ``daysOfWeekDisabled`` would be ``data-date-days-of-week-disabled``.
-
-See the `quick reference`_ for an overview of all options and their default values
-
-autoclose
----------
-
-Boolean. Default: false
-
-Whether or not to close the datepicker immediately when a date is selected.
-
-
-assumeNearbyYear
-----------------
-
-Boolean or Integer. Default: false
-
-If true, manually-entered dates with two-digit years, such as "5/1/15", will be parsed as "2015", not "15". If the year is less than 10 years in advance, the picker will use the current century, otherwise, it will use the previous one. For example "5/1/15" would parse to May 1st, 2015, but "5/1/97" would be May 1st, 1997.
-
-To configure the number of years in advance that the picker will still use the current century, use an Integer instead of the Boolean true. E.g. "assumeNearbyYear: 20"
-
-
-beforeShowDay
--------------
-
-Function(Date). Default: $.noop
-
-A function that takes a date as a parameter and returns one of the following values:
-
- * undefined to have no effect
- * A Boolean, indicating whether or not this date is selectable
- * A String representing additional CSS classes to apply to the date's cell
- * An object with the following properties:
-
- * ``enabled``: same as the Boolean value above
- * ``classes``: same as the String value above
- * ``tooltip``: a tooltip to apply to this date, via the ``title`` HTML attribute
- * ``content``: the content to display in the day cell, rather than the default (day of month as text)
-
-
-beforeShowMonth
----------------
-
-Function(Date). Default: $.noop
-
-A function that takes a date as a parameter and returns one of the following values:
-
- * undefined to have no effect
- * A Boolean, indicating whether or not this month is selectable
- * A String representing additional CSS classes to apply to the month's cell
- * An object with the following properties:
-
- * ``enabled``: same as the Boolean value above
- * ``classes``: same as the String value above
- * ``tooltip``: a tooltip to apply to this date, via the ``title`` HTML attribute
-
-
-beforeShowYear
---------------
-
-Function(Date). Default: $.noop
-
-A function that takes a date as a parameter and returns one of the following values:
-
- * undefined to have no effect
- * A Boolean, indicating whether or not this year is selectable
- * A String representing additional CSS classes to apply to the year's cell
- * An object with the following properties:
-
- * ``enabled``: same as the Boolean value above
- * ``classes``: same as the String value above
- * ``tooltip``: a tooltip to apply to this year, via the ``title`` HTML attribute
-
-
-beforeShowDecade
-----------------
-
-Function(Date). Default: $.noop
-
-A function that takes a date as a parameter and returns one of the following values:
-
- * undefined to have no effect
- * A Boolean, indicating whether or not this year is selectable
- * A String representing additional CSS classes to apply to the year's cell
- * An object with the following properties:
-
- * ``enabled``: same as the Boolean value above
- * ``classes``: same as the String value above
- * ``tooltip``: a tooltip to apply to this year, via the ``title`` HTML attribute
-
-
-beforeShowCentury
------------------
-
-Function(Date). Default: $.noop
-
-A function that takes a date as a parameter and returns one of the following values:
-
- * undefined to have no effect
- * A Boolean, indicating whether or not this year is selectable
- * A String representing additional CSS classes to apply to the year's cell
- * An object with the following properties:
-
- * ``enabled``: same as the Boolean value above
- * ``classes``: same as the String value above
- * ``tooltip``: a tooltip to apply to this year, via the ``title`` HTML attribute
-
-
-calendarWeeks
--------------
-
-Boolean. Default: false
-
-Whether or not to show week numbers to the left of week rows.
-
-.. figure:: _static/screenshots/option_calendarweeks.png
- :align: center
-
-
-clearBtn
---------
-
-Boolean. Default: false
-
-If true, displays a "Clear" button at the bottom of the datepicker to clear the input value. If "autoclose" is also set to true, this button will also close the datepicker.
-
-.. figure:: _static/screenshots/option_clearbtn.png
- :align: center
-
-
-container
----------
-
-String. Default: "body"
-
-Appends the date picker popup to a specific element; eg: container: '#picker-container' (will default to "body")
-
-.. _datesDisabled:
-
-
-datesDisabled
--------------
-
-String, Array. Default: []
-
-Array of date strings or a single date string formatted in the given date format
-
-.. _daysOfWeekDisabled:
-
-
-daysOfWeekDisabled
-------------------
-
-String, Array. Default: []
-
-Days of the week that should be disabled. Values are 0 (Sunday) to 6 (Saturday). Multiple values should be comma-separated. Example: disable weekends: ``'06'`` or ``'0,6'`` or ``[0,6]``.
-
-.. figure:: _static/screenshots/option_daysofweekdisabled.png
- :align: center
-
-.. _daysOfWeekHighlighted:
-
-
-daysOfWeekHighlighted
----------------------
-
-String, Array. Default: []
-
-Days of the week that should be highlighted. Values are 0 (Sunday) to 6 (Saturday). Multiple values should be comma-separated. Example: highlight weekends: ``'06'`` or ``'0,6'`` or ``[0,6]``.
-
-
-defaultViewDate
----------------
-
-Date, String or Object with keys ``year``, ``month``, and ``day``. Default: today
-
-Date to view when initially opening the calendar. The internal value of the date remains today as default, but when the datepicker is first opened the calendar will open to ``defaultViewDate`` rather than today. If this option is not used, "today" remains the default view date.
-
-This option can be:
- * A date, which should be in local timezone.
- * A string which must be parsable with ``format``.
- * An object with keys ``year``, ``month`` and ``day`` (can't be set from a data attribute). If the given object is missing any of the required keys, their defaults are:
-
- * ``year``: the current year
- * ``month``: 0 (Note that it starts with 0 for January)
- * ``day``: 1
-
-disableTouchKeyboard
---------------------
-
-Boolean. Default: false
-
-If true, no keyboard will show on mobile devices
-
-
-enableOnReadonly
-----------------
-
-Boolean. Default: true
-
-If false the datepicker will not show on a readonly datepicker field.
-
-.. _endDate:
-
-
-endDate
--------
-
-Date or String. Default: End of time
-
-The latest date that may be selected; all later dates will be disabled.
-
-Date should be in local timezone. String must be parsable with ``format``.
-
-.. figure:: _static/screenshots/option_enddate.png
- :align: center
-
-.. code-block:: html
-
-
-
-Will disable all dates after today.
-
-
-forceParse
-----------
-
-Boolean. Default: true
-
-Whether or not to force parsing of the input value when the picker is closed. That is, when an invalid date is left in the input field by the user, the picker will forcibly parse that value, and set the input's value to the new, valid date, conforming to the given `format`.
-
-
-format
-------
-
-String. Default: "mm/dd/yyyy"
-
-The date format, combination of d, dd, D, DD, m, mm, M, MM, yy, yyyy.
-
-* d, dd: Numeric date, no leading zero and leading zero, respectively. Eg, 5, 05.
-* D, DD: Abbreviated and full weekday names, respectively. Eg, Mon, Monday.
-* m, mm: Numeric month, no leading zero and leading zero, respectively. Eg, 7, 07.
-* M, MM: Abbreviated and full month names, respectively. Eg, Jan, January
-* yy, yyyy: 2- and 4-digit years, respectively. Eg, 12, 2012.
-
-Object.
-
-Custom formatting options
-
-* toDisplay: function (date, format, language) to convert date object to string, that will be stored in input field
-* toValue: function (date, format, language) to convert string object to date, that will be used in date selection
-
-::
-
- $('.datepicker').datepicker({
- format: {
- /*
- * Say our UI should display a week ahead,
- * but textbox should store the actual date.
- * This is useful if we need UI to select local dates,
- * but store in UTC
- */
- toDisplay: function (date, format, language) {
- var d = new Date(date);
- d.setDate(d.getDate() - 7);
- return d.toISOString();
- },
- toValue: function (date, format, language) {
- var d = new Date(date);
- d.setDate(d.getDate() + 7);
- return new Date(d);
- }
- }
- });
-
-
-immediateUpdates
-----------------
-
-Boolean. Default: false
-
-If true, selecting a year or month in the datepicker will update the input value immediately. Otherwise, only selecting a day of the month will update the input value immediately.
-
-
-inputs
-------
-
-Array, jQuery. Default: None
-
-A list of inputs to be used in a range picker, which will be attached to the selected element. Allows for explicitly creating a range picker on a non-standard element.
-
-.. code-block:: html
-
-
-
-
-
-
-::
-
- $('#event_period').datepicker({
- inputs: $('.actual_range')
- });
-
-
-keepEmptyValues
----------------
-
-Boolean. Default: false
-
-Only effective in a range picker. If true, the selected value does not get propagated to other, currently empty, pickers in the range.
-
-
-keyboardNavigation
-------------------
-
-Boolean. Default: true
-
-Whether or not to allow date navigation by arrow keys.
-
-Keyboard navigation is not supported at all for embedded / inline mode. Also it's not working if input element hasn't focus. This could be an issue if used as component or if opened by `show` method.
-
-
-language
---------
-
-String. Default: "en"
-
-The IETF code (eg "en" for English, "pt-BR" for Brazilian Portuguese) of the language to use for month and day names. These will also be used as the input's value (and subsequently sent to the server in the case of form submissions). If a full code (eg "de-DE") is supplied the picker will first check for an "de-DE" language and if not found will fallback and check for a "de" language. If an unknown language code is given, English will be used. See :doc:`i18n`.
-
-.. figure:: _static/screenshots/option_language.png
- :align: center
-
-
-maxViewMode
------------
-
-Number, String. Default: 4, "centuries"
-
-Set a maximum limit for the view mode. Accepts: 0 or "days" or "month", 1 or "months" or "year", 2 or "years" or "decade", 3 or "decades" or "century", and 4 or "centuries" or "millenium".
-Gives the ability to pick only a day, a month, a year or a decade. The day is set to the 1st for "months", the month is set to January for "years", the year is set to the first year from the decade for "decades", and the year is set to the first from the millennium for "centuries".
-
-
-minViewMode
------------
-
-Number, String. Default: 0, "days"
-
-Set a minimum limit for the view mode. Accepts: 0 or "days" or "month", 1 or "months" or "year", 2 or "years" or "decade", 3 or "decades" or "century", and 4 or "centuries" or "millenium".
-Gives the ability to pick only a month, a year or a decade. The day is set to the 1st for "months", and the month is set to January for "years", the year is set to the first year from the decade for "decades", and the year is set to the first from the millennium for "centuries".
-
-
-multidate
----------
-
-Boolean, Number. Default: false
-
-Enable multidate picking. Each date in month view acts as a toggle button, keeping track of which dates the user has selected in order. If a number is given, the picker will limit how many dates can be selected to that number, dropping the oldest dates from the list when the number is exceeded. ``true`` equates to no limit. The input's value (if present) is set to a string generated by joining the dates, formatted, with ``multidateSeparator``.
-
-For selecting 2 dates as a range please see :ref:`daterange`
-
-.. figure:: _static/screenshots/option_multidate.png
- :align: center
-
-
-multidateSeparator
-------------------
-
-String. Default: ","
-
-The string that will appear between dates when generating the input's value. When parsing the input's value for a multidate picker, this will also be used to split the incoming string to separate multiple formatted dates; as such, it is highly recommended that you not use a string that could be a substring of a formatted date (eg, using '-' to separate dates when your format is 'yyyy-mm-dd').
-
-
-orientation
------------
-
-String. Default: "auto"
-
-A space-separated string consisting of one or two of "left" or "right", "top" or "bottom", and "auto" (may be omitted); for example, "top left", "bottom" (horizontal orientation will default to "auto"), "right" (vertical orientation will default to "auto"), "auto top". Allows for fixed placement of the picker popup.
-
-"orientation" refers to the location of the picker popup's "anchor"; you can also think of it as the location of the trigger element (input, component, etc) relative to the picker.
-
-"auto" triggers "smart orientation" of the picker. Horizontal orientation will default to "left" and left offset will be tweaked to keep the picker inside the browser viewport; vertical orientation will simply choose "top" or "bottom", whichever will show more of the picker in the viewport.
-
-
-showOnFocus
------------
-
-Boolean. Default: true
-
-If false, the datepicker will be prevented from showing when the input field associated with it receives focus.
-
-.. _startdate:
-
-startDate
----------
-
-Date or String. Default: Beginning of time
-
-The earliest date that may be selected; all earlier dates will be disabled.
-
-Date should be in local timezone. String must be parsable with ``format``.
-
-.. figure:: _static/screenshots/option_startdate.png
- :align: center
-
-
-startView
----------
-
-Number, String. Default: 0, "days"
-
-The view that the datepicker should show when it is opened. Accepts: 0 or "days" or "month", 1 or "months" or "year", 2 or "years" or "decade", 3 or "decades" or "century", and 4 or "centuries" or "millenium". Useful for date-of-birth datepickers.
-
-
-templates
----------
-
-Object. Default:
-
-::
-
- {
- leftArrow: '«',
- rightArrow: '»'
- }
-
-The templates used to generate some parts of the picker. Each property must be a string with only text, or valid html.
-You can use this property to use custom icons libs. for example:
-
-::
-
- {
- leftArrow: ' ',
- rightArrow: ' '
- }
-
-
-showWeekDays
-------------
-
-Boolean. Default: true
-
-If false, the datepicker will not append the names of the weekdays to its view. Default behavior is appending the weekdays.
-
-.. figure:: _static/screenshots/option_showweekdays.png
- :align: center
-
-
-title
------
-
-String. Default: ""
-
-The string that will appear on top of the datepicker. If empty the title will be hidden.
-
-
-todayBtn
---------
-
-Boolean, "linked". Default: false
-
-If true or "linked", displays a "Today" button at the bottom of the datepicker to select the current date. If true, the "Today" button will only move the current date into view; if "linked", the current date will also be selected.
-
-.. figure:: _static/screenshots/option_todaybtn.png
- :align: center
-
-
-todayHighlight
---------------
-
-Boolean. Default: false
-
-If true, highlights the current date.
-
-.. figure:: _static/screenshots/option_todayhighlight.png
- :align: center
-
-
-toggleActive
-------------
-
-Boolean. Default: false
-
-If true, selecting the currently active date in the datepicker will unset the respective date. This option is always true when the multidate option is being used.
-
-
-updateViewDate
---------------
-
-Boolean. Default: true
-
-If false viewDate is set according to `value` on initialization and updated
-* if a day in last oder next month is selected or
-* if dates are changed by `setDate`, `setDates`, `setUTCDate` and `setUTCDates` methods.
-If `multidate` option is `true` the last selected date or the last date in array
-passed to `setDates` or `setUTCDates` is used.
-
-weekStart
----------
-
-Integer. Default: 0
-
-Day of the week start. 0 (Sunday) to 6 (Saturday)
-
-.. figure:: _static/screenshots/option_weekstart.png
- :align: center
-
-
-zIndexOffset
-------------
-
-Integer. Default: 10
-
-The CSS z-index of the open datepicker is the maximum z-index of the input and all of its DOM ancestors *plus* the ``zIndexOffset``.
-
-Quick reference
-===============
-
-This is a quick overview of all the options and their default values
-
-===================== =============
-Option Default value
-===================== =============
-autoclose false
-assumeNearbyYear false
-beforeShowDay
-beforeShowMonth
-beforeShowYear
-beforeShowDecade
-beforeShowCentury
-calendarWeeks false
-clearBtn false
-container 'body'
-datesDisabled []
-daysOfWeekDisabled []
-daysOfWeekHighlighted []
-defaultViewDate today
-disableTouchKeyboard false
-enableOnReadonly true
-endDate Infinity
-forceParse true
-format 'mm/dd/yyyy'
-immediateUpdates false
-inputs
-keepEmptyValues false
-keyboardNavigation true
-language 'en'
-maxViewMode 4 'centuries'
-minViewMode 0 'days'
-multidate false
-multidateSeparator ','
-orientation 'auto'
-showOnFocus true
-startDate -Infinity
-startView 0 'days' (current month)
-templates
-title ''
-todayBtn false
-todayHighlight true
-toggleActive false
-weekStart 0 (Sunday)
-zIndexOffset 10
-===================== =============
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/requirements.txt b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/requirements.txt
deleted file mode 100755
index 483a4e960..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/docs/requirements.txt
+++ /dev/null
@@ -1 +0,0 @@
-sphinx_rtd_theme
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/grunt/.jshintrc b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/grunt/.jshintrc
deleted file mode 100755
index 0ea0495e9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/grunt/.jshintrc
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "extends" : "../js/.jshintrc",
- "asi" : false,
- "browser" : false,
- "es3" : false,
- "node" : true
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jscsrc b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jscsrc
deleted file mode 100755
index 638b14e2c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jscsrc
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "requireSpaceAfterKeywords": [
- "if", "else", "for", "while", "do", "switch", "return"
- ],
- "disallowSpacesInFunctionExpression": {
- "beforeOpeningRoundBrace": true,
- "beforeOpeningCurlyBrace": true
- },
- "disallowSpacesInsideObjectBrackets": true,
- "disallowSpacesInsideArrayBrackets": true,
- "disallowSpacesInsideParentheses": true,
- "disallowQuotedKeysInObjects": "allButReserved",
- "disallowSpaceAfterObjectKeys": true,
- "requireSpaceAfterBinaryOperators": ["==", "===", "!=", "!==", ">", "<", ">=", "<="],
- "requireSpaceBeforeBinaryOperators": ["==", "===", "!=", "!==", ">", "<", ">=", "<="],
- "disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
- "disallowSpaceBeforeBinaryOperators": [","],
- "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
- "validateLineBreaks": "LF",
- "requireKeywordsOnNewLine": ["return", "break", "delete"],
- "requireLineFeedAtFileEnd": true
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jshintrc b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jshintrc
deleted file mode 100755
index 3b766585c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/.jshintrc
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- // Extra globals.
- "predef" : [
- "require",
- "define"
- ],
- "jquery": true,
- "browser": true,
-
- "eqeqeq": true,
- "freeze": true,
- //"indent": 4, // when we move to spaces
- "latedef": false,
- "undef": true,
- "unused": false,
- "immed": true,
- "trailing": true,
- "maxcomplexity": 50, // Can we get this under 5?
- //"maxlen": 120,
-
- "-W014": false, // Bad line breaking before ? (in tertiary operator)
- "-W065": false, // Missing radix parameter to parseInt (defaults to 10)
- "-W069": false, // Literal accessor is better written in dot notation
- "-W100": false // Silently deleted characters (in locales)
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/bootstrap-datepicker.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/bootstrap-datepicker.js
deleted file mode 100755
index 0e825d244..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/bootstrap-datepicker.js
+++ /dev/null
@@ -1,2052 +0,0 @@
-/* =========================================================
- * bootstrap-datepicker.js
- * Repo: https://github.com/uxsolutions/bootstrap-datepicker/
- * Demo: https://eternicode.github.io/bootstrap-datepicker/
- * Docs: https://bootstrap-datepicker.readthedocs.org/
- * =========================================================
- * 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.
- * ========================================================= */
-
-(function(factory){
- if (typeof define === 'function' && define.amd) {
- define(['jquery'], factory);
- } else if (typeof exports === 'object') {
- factory(require('jquery'));
- } else {
- factory(jQuery);
- }
-}(function($, undefined){
- function UTCDate(){
- return new Date(Date.UTC.apply(Date, arguments));
- }
- function UTCToday(){
- var today = new Date();
- return UTCDate(today.getFullYear(), today.getMonth(), today.getDate());
- }
- function isUTCEquals(date1, date2) {
- return (
- date1.getUTCFullYear() === date2.getUTCFullYear() &&
- date1.getUTCMonth() === date2.getUTCMonth() &&
- date1.getUTCDate() === date2.getUTCDate()
- );
- }
- function alias(method, deprecationMsg){
- return function(){
- if (deprecationMsg !== undefined) {
- $.fn.datepicker.deprecated(deprecationMsg);
- }
-
- return this[method].apply(this, arguments);
- };
- }
- function isValidDate(d) {
- return d && !isNaN(d.getTime());
- }
-
- var DateArray = (function(){
- var extras = {
- get: function(i){
- return this.slice(i)[0];
- },
- contains: function(d){
- // Array.indexOf is not cross-browser;
- // $.inArray doesn't work with Dates
- var val = d && d.valueOf();
- for (var i=0, l=this.length; i < l; i++)
- // Use date arithmetic to allow dates with different times to match
- if (0 <= this[i].valueOf() - val && this[i].valueOf() - val < 1000*60*60*24)
- return i;
- return -1;
- },
- remove: function(i){
- this.splice(i,1);
- },
- replace: function(new_array){
- if (!new_array)
- return;
- if (!$.isArray(new_array))
- new_array = [new_array];
- this.clear();
- this.push.apply(this, new_array);
- },
- clear: function(){
- this.length = 0;
- },
- copy: function(){
- var a = new DateArray();
- a.replace(this);
- return a;
- }
- };
-
- return function(){
- var a = [];
- a.push.apply(a, arguments);
- $.extend(a, extras);
- return a;
- };
- })();
-
-
- // Picker object
-
- var Datepicker = function(element, options){
- $.data(element, 'datepicker', this);
-
- this._events = [];
- this._secondaryEvents = [];
-
- this._process_options(options);
-
- this.dates = new DateArray();
- this.viewDate = this.o.defaultViewDate;
- this.focusDate = null;
-
- this.element = $(element);
- this.isInput = this.element.is('input');
- this.inputField = this.isInput ? this.element : this.element.find('input');
- this.component = this.element.hasClass('date') ? this.element.find('.add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn') : false;
- if (this.component && this.component.length === 0)
- this.component = false;
- this.isInline = !this.component && this.element.is('div');
-
- this.picker = $(DPGlobal.template);
-
- // Checking templates and inserting
- if (this._check_template(this.o.templates.leftArrow)) {
- this.picker.find('.prev').html(this.o.templates.leftArrow);
- }
-
- if (this._check_template(this.o.templates.rightArrow)) {
- this.picker.find('.next').html(this.o.templates.rightArrow);
- }
-
- this._buildEvents();
- this._attachEvents();
-
- if (this.isInline){
- this.picker.addClass('datepicker-inline').appendTo(this.element);
- }
- else {
- this.picker.addClass('datepicker-dropdown dropdown-menu');
- }
-
- if (this.o.rtl){
- this.picker.addClass('datepicker-rtl');
- }
-
- if (this.o.calendarWeeks) {
- this.picker.find('.datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear')
- .attr('colspan', function(i, val){
- return Number(val) + 1;
- });
- }
-
- this._process_options({
- startDate: this._o.startDate,
- endDate: this._o.endDate,
- daysOfWeekDisabled: this.o.daysOfWeekDisabled,
- daysOfWeekHighlighted: this.o.daysOfWeekHighlighted,
- datesDisabled: this.o.datesDisabled
- });
-
- this._allow_update = false;
- this.setViewMode(this.o.startView);
- this._allow_update = true;
-
- this.fillDow();
- this.fillMonths();
-
- this.update();
-
- if (this.isInline){
- this.show();
- }
- };
-
- Datepicker.prototype = {
- constructor: Datepicker,
-
- _resolveViewName: function(view){
- $.each(DPGlobal.viewModes, function(i, viewMode){
- if (view === i || $.inArray(view, viewMode.names) !== -1){
- view = i;
- return false;
- }
- });
-
- return view;
- },
-
- _resolveDaysOfWeek: function(daysOfWeek){
- if (!$.isArray(daysOfWeek))
- daysOfWeek = daysOfWeek.split(/[,\s]*/);
- return $.map(daysOfWeek, Number);
- },
-
- _check_template: function(tmp){
- try {
- // If empty
- if (tmp === undefined || tmp === "") {
- return false;
- }
- // If no html, everything ok
- if ((tmp.match(/[<>]/g) || []).length <= 0) {
- return true;
- }
- // Checking if html is fine
- var jDom = $(tmp);
- return jDom.length > 0;
- }
- catch (ex) {
- return false;
- }
- },
-
- _process_options: function(opts){
- // Store raw options for reference
- this._o = $.extend({}, this._o, opts);
- // Processed options
- var o = this.o = $.extend({}, this._o);
-
- // Check if "de-DE" style date is available, if not language should
- // fallback to 2 letter code eg "de"
- var lang = o.language;
- if (!dates[lang]){
- lang = lang.split('-')[0];
- if (!dates[lang])
- lang = defaults.language;
- }
- o.language = lang;
-
- // Retrieve view index from any aliases
- o.startView = this._resolveViewName(o.startView);
- o.minViewMode = this._resolveViewName(o.minViewMode);
- o.maxViewMode = this._resolveViewName(o.maxViewMode);
-
- // Check view is between min and max
- o.startView = Math.max(this.o.minViewMode, Math.min(this.o.maxViewMode, o.startView));
-
- // true, false, or Number > 0
- if (o.multidate !== true){
- o.multidate = Number(o.multidate) || false;
- if (o.multidate !== false)
- o.multidate = Math.max(0, o.multidate);
- }
- o.multidateSeparator = String(o.multidateSeparator);
-
- o.weekStart %= 7;
- o.weekEnd = (o.weekStart + 6) % 7;
-
- var format = DPGlobal.parseFormat(o.format);
- if (o.startDate !== -Infinity){
- if (!!o.startDate){
- if (o.startDate instanceof Date)
- o.startDate = this._local_to_utc(this._zero_time(o.startDate));
- else
- o.startDate = DPGlobal.parseDate(o.startDate, format, o.language, o.assumeNearbyYear);
- }
- else {
- o.startDate = -Infinity;
- }
- }
- if (o.endDate !== Infinity){
- if (!!o.endDate){
- if (o.endDate instanceof Date)
- o.endDate = this._local_to_utc(this._zero_time(o.endDate));
- else
- o.endDate = DPGlobal.parseDate(o.endDate, format, o.language, o.assumeNearbyYear);
- }
- else {
- o.endDate = Infinity;
- }
- }
-
- o.daysOfWeekDisabled = this._resolveDaysOfWeek(o.daysOfWeekDisabled||[]);
- o.daysOfWeekHighlighted = this._resolveDaysOfWeek(o.daysOfWeekHighlighted||[]);
-
- o.datesDisabled = o.datesDisabled||[];
- if (!$.isArray(o.datesDisabled)) {
- o.datesDisabled = o.datesDisabled.split(',');
- }
- o.datesDisabled = $.map(o.datesDisabled, function(d){
- return DPGlobal.parseDate(d, format, o.language, o.assumeNearbyYear);
- });
-
- var plc = String(o.orientation).toLowerCase().split(/\s+/g),
- _plc = o.orientation.toLowerCase();
- plc = $.grep(plc, function(word){
- return /^auto|left|right|top|bottom$/.test(word);
- });
- o.orientation = {x: 'auto', y: 'auto'};
- if (!_plc || _plc === 'auto')
- ; // no action
- else if (plc.length === 1){
- switch (plc[0]){
- case 'top':
- case 'bottom':
- o.orientation.y = plc[0];
- break;
- case 'left':
- case 'right':
- o.orientation.x = plc[0];
- break;
- }
- }
- else {
- _plc = $.grep(plc, function(word){
- return /^left|right$/.test(word);
- });
- o.orientation.x = _plc[0] || 'auto';
-
- _plc = $.grep(plc, function(word){
- return /^top|bottom$/.test(word);
- });
- o.orientation.y = _plc[0] || 'auto';
- }
- if (o.defaultViewDate instanceof Date || typeof o.defaultViewDate === 'string') {
- o.defaultViewDate = DPGlobal.parseDate(o.defaultViewDate, format, o.language, o.assumeNearbyYear);
- } else if (o.defaultViewDate) {
- var year = o.defaultViewDate.year || new Date().getFullYear();
- var month = o.defaultViewDate.month || 0;
- var day = o.defaultViewDate.day || 1;
- o.defaultViewDate = UTCDate(year, month, day);
- } else {
- o.defaultViewDate = UTCToday();
- }
- },
- _applyEvents: function(evs){
- for (var i=0, el, ch, ev; i < evs.length; i++){
- el = evs[i][0];
- if (evs[i].length === 2){
- ch = undefined;
- ev = evs[i][1];
- } else if (evs[i].length === 3){
- ch = evs[i][1];
- ev = evs[i][2];
- }
- el.on(ev, ch);
- }
- },
- _unapplyEvents: function(evs){
- for (var i=0, el, ev, ch; i < evs.length; i++){
- el = evs[i][0];
- if (evs[i].length === 2){
- ch = undefined;
- ev = evs[i][1];
- } else if (evs[i].length === 3){
- ch = evs[i][1];
- ev = evs[i][2];
- }
- el.off(ev, ch);
- }
- },
- _buildEvents: function(){
- var events = {
- keyup: $.proxy(function(e){
- if ($.inArray(e.keyCode, [27, 37, 39, 38, 40, 32, 13, 9]) === -1)
- this.update();
- }, this),
- keydown: $.proxy(this.keydown, this),
- paste: $.proxy(this.paste, this)
- };
-
- if (this.o.showOnFocus === true) {
- events.focus = $.proxy(this.show, this);
- }
-
- if (this.isInput) { // single input
- this._events = [
- [this.element, events]
- ];
- }
- // component: input + button
- else if (this.component && this.inputField.length) {
- this._events = [
- // For components that are not readonly, allow keyboard nav
- [this.inputField, events],
- [this.component, {
- click: $.proxy(this.show, this)
- }]
- ];
- }
- else {
- this._events = [
- [this.element, {
- click: $.proxy(this.show, this),
- keydown: $.proxy(this.keydown, this)
- }]
- ];
- }
- this._events.push(
- // Component: listen for blur on element descendants
- [this.element, '*', {
- blur: $.proxy(function(e){
- this._focused_from = e.target;
- }, this)
- }],
- // Input: listen for blur on element
- [this.element, {
- blur: $.proxy(function(e){
- this._focused_from = e.target;
- }, this)
- }]
- );
-
- if (this.o.immediateUpdates) {
- // Trigger input updates immediately on changed year/month
- this._events.push([this.element, {
- 'changeYear changeMonth': $.proxy(function(e){
- this.update(e.date);
- }, this)
- }]);
- }
-
- this._secondaryEvents = [
- [this.picker, {
- click: $.proxy(this.click, this)
- }],
- [this.picker, '.prev, .next', {
- click: $.proxy(this.navArrowsClick, this)
- }],
- [this.picker, '.day:not(.disabled)', {
- click: $.proxy(this.dayCellClick, this)
- }],
- [$(window), {
- resize: $.proxy(this.place, this)
- }],
- [$(document), {
- 'mousedown touchstart': $.proxy(function(e){
- // Clicked outside the datepicker, hide it
- if (!(
- this.element.is(e.target) ||
- this.element.find(e.target).length ||
- this.picker.is(e.target) ||
- this.picker.find(e.target).length ||
- this.isInline
- )){
- this.hide();
- }
- }, this)
- }]
- ];
- },
- _attachEvents: function(){
- this._detachEvents();
- this._applyEvents(this._events);
- },
- _detachEvents: function(){
- this._unapplyEvents(this._events);
- },
- _attachSecondaryEvents: function(){
- this._detachSecondaryEvents();
- this._applyEvents(this._secondaryEvents);
- },
- _detachSecondaryEvents: function(){
- this._unapplyEvents(this._secondaryEvents);
- },
- _trigger: function(event, altdate){
- var date = altdate || this.dates.get(-1),
- local_date = this._utc_to_local(date);
-
- this.element.trigger({
- type: event,
- date: local_date,
- viewMode: this.viewMode,
- dates: $.map(this.dates, this._utc_to_local),
- format: $.proxy(function(ix, format){
- if (arguments.length === 0){
- ix = this.dates.length - 1;
- format = this.o.format;
- } else if (typeof ix === 'string'){
- format = ix;
- ix = this.dates.length - 1;
- }
- format = format || this.o.format;
- var date = this.dates.get(ix);
- return DPGlobal.formatDate(date, format, this.o.language);
- }, this)
- });
- },
-
- show: function(){
- if (this.inputField.is(':disabled') || (this.inputField.prop('readonly') && this.o.enableOnReadonly === false))
- return;
- if (!this.isInline)
- this.picker.appendTo(this.o.container);
- this.place();
- this.picker.show();
- this._attachSecondaryEvents();
- this._trigger('show');
- if ((window.navigator.msMaxTouchPoints || 'ontouchstart' in document) && this.o.disableTouchKeyboard) {
- $(this.element).blur();
- }
- return this;
- },
-
- hide: function(){
- if (this.isInline || !this.picker.is(':visible'))
- return this;
- this.focusDate = null;
- this.picker.hide().detach();
- this._detachSecondaryEvents();
- this.setViewMode(this.o.startView);
-
- if (this.o.forceParse && this.inputField.val())
- this.setValue();
- this._trigger('hide');
- return this;
- },
-
- destroy: function(){
- this.hide();
- this._detachEvents();
- this._detachSecondaryEvents();
- this.picker.remove();
- delete this.element.data().datepicker;
- if (!this.isInput){
- delete this.element.data().date;
- }
- return this;
- },
-
- paste: function(e){
- var dateString;
- if (e.originalEvent.clipboardData && e.originalEvent.clipboardData.types
- && $.inArray('text/plain', e.originalEvent.clipboardData.types) !== -1) {
- dateString = e.originalEvent.clipboardData.getData('text/plain');
- } else if (window.clipboardData) {
- dateString = window.clipboardData.getData('Text');
- } else {
- return;
- }
- this.setDate(dateString);
- this.update();
- e.preventDefault();
- },
-
- _utc_to_local: function(utc){
- if (!utc) {
- return utc;
- }
-
- var local = new Date(utc.getTime() + (utc.getTimezoneOffset() * 60000));
-
- if (local.getTimezoneOffset() !== utc.getTimezoneOffset()) {
- local = new Date(utc.getTime() + (local.getTimezoneOffset() * 60000));
- }
-
- return local;
- },
- _local_to_utc: function(local){
- return local && new Date(local.getTime() - (local.getTimezoneOffset()*60000));
- },
- _zero_time: function(local){
- return local && new Date(local.getFullYear(), local.getMonth(), local.getDate());
- },
- _zero_utc_time: function(utc){
- return utc && UTCDate(utc.getUTCFullYear(), utc.getUTCMonth(), utc.getUTCDate());
- },
-
- getDates: function(){
- return $.map(this.dates, this._utc_to_local);
- },
-
- getUTCDates: function(){
- return $.map(this.dates, function(d){
- return new Date(d);
- });
- },
-
- getDate: function(){
- return this._utc_to_local(this.getUTCDate());
- },
-
- getUTCDate: function(){
- var selected_date = this.dates.get(-1);
- if (selected_date !== undefined) {
- return new Date(selected_date);
- } else {
- return null;
- }
- },
-
- clearDates: function(){
- this.inputField.val('');
- this.update();
- this._trigger('changeDate');
-
- if (this.o.autoclose) {
- this.hide();
- }
- },
-
- setDates: function(){
- var args = $.isArray(arguments[0]) ? arguments[0] : arguments;
- this.update.apply(this, args);
- this._trigger('changeDate');
- this.setValue();
- return this;
- },
-
- setUTCDates: function(){
- var args = $.isArray(arguments[0]) ? arguments[0] : arguments;
- this.setDates.apply(this, $.map(args, this._utc_to_local));
- return this;
- },
-
- setDate: alias('setDates'),
- setUTCDate: alias('setUTCDates'),
- remove: alias('destroy', 'Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead'),
-
- setValue: function(){
- var formatted = this.getFormattedDate();
- this.inputField.val(formatted);
- return this;
- },
-
- getFormattedDate: function(format){
- if (format === undefined)
- format = this.o.format;
-
- var lang = this.o.language;
- return $.map(this.dates, function(d){
- return DPGlobal.formatDate(d, format, lang);
- }).join(this.o.multidateSeparator);
- },
-
- getStartDate: function(){
- return this.o.startDate;
- },
-
- setStartDate: function(startDate){
- this._process_options({startDate: startDate});
- this.update();
- this.updateNavArrows();
- return this;
- },
-
- getEndDate: function(){
- return this.o.endDate;
- },
-
- setEndDate: function(endDate){
- this._process_options({endDate: endDate});
- this.update();
- this.updateNavArrows();
- return this;
- },
-
- setDaysOfWeekDisabled: function(daysOfWeekDisabled){
- this._process_options({daysOfWeekDisabled: daysOfWeekDisabled});
- this.update();
- return this;
- },
-
- setDaysOfWeekHighlighted: function(daysOfWeekHighlighted){
- this._process_options({daysOfWeekHighlighted: daysOfWeekHighlighted});
- this.update();
- return this;
- },
-
- setDatesDisabled: function(datesDisabled){
- this._process_options({datesDisabled: datesDisabled});
- this.update();
- return this;
- },
-
- place: function(){
- if (this.isInline)
- return this;
- var calendarWidth = this.picker.outerWidth(),
- calendarHeight = this.picker.outerHeight(),
- visualPadding = 10,
- container = $(this.o.container),
- windowWidth = container.width(),
- scrollTop = this.o.container === 'body' ? $(document).scrollTop() : container.scrollTop(),
- appendOffset = container.offset();
-
- var parentsZindex = [0];
- this.element.parents().each(function(){
- var itemZIndex = $(this).css('z-index');
- if (itemZIndex !== 'auto' && Number(itemZIndex) !== 0) parentsZindex.push(Number(itemZIndex));
- });
- var zIndex = Math.max.apply(Math, parentsZindex) + this.o.zIndexOffset;
- var offset = this.component ? this.component.parent().offset() : this.element.offset();
- var height = this.component ? this.component.outerHeight(true) : this.element.outerHeight(false);
- var width = this.component ? this.component.outerWidth(true) : this.element.outerWidth(false);
- var left = offset.left - appendOffset.left;
- var top = offset.top - appendOffset.top;
-
- if (this.o.container !== 'body') {
- top += scrollTop;
- }
-
- this.picker.removeClass(
- 'datepicker-orient-top datepicker-orient-bottom '+
- 'datepicker-orient-right datepicker-orient-left'
- );
-
- if (this.o.orientation.x !== 'auto'){
- this.picker.addClass('datepicker-orient-' + this.o.orientation.x);
- if (this.o.orientation.x === 'right')
- left -= calendarWidth - width;
- }
- // auto x orientation is best-placement: if it crosses a window
- // edge, fudge it sideways
- else {
- if (offset.left < 0) {
- // component is outside the window on the left side. Move it into visible range
- this.picker.addClass('datepicker-orient-left');
- left -= offset.left - visualPadding;
- } else if (left + calendarWidth > windowWidth) {
- // the calendar passes the widow right edge. Align it to component right side
- this.picker.addClass('datepicker-orient-right');
- left += width - calendarWidth;
- } else {
- if (this.o.rtl) {
- // Default to right
- this.picker.addClass('datepicker-orient-right');
- } else {
- // Default to left
- this.picker.addClass('datepicker-orient-left');
- }
- }
- }
-
- // auto y orientation is best-situation: top or bottom, no fudging,
- // decision based on which shows more of the calendar
- var yorient = this.o.orientation.y,
- top_overflow;
- if (yorient === 'auto'){
- top_overflow = -scrollTop + top - calendarHeight;
- yorient = top_overflow < 0 ? 'bottom' : 'top';
- }
-
- this.picker.addClass('datepicker-orient-' + yorient);
- if (yorient === 'top')
- top -= calendarHeight + parseInt(this.picker.css('padding-top'));
- else
- top += height;
-
- if (this.o.rtl) {
- var right = windowWidth - (left + width);
- this.picker.css({
- top: top,
- right: right,
- zIndex: zIndex
- });
- } else {
- this.picker.css({
- top: top,
- left: left,
- zIndex: zIndex
- });
- }
- return this;
- },
-
- _allow_update: true,
- update: function(){
- if (!this._allow_update)
- return this;
-
- var oldDates = this.dates.copy(),
- dates = [],
- fromArgs = false;
- if (arguments.length){
- $.each(arguments, $.proxy(function(i, date){
- if (date instanceof Date)
- date = this._local_to_utc(date);
- dates.push(date);
- }, this));
- fromArgs = true;
- } else {
- dates = this.isInput
- ? this.element.val()
- : this.element.data('date') || this.inputField.val();
- if (dates && this.o.multidate)
- dates = dates.split(this.o.multidateSeparator);
- else
- dates = [dates];
- delete this.element.data().date;
- }
-
- dates = $.map(dates, $.proxy(function(date){
- return DPGlobal.parseDate(date, this.o.format, this.o.language, this.o.assumeNearbyYear);
- }, this));
- dates = $.grep(dates, $.proxy(function(date){
- return (
- !this.dateWithinRange(date) ||
- !date
- );
- }, this), true);
- this.dates.replace(dates);
-
- if (this.o.updateViewDate) {
- if (this.dates.length)
- this.viewDate = new Date(this.dates.get(-1));
- else if (this.viewDate < this.o.startDate)
- this.viewDate = new Date(this.o.startDate);
- else if (this.viewDate > this.o.endDate)
- this.viewDate = new Date(this.o.endDate);
- else
- this.viewDate = this.o.defaultViewDate;
- }
-
- if (fromArgs){
- // setting date by clicking
- this.setValue();
- this.element.change();
- }
- else if (this.dates.length){
- // setting date by typing
- if (String(oldDates) !== String(this.dates) && fromArgs) {
- this._trigger('changeDate');
- this.element.change();
- }
- }
- if (!this.dates.length && oldDates.length) {
- this._trigger('clearDate');
- this.element.change();
- }
-
- this.fill();
- return this;
- },
-
- fillDow: function(){
- if (this.o.showWeekDays) {
- var dowCnt = this.o.weekStart,
- html = '';
- if (this.o.calendarWeeks){
- html += ' ';
- }
- while (dowCnt < this.o.weekStart + 7){
- html += ''+dates[this.o.language].daysMin[(dowCnt++)%7]+' ';
- }
- html += ' ';
- this.picker.find('.datepicker-days thead').append(html);
- }
- },
-
- fillMonths: function(){
- var localDate = this._utc_to_local(this.viewDate);
- var html = '';
- var focused;
- for (var i = 0; i < 12; i++){
- focused = localDate && localDate.getMonth() === i ? ' focused' : '';
- html += '' + dates[this.o.language].monthsShort[i] + ' ';
- }
- this.picker.find('.datepicker-months td').html(html);
- },
-
- setRange: function(range){
- if (!range || !range.length)
- delete this.range;
- else
- this.range = $.map(range, function(d){
- return d.valueOf();
- });
- this.fill();
- },
-
- getClassNames: function(date){
- var cls = [],
- year = this.viewDate.getUTCFullYear(),
- month = this.viewDate.getUTCMonth(),
- today = UTCToday();
- if (date.getUTCFullYear() < year || (date.getUTCFullYear() === year && date.getUTCMonth() < month)){
- cls.push('old');
- } else if (date.getUTCFullYear() > year || (date.getUTCFullYear() === year && date.getUTCMonth() > month)){
- cls.push('new');
- }
- if (this.focusDate && date.valueOf() === this.focusDate.valueOf())
- cls.push('focused');
- // Compare internal UTC date with UTC today, not local today
- if (this.o.todayHighlight && isUTCEquals(date, today)) {
- cls.push('today');
- }
- if (this.dates.contains(date) !== -1)
- cls.push('active');
- if (!this.dateWithinRange(date)){
- cls.push('disabled');
- }
- if (this.dateIsDisabled(date)){
- cls.push('disabled', 'disabled-date');
- }
- if ($.inArray(date.getUTCDay(), this.o.daysOfWeekHighlighted) !== -1){
- cls.push('highlighted');
- }
-
- if (this.range){
- if (date > this.range[0] && date < this.range[this.range.length-1]){
- cls.push('range');
- }
- if ($.inArray(date.valueOf(), this.range) !== -1){
- cls.push('selected');
- }
- if (date.valueOf() === this.range[0]){
- cls.push('range-start');
- }
- if (date.valueOf() === this.range[this.range.length-1]){
- cls.push('range-end');
- }
- }
- return cls;
- },
-
- _fill_yearsView: function(selector, cssClass, factor, year, startYear, endYear, beforeFn){
- var html = '';
- var step = factor / 10;
- var view = this.picker.find(selector);
- var startVal = Math.floor(year / factor) * factor;
- var endVal = startVal + step * 9;
- var focusedVal = Math.floor(this.viewDate.getFullYear() / step) * step;
- var selected = $.map(this.dates, function(d){
- return Math.floor(d.getUTCFullYear() / step) * step;
- });
-
- var classes, tooltip, before;
- for (var currVal = startVal - step; currVal <= endVal + step; currVal += step) {
- classes = [cssClass];
- tooltip = null;
-
- if (currVal === startVal - step) {
- classes.push('old');
- } else if (currVal === endVal + step) {
- classes.push('new');
- }
- if ($.inArray(currVal, selected) !== -1) {
- classes.push('active');
- }
- if (currVal < startYear || currVal > endYear) {
- classes.push('disabled');
- }
- if (currVal === focusedVal) {
- classes.push('focused');
- }
-
- if (beforeFn !== $.noop) {
- before = beforeFn(new Date(currVal, 0, 1));
- if (before === undefined) {
- before = {};
- } else if (typeof before === 'boolean') {
- before = {enabled: before};
- } else if (typeof before === 'string') {
- before = {classes: before};
- }
- if (before.enabled === false) {
- classes.push('disabled');
- }
- if (before.classes) {
- classes = classes.concat(before.classes.split(/\s+/));
- }
- if (before.tooltip) {
- tooltip = before.tooltip;
- }
- }
-
- html += '' + currVal + ' ';
- }
-
- view.find('.datepicker-switch').text(startVal + '-' + endVal);
- view.find('td').html(html);
- },
-
- fill: function(){
- var d = new Date(this.viewDate),
- year = d.getUTCFullYear(),
- month = d.getUTCMonth(),
- startYear = this.o.startDate !== -Infinity ? this.o.startDate.getUTCFullYear() : -Infinity,
- startMonth = this.o.startDate !== -Infinity ? this.o.startDate.getUTCMonth() : -Infinity,
- endYear = this.o.endDate !== Infinity ? this.o.endDate.getUTCFullYear() : Infinity,
- endMonth = this.o.endDate !== Infinity ? this.o.endDate.getUTCMonth() : Infinity,
- todaytxt = dates[this.o.language].today || dates['en'].today || '',
- cleartxt = dates[this.o.language].clear || dates['en'].clear || '',
- titleFormat = dates[this.o.language].titleFormat || dates['en'].titleFormat,
- todayDate = UTCToday(),
- titleBtnVisible = (this.o.todayBtn === true || this.o.todayBtn === 'linked') && todayDate >= this.o.startDate && todayDate <= this.o.endDate && !this.weekOfDateIsDisabled(todayDate),
- tooltip,
- before;
- if (isNaN(year) || isNaN(month))
- return;
- this.picker.find('.datepicker-days .datepicker-switch')
- .text(DPGlobal.formatDate(d, titleFormat, this.o.language));
- this.picker.find('tfoot .today')
- .text(todaytxt)
- .css('display', titleBtnVisible ? 'table-cell' : 'none');
- this.picker.find('tfoot .clear')
- .text(cleartxt)
- .css('display', this.o.clearBtn === true ? 'table-cell' : 'none');
- this.picker.find('thead .datepicker-title')
- .text(this.o.title)
- .css('display', typeof this.o.title === 'string' && this.o.title !== '' ? 'table-cell' : 'none');
- this.updateNavArrows();
- this.fillMonths();
- var prevMonth = UTCDate(year, month, 0),
- day = prevMonth.getUTCDate();
- prevMonth.setUTCDate(day - (prevMonth.getUTCDay() - this.o.weekStart + 7)%7);
- var nextMonth = new Date(prevMonth);
- if (prevMonth.getUTCFullYear() < 100){
- nextMonth.setUTCFullYear(prevMonth.getUTCFullYear());
- }
- nextMonth.setUTCDate(nextMonth.getUTCDate() + 42);
- nextMonth = nextMonth.valueOf();
- var html = [];
- var weekDay, clsName;
- while (prevMonth.valueOf() < nextMonth){
- weekDay = prevMonth.getUTCDay();
- if (weekDay === this.o.weekStart){
- html.push('');
- if (this.o.calendarWeeks){
- // ISO 8601: First week contains first thursday.
- // ISO also states week starts on Monday, but we can be more abstract here.
- var
- // Start of current week: based on weekstart/current date
- ws = new Date(+prevMonth + (this.o.weekStart - weekDay - 7) % 7 * 864e5),
- // Thursday of this week
- th = new Date(Number(ws) + (7 + 4 - ws.getUTCDay()) % 7 * 864e5),
- // First Thursday of year, year from thursday
- yth = new Date(Number(yth = UTCDate(th.getUTCFullYear(), 0, 1)) + (7 + 4 - yth.getUTCDay()) % 7 * 864e5),
- // Calendar week: ms between thursdays, div ms per day, div 7 days
- calWeek = (th - yth) / 864e5 / 7 + 1;
- html.push(''+ calWeek +' ');
- }
- }
- clsName = this.getClassNames(prevMonth);
- clsName.push('day');
-
- var content = prevMonth.getUTCDate();
-
- if (this.o.beforeShowDay !== $.noop){
- before = this.o.beforeShowDay(this._utc_to_local(prevMonth));
- if (before === undefined)
- before = {};
- else if (typeof before === 'boolean')
- before = {enabled: before};
- else if (typeof before === 'string')
- before = {classes: before};
- if (before.enabled === false)
- clsName.push('disabled');
- if (before.classes)
- clsName = clsName.concat(before.classes.split(/\s+/));
- if (before.tooltip)
- tooltip = before.tooltip;
- if (before.content)
- content = before.content;
- }
-
- //Check if uniqueSort exists (supported by jquery >=1.12 and >=2.2)
- //Fallback to unique function for older jquery versions
- if ($.isFunction($.uniqueSort)) {
- clsName = $.uniqueSort(clsName);
- } else {
- clsName = $.unique(clsName);
- }
-
- html.push('' + content + ' ');
- tooltip = null;
- if (weekDay === this.o.weekEnd){
- html.push(' ');
- }
- prevMonth.setUTCDate(prevMonth.getUTCDate() + 1);
- }
- this.picker.find('.datepicker-days tbody').html(html.join(''));
-
- var monthsTitle = dates[this.o.language].monthsTitle || dates['en'].monthsTitle || 'Months';
- var months = this.picker.find('.datepicker-months')
- .find('.datepicker-switch')
- .text(this.o.maxViewMode < 2 ? monthsTitle : year)
- .end()
- .find('tbody span').removeClass('active');
-
- $.each(this.dates, function(i, d){
- if (d.getUTCFullYear() === year)
- months.eq(d.getUTCMonth()).addClass('active');
- });
-
- if (year < startYear || year > endYear){
- months.addClass('disabled');
- }
- if (year === startYear){
- months.slice(0, startMonth).addClass('disabled');
- }
- if (year === endYear){
- months.slice(endMonth+1).addClass('disabled');
- }
-
- if (this.o.beforeShowMonth !== $.noop){
- var that = this;
- $.each(months, function(i, month){
- var moDate = new Date(year, i, 1);
- var before = that.o.beforeShowMonth(moDate);
- if (before === undefined)
- before = {};
- else if (typeof before === 'boolean')
- before = {enabled: before};
- else if (typeof before === 'string')
- before = {classes: before};
- if (before.enabled === false && !$(month).hasClass('disabled'))
- $(month).addClass('disabled');
- if (before.classes)
- $(month).addClass(before.classes);
- if (before.tooltip)
- $(month).prop('title', before.tooltip);
- });
- }
-
- // Generating decade/years picker
- this._fill_yearsView(
- '.datepicker-years',
- 'year',
- 10,
- year,
- startYear,
- endYear,
- this.o.beforeShowYear
- );
-
- // Generating century/decades picker
- this._fill_yearsView(
- '.datepicker-decades',
- 'decade',
- 100,
- year,
- startYear,
- endYear,
- this.o.beforeShowDecade
- );
-
- // Generating millennium/centuries picker
- this._fill_yearsView(
- '.datepicker-centuries',
- 'century',
- 1000,
- year,
- startYear,
- endYear,
- this.o.beforeShowCentury
- );
- },
-
- updateNavArrows: function(){
- if (!this._allow_update)
- return;
-
- var d = new Date(this.viewDate),
- year = d.getUTCFullYear(),
- month = d.getUTCMonth(),
- startYear = this.o.startDate !== -Infinity ? this.o.startDate.getUTCFullYear() : -Infinity,
- startMonth = this.o.startDate !== -Infinity ? this.o.startDate.getUTCMonth() : -Infinity,
- endYear = this.o.endDate !== Infinity ? this.o.endDate.getUTCFullYear() : Infinity,
- endMonth = this.o.endDate !== Infinity ? this.o.endDate.getUTCMonth() : Infinity,
- prevIsDisabled,
- nextIsDisabled,
- factor = 1;
- switch (this.viewMode){
- case 4:
- factor *= 10;
- /* falls through */
- case 3:
- factor *= 10;
- /* falls through */
- case 2:
- factor *= 10;
- /* falls through */
- case 1:
- prevIsDisabled = Math.floor(year / factor) * factor <= startYear;
- nextIsDisabled = Math.floor(year / factor) * factor + factor > endYear;
- break;
- case 0:
- prevIsDisabled = year <= startYear && month <= startMonth;
- nextIsDisabled = year >= endYear && month >= endMonth;
- break;
- }
-
- this.picker.find('.prev').toggleClass('disabled', prevIsDisabled);
- this.picker.find('.next').toggleClass('disabled', nextIsDisabled);
- },
-
- click: function(e){
- e.preventDefault();
- e.stopPropagation();
-
- var target, dir, day, year, month;
- target = $(e.target);
-
- // Clicked on the switch
- if (target.hasClass('datepicker-switch') && this.viewMode !== this.o.maxViewMode){
- this.setViewMode(this.viewMode + 1);
- }
-
- // Clicked on today button
- if (target.hasClass('today') && !target.hasClass('day')){
- this.setViewMode(0);
- this._setDate(UTCToday(), this.o.todayBtn === 'linked' ? null : 'view');
- }
-
- // Clicked on clear button
- if (target.hasClass('clear')){
- this.clearDates();
- }
-
- if (!target.hasClass('disabled')){
- // Clicked on a month, year, decade, century
- if (target.hasClass('month')
- || target.hasClass('year')
- || target.hasClass('decade')
- || target.hasClass('century')) {
- this.viewDate.setUTCDate(1);
-
- day = 1;
- if (this.viewMode === 1){
- month = target.parent().find('span').index(target);
- year = this.viewDate.getUTCFullYear();
- this.viewDate.setUTCMonth(month);
- } else {
- month = 0;
- year = Number(target.text());
- this.viewDate.setUTCFullYear(year);
- }
-
- this._trigger(DPGlobal.viewModes[this.viewMode - 1].e, this.viewDate);
-
- if (this.viewMode === this.o.minViewMode){
- this._setDate(UTCDate(year, month, day));
- } else {
- this.setViewMode(this.viewMode - 1);
- this.fill();
- }
- }
- }
-
- if (this.picker.is(':visible') && this._focused_from){
- this._focused_from.focus();
- }
- delete this._focused_from;
- },
-
- dayCellClick: function(e){
- var $target = $(e.currentTarget);
- var timestamp = $target.data('date');
- var date = new Date(timestamp);
-
- if (this.o.updateViewDate) {
- if (date.getUTCFullYear() !== this.viewDate.getUTCFullYear()) {
- this._trigger('changeYear', this.viewDate);
- }
-
- if (date.getUTCMonth() !== this.viewDate.getUTCMonth()) {
- this._trigger('changeMonth', this.viewDate);
- }
- }
- this._setDate(date);
- },
-
- // Clicked on prev or next
- navArrowsClick: function(e){
- var $target = $(e.currentTarget);
- var dir = $target.hasClass('prev') ? -1 : 1;
- if (this.viewMode !== 0){
- dir *= DPGlobal.viewModes[this.viewMode].navStep * 12;
- }
- this.viewDate = this.moveMonth(this.viewDate, dir);
- this._trigger(DPGlobal.viewModes[this.viewMode].e, this.viewDate);
- this.fill();
- },
-
- _toggle_multidate: function(date){
- var ix = this.dates.contains(date);
- if (!date){
- this.dates.clear();
- }
-
- if (ix !== -1){
- if (this.o.multidate === true || this.o.multidate > 1 || this.o.toggleActive){
- this.dates.remove(ix);
- }
- } else if (this.o.multidate === false) {
- this.dates.clear();
- this.dates.push(date);
- }
- else {
- this.dates.push(date);
- }
-
- if (typeof this.o.multidate === 'number')
- while (this.dates.length > this.o.multidate)
- this.dates.remove(0);
- },
-
- _setDate: function(date, which){
- if (!which || which === 'date')
- this._toggle_multidate(date && new Date(date));
- if ((!which && this.o.updateViewDate) || which === 'view')
- this.viewDate = date && new Date(date);
-
- this.fill();
- this.setValue();
- if (!which || which !== 'view') {
- this._trigger('changeDate');
- }
- this.inputField.trigger('change');
- if (this.o.autoclose && (!which || which === 'date')){
- this.hide();
- }
- },
-
- moveDay: function(date, dir){
- var newDate = new Date(date);
- newDate.setUTCDate(date.getUTCDate() + dir);
-
- return newDate;
- },
-
- moveWeek: function(date, dir){
- return this.moveDay(date, dir * 7);
- },
-
- moveMonth: function(date, dir){
- if (!isValidDate(date))
- return this.o.defaultViewDate;
- if (!dir)
- return date;
- var new_date = new Date(date.valueOf()),
- day = new_date.getUTCDate(),
- month = new_date.getUTCMonth(),
- mag = Math.abs(dir),
- new_month, test;
- dir = dir > 0 ? 1 : -1;
- if (mag === 1){
- test = dir === -1
- // If going back one month, make sure month is not current month
- // (eg, Mar 31 -> Feb 31 == Feb 28, not Mar 02)
- ? function(){
- return new_date.getUTCMonth() === month;
- }
- // If going forward one month, make sure month is as expected
- // (eg, Jan 31 -> Feb 31 == Feb 28, not Mar 02)
- : function(){
- return new_date.getUTCMonth() !== new_month;
- };
- new_month = month + dir;
- new_date.setUTCMonth(new_month);
- // Dec -> Jan (12) or Jan -> Dec (-1) -- limit expected date to 0-11
- new_month = (new_month + 12) % 12;
- }
- else {
- // For magnitudes >1, move one month at a time...
- for (var i=0; i < mag; i++)
- // ...which might decrease the day (eg, Jan 31 to Feb 28, etc)...
- new_date = this.moveMonth(new_date, dir);
- // ...then reset the day, keeping it in the new month
- new_month = new_date.getUTCMonth();
- new_date.setUTCDate(day);
- test = function(){
- return new_month !== new_date.getUTCMonth();
- };
- }
- // Common date-resetting loop -- if date is beyond end of month, make it
- // end of month
- while (test()){
- new_date.setUTCDate(--day);
- new_date.setUTCMonth(new_month);
- }
- return new_date;
- },
-
- moveYear: function(date, dir){
- return this.moveMonth(date, dir*12);
- },
-
- moveAvailableDate: function(date, dir, fn){
- do {
- date = this[fn](date, dir);
-
- if (!this.dateWithinRange(date))
- return false;
-
- fn = 'moveDay';
- }
- while (this.dateIsDisabled(date));
-
- return date;
- },
-
- weekOfDateIsDisabled: function(date){
- return $.inArray(date.getUTCDay(), this.o.daysOfWeekDisabled) !== -1;
- },
-
- dateIsDisabled: function(date){
- return (
- this.weekOfDateIsDisabled(date) ||
- $.grep(this.o.datesDisabled, function(d){
- return isUTCEquals(date, d);
- }).length > 0
- );
- },
-
- dateWithinRange: function(date){
- return date >= this.o.startDate && date <= this.o.endDate;
- },
-
- keydown: function(e){
- if (!this.picker.is(':visible')){
- if (e.keyCode === 40 || e.keyCode === 27) { // allow down to re-show picker
- this.show();
- e.stopPropagation();
- }
- return;
- }
- var dateChanged = false,
- dir, newViewDate,
- focusDate = this.focusDate || this.viewDate;
- switch (e.keyCode){
- case 27: // escape
- if (this.focusDate){
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.fill();
- }
- else
- this.hide();
- e.preventDefault();
- e.stopPropagation();
- break;
- case 37: // left
- case 38: // up
- case 39: // right
- case 40: // down
- if (!this.o.keyboardNavigation || this.o.daysOfWeekDisabled.length === 7)
- break;
- dir = e.keyCode === 37 || e.keyCode === 38 ? -1 : 1;
- if (this.viewMode === 0) {
- if (e.ctrlKey){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveYear');
-
- if (newViewDate)
- this._trigger('changeYear', this.viewDate);
- } else if (e.shiftKey){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveMonth');
-
- if (newViewDate)
- this._trigger('changeMonth', this.viewDate);
- } else if (e.keyCode === 37 || e.keyCode === 39){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveDay');
- } else if (!this.weekOfDateIsDisabled(focusDate)){
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveWeek');
- }
- } else if (this.viewMode === 1) {
- if (e.keyCode === 38 || e.keyCode === 40) {
- dir = dir * 4;
- }
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveMonth');
- } else if (this.viewMode === 2) {
- if (e.keyCode === 38 || e.keyCode === 40) {
- dir = dir * 4;
- }
- newViewDate = this.moveAvailableDate(focusDate, dir, 'moveYear');
- }
- if (newViewDate){
- this.focusDate = this.viewDate = newViewDate;
- this.setValue();
- this.fill();
- e.preventDefault();
- }
- break;
- case 13: // enter
- if (!this.o.forceParse)
- break;
- focusDate = this.focusDate || this.dates.get(-1) || this.viewDate;
- if (this.o.keyboardNavigation) {
- this._toggle_multidate(focusDate);
- dateChanged = true;
- }
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.setValue();
- this.fill();
- if (this.picker.is(':visible')){
- e.preventDefault();
- e.stopPropagation();
- if (this.o.autoclose)
- this.hide();
- }
- break;
- case 9: // tab
- this.focusDate = null;
- this.viewDate = this.dates.get(-1) || this.viewDate;
- this.fill();
- this.hide();
- break;
- }
- if (dateChanged){
- if (this.dates.length)
- this._trigger('changeDate');
- else
- this._trigger('clearDate');
- this.inputField.trigger('change');
- }
- },
-
- setViewMode: function(viewMode){
- this.viewMode = viewMode;
- this.picker
- .children('div')
- .hide()
- .filter('.datepicker-' + DPGlobal.viewModes[this.viewMode].clsName)
- .show();
- this.updateNavArrows();
- this._trigger('changeViewMode', new Date(this.viewDate));
- }
- };
-
- var DateRangePicker = function(element, options){
- $.data(element, 'datepicker', this);
- this.element = $(element);
- this.inputs = $.map(options.inputs, function(i){
- return i.jquery ? i[0] : i;
- });
- delete options.inputs;
-
- this.keepEmptyValues = options.keepEmptyValues;
- delete options.keepEmptyValues;
-
- datepickerPlugin.call($(this.inputs), options)
- .on('changeDate', $.proxy(this.dateUpdated, this));
-
- this.pickers = $.map(this.inputs, function(i){
- return $.data(i, 'datepicker');
- });
- this.updateDates();
- };
- DateRangePicker.prototype = {
- updateDates: function(){
- this.dates = $.map(this.pickers, function(i){
- return i.getUTCDate();
- });
- this.updateRanges();
- },
- updateRanges: function(){
- var range = $.map(this.dates, function(d){
- return d.valueOf();
- });
- $.each(this.pickers, function(i, p){
- p.setRange(range);
- });
- },
- clearDates: function(){
- $.each(this.pickers, function(i, p){
- p.clearDates();
- });
- },
- dateUpdated: function(e){
- // `this.updating` is a workaround for preventing infinite recursion
- // between `changeDate` triggering and `setUTCDate` calling. Until
- // there is a better mechanism.
- if (this.updating)
- return;
- this.updating = true;
-
- var dp = $.data(e.target, 'datepicker');
-
- if (dp === undefined) {
- return;
- }
-
- var new_date = dp.getUTCDate(),
- keep_empty_values = this.keepEmptyValues,
- i = $.inArray(e.target, this.inputs),
- j = i - 1,
- k = i + 1,
- l = this.inputs.length;
- if (i === -1)
- return;
-
- $.each(this.pickers, function(i, p){
- if (!p.getUTCDate() && (p === dp || !keep_empty_values))
- p.setUTCDate(new_date);
- });
-
- if (new_date < this.dates[j]){
- // Date being moved earlier/left
- while (j >= 0 && new_date < this.dates[j]){
- this.pickers[j--].setUTCDate(new_date);
- }
- } else if (new_date > this.dates[k]){
- // Date being moved later/right
- while (k < l && new_date > this.dates[k]){
- this.pickers[k++].setUTCDate(new_date);
- }
- }
- this.updateDates();
-
- delete this.updating;
- },
- destroy: function(){
- $.map(this.pickers, function(p){ p.destroy(); });
- $(this.inputs).off('changeDate', this.dateUpdated);
- delete this.element.data().datepicker;
- },
- remove: alias('destroy', 'Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead')
- };
-
- function opts_from_el(el, prefix){
- // Derive options from element data-attrs
- var data = $(el).data(),
- out = {}, inkey,
- replace = new RegExp('^' + prefix.toLowerCase() + '([A-Z])');
- prefix = new RegExp('^' + prefix.toLowerCase());
- function re_lower(_,a){
- return a.toLowerCase();
- }
- for (var key in data)
- if (prefix.test(key)){
- inkey = key.replace(replace, re_lower);
- out[inkey] = data[key];
- }
- return out;
- }
-
- function opts_from_locale(lang){
- // Derive options from locale plugins
- var out = {};
- // Check if "de-DE" style date is available, if not language should
- // fallback to 2 letter code eg "de"
- if (!dates[lang]){
- lang = lang.split('-')[0];
- if (!dates[lang])
- return;
- }
- var d = dates[lang];
- $.each(locale_opts, function(i,k){
- if (k in d)
- out[k] = d[k];
- });
- return out;
- }
-
- var old = $.fn.datepicker;
- var datepickerPlugin = function(option){
- var args = Array.apply(null, arguments);
- args.shift();
- var internal_return;
- this.each(function(){
- var $this = $(this),
- data = $this.data('datepicker'),
- options = typeof option === 'object' && option;
- if (!data){
- var elopts = opts_from_el(this, 'date'),
- // Preliminary otions
- xopts = $.extend({}, defaults, elopts, options),
- locopts = opts_from_locale(xopts.language),
- // Options priority: js args, data-attrs, locales, defaults
- opts = $.extend({}, defaults, locopts, elopts, options);
- if ($this.hasClass('input-daterange') || opts.inputs){
- $.extend(opts, {
- inputs: opts.inputs || $this.find('input').toArray()
- });
- data = new DateRangePicker(this, opts);
- }
- else {
- data = new Datepicker(this, opts);
- }
- $this.data('datepicker', data);
- }
- if (typeof option === 'string' && typeof data[option] === 'function'){
- internal_return = data[option].apply(data, args);
- }
- });
-
- if (
- internal_return === undefined ||
- internal_return instanceof Datepicker ||
- internal_return instanceof DateRangePicker
- )
- return this;
-
- if (this.length > 1)
- throw new Error('Using only allowed for the collection of a single element (' + option + ' function)');
- else
- return internal_return;
- };
- $.fn.datepicker = datepickerPlugin;
-
- var defaults = $.fn.datepicker.defaults = {
- assumeNearbyYear: false,
- autoclose: false,
- beforeShowDay: $.noop,
- beforeShowMonth: $.noop,
- beforeShowYear: $.noop,
- beforeShowDecade: $.noop,
- beforeShowCentury: $.noop,
- calendarWeeks: false,
- clearBtn: false,
- toggleActive: false,
- daysOfWeekDisabled: [],
- daysOfWeekHighlighted: [],
- datesDisabled: [],
- endDate: Infinity,
- forceParse: true,
- format: 'mm/dd/yyyy',
- keepEmptyValues: false,
- keyboardNavigation: true,
- language: 'en',
- minViewMode: 0,
- maxViewMode: 4,
- multidate: false,
- multidateSeparator: ',',
- orientation: "auto",
- rtl: false,
- startDate: -Infinity,
- startView: 0,
- todayBtn: false,
- todayHighlight: false,
- updateViewDate: true,
- weekStart: 0,
- disableTouchKeyboard: false,
- enableOnReadonly: true,
- showOnFocus: true,
- zIndexOffset: 10,
- container: 'body',
- immediateUpdates: false,
- title: '',
- templates: {
- leftArrow: '«',
- rightArrow: '»'
- },
- showWeekDays: true
- };
- var locale_opts = $.fn.datepicker.locale_opts = [
- 'format',
- 'rtl',
- 'weekStart'
- ];
- $.fn.datepicker.Constructor = Datepicker;
- var dates = $.fn.datepicker.dates = {
- en: {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- clear: "Clear",
- titleFormat: "MM yyyy"
- }
- };
-
- var DPGlobal = {
- viewModes: [
- {
- names: ['days', 'month'],
- clsName: 'days',
- e: 'changeMonth'
- },
- {
- names: ['months', 'year'],
- clsName: 'months',
- e: 'changeYear',
- navStep: 1
- },
- {
- names: ['years', 'decade'],
- clsName: 'years',
- e: 'changeDecade',
- navStep: 10
- },
- {
- names: ['decades', 'century'],
- clsName: 'decades',
- e: 'changeCentury',
- navStep: 100
- },
- {
- names: ['centuries', 'millennium'],
- clsName: 'centuries',
- e: 'changeMillennium',
- navStep: 1000
- }
- ],
- validParts: /dd?|DD?|mm?|MM?|yy(?:yy)?/g,
- nonpunctuation: /[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,
- parseFormat: function(format){
- if (typeof format.toValue === 'function' && typeof format.toDisplay === 'function')
- return format;
- // IE treats \0 as a string end in inputs (truncating the value),
- // so it's a bad format delimiter, anyway
- var separators = format.replace(this.validParts, '\0').split('\0'),
- parts = format.match(this.validParts);
- if (!separators || !separators.length || !parts || parts.length === 0){
- throw new Error("Invalid date format.");
- }
- return {separators: separators, parts: parts};
- },
- parseDate: function(date, format, language, assumeNearby){
- if (!date)
- return undefined;
- if (date instanceof Date)
- return date;
- if (typeof format === 'string')
- format = DPGlobal.parseFormat(format);
- if (format.toValue)
- return format.toValue(date, format, language);
- var fn_map = {
- d: 'moveDay',
- m: 'moveMonth',
- w: 'moveWeek',
- y: 'moveYear'
- },
- dateAliases = {
- yesterday: '-1d',
- today: '+0d',
- tomorrow: '+1d'
- },
- parts, part, dir, i, fn;
- if (date in dateAliases){
- date = dateAliases[date];
- }
- if (/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(date)){
- parts = date.match(/([\-+]\d+)([dmwy])/gi);
- date = new Date();
- for (i=0; i < parts.length; i++){
- part = parts[i].match(/([\-+]\d+)([dmwy])/i);
- dir = Number(part[1]);
- fn = fn_map[part[2].toLowerCase()];
- date = Datepicker.prototype[fn](date, dir);
- }
- return Datepicker.prototype._zero_utc_time(date);
- }
-
- parts = date && date.match(this.nonpunctuation) || [];
-
- function applyNearbyYear(year, threshold){
- if (threshold === true)
- threshold = 10;
-
- // if year is 2 digits or less, than the user most likely is trying to get a recent century
- if (year < 100){
- year += 2000;
- // if the new year is more than threshold years in advance, use last century
- if (year > ((new Date()).getFullYear()+threshold)){
- year -= 100;
- }
- }
-
- return year;
- }
-
- var parsed = {},
- setters_order = ['yyyy', 'yy', 'M', 'MM', 'm', 'mm', 'd', 'dd'],
- setters_map = {
- yyyy: function(d,v){
- return d.setUTCFullYear(assumeNearby ? applyNearbyYear(v, assumeNearby) : v);
- },
- m: function(d,v){
- if (isNaN(d))
- return d;
- v -= 1;
- while (v < 0) v += 12;
- v %= 12;
- d.setUTCMonth(v);
- while (d.getUTCMonth() !== v)
- d.setUTCDate(d.getUTCDate()-1);
- return d;
- },
- d: function(d,v){
- return d.setUTCDate(v);
- }
- },
- val, filtered;
- setters_map['yy'] = setters_map['yyyy'];
- setters_map['M'] = setters_map['MM'] = setters_map['mm'] = setters_map['m'];
- setters_map['dd'] = setters_map['d'];
- date = UTCToday();
- var fparts = format.parts.slice();
- // Remove noop parts
- if (parts.length !== fparts.length){
- fparts = $(fparts).filter(function(i,p){
- return $.inArray(p, setters_order) !== -1;
- }).toArray();
- }
- // Process remainder
- function match_part(){
- var m = this.slice(0, parts[i].length),
- p = parts[i].slice(0, m.length);
- return m.toLowerCase() === p.toLowerCase();
- }
- if (parts.length === fparts.length){
- var cnt;
- for (i=0, cnt = fparts.length; i < cnt; i++){
- val = parseInt(parts[i], 10);
- part = fparts[i];
- if (isNaN(val)){
- switch (part){
- case 'MM':
- filtered = $(dates[language].months).filter(match_part);
- val = $.inArray(filtered[0], dates[language].months) + 1;
- break;
- case 'M':
- filtered = $(dates[language].monthsShort).filter(match_part);
- val = $.inArray(filtered[0], dates[language].monthsShort) + 1;
- break;
- }
- }
- parsed[part] = val;
- }
- var _date, s;
- for (i=0; i < setters_order.length; i++){
- s = setters_order[i];
- if (s in parsed && !isNaN(parsed[s])){
- _date = new Date(date);
- setters_map[s](_date, parsed[s]);
- if (!isNaN(_date))
- date = _date;
- }
- }
- }
- return date;
- },
- formatDate: function(date, format, language){
- if (!date)
- return '';
- if (typeof format === 'string')
- format = DPGlobal.parseFormat(format);
- if (format.toDisplay)
- return format.toDisplay(date, format, language);
- var val = {
- d: date.getUTCDate(),
- D: dates[language].daysShort[date.getUTCDay()],
- DD: dates[language].days[date.getUTCDay()],
- m: date.getUTCMonth() + 1,
- M: dates[language].monthsShort[date.getUTCMonth()],
- MM: dates[language].months[date.getUTCMonth()],
- yy: date.getUTCFullYear().toString().substring(2),
- yyyy: date.getUTCFullYear()
- };
- val.dd = (val.d < 10 ? '0' : '') + val.d;
- val.mm = (val.m < 10 ? '0' : '') + val.m;
- date = [];
- var seps = $.extend([], format.separators);
- for (var i=0, cnt = format.parts.length; i <= cnt; i++){
- if (seps.length)
- date.push(seps.shift());
- date.push(val[format.parts[i]]);
- }
- return date.join('');
- },
- headTemplate: ''+
- ''+
- ' '+
- ' '+
- ''+
- ''+defaults.templates.leftArrow+' '+
- ' '+
- ''+defaults.templates.rightArrow+' '+
- ' '+
- ' ',
- contTemplate: ' ',
- footTemplate: ''+
- ''+
- ' '+
- ' '+
- ''+
- ' '+
- ' '+
- ' '
- };
- DPGlobal.template = ''+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- ' '+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
'+
- '
'+
- DPGlobal.headTemplate+
- DPGlobal.contTemplate+
- DPGlobal.footTemplate+
- '
'+
- '
'+
- '
';
-
- $.fn.datepicker.DPGlobal = DPGlobal;
-
-
- /* DATEPICKER NO CONFLICT
- * =================== */
-
- $.fn.datepicker.noConflict = function(){
- $.fn.datepicker = old;
- return this;
- };
-
- /* DATEPICKER VERSION
- * =================== */
- $.fn.datepicker.version = '1.9.0';
-
- $.fn.datepicker.deprecated = function(msg){
- var console = window.console;
- if (console && console.warn) {
- console.warn('DEPRECATED: ' + msg);
- }
- };
-
-
- /* DATEPICKER DATA-API
- * ================== */
-
- $(document).on(
- 'focus.datepicker.data-api click.datepicker.data-api',
- '[data-provide="datepicker"]',
- function(e){
- var $this = $(this);
- if ($this.data('datepicker'))
- return;
- e.preventDefault();
- // component click requires us to explicitly show it
- datepickerPlugin.call($this, 'show');
- }
- );
- $(function(){
- datepickerPlugin.call($('[data-provide="datepicker-inline"]'));
- });
-
-}));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker-en-CA.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker-en-CA.js
deleted file mode 100755
index 853773f3a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker-en-CA.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Canadian English translation for bootstrap-datepicker
- * Mike Nacey
- * DEPRECATED: This filename doesn't follow the convention, use bootstrap-datepicker.en-CA.js instead
- */
-;(function($){
- $.fn.datepicker.dates['en-CA'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 0,
- format: "yyyy-mm-dd"
- };
-
- $.fn.datepicker.deprecated('This filename doesn\'t follow the convention, use bootstrap-datepicker.en-CA.js instead.');
-
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar-tn.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar-tn.js
deleted file mode 100755
index 110fe9102..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar-tn.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Arabic-Tunisia translation for bootstrap-datepicker
- * Souhaieb Besbes
- */
-;(function($){
- $.fn.datepicker.dates['ar-tn'] = {
- days: ["الأØد", "الاثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت", "الأØد"],
- daysShort: ["Ø£Øد", "اثنين", "ثلاثاء", "أربعاء", "خميس", "جمعة", "سبت", "Ø£Øد"],
- daysMin: ["Ø", "Ù†", "Ø«", "ع", "Ø®", "ج", "س", "Ø"],
- months: ["جانÙÙŠ","ÙÙŠÙري","مارس","Ø£Ùريل","ماي","جوان","جويليه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],
- monthsShort: ["جانÙÙŠ","ÙÙŠÙري","مارس","Ø£Ùريل","ماي","جوان","جويليه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر"],
- today: "هذا اليوم",
- rtl: true
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar.js
deleted file mode 100755
index 12ae1821d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ar.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Arabic translation for bootstrap-datepicker
- * Mohammed Alshehri
- */
-;(function($){
- $.fn.datepicker.dates['ar'] = {
- days: ["الأØد", "الاثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت", "الأØد"],
- daysShort: ["Ø£Øد", "اثنين", "ثلاثاء", "أربعاء", "خميس", "جمعة", "سبت", "Ø£Øد"],
- daysMin: ["Ø", "Ù†", "Ø«", "ع", "Ø®", "ج", "س", "Ø"],
- months: ["يناير", "Ùبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوÙمبر", "ديسمبر"],
- monthsShort: ["يناير", "Ùبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوÙمبر", "ديسمبر"],
- today: "هذا اليوم",
- rtl: true
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.az.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.az.js
deleted file mode 100755
index 0ca9cad9d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.az.js
+++ /dev/null
@@ -1,14 +0,0 @@
-// Azerbaijani
-;(function($){
- $.fn.datepicker.dates['az'] = {
- days: ["Bazar", "Bazar ertəsi", "Çərşənbə axşamı", "Çərşənbə", "Cümə axşamı", "Cümə", "Şənbə"],
- daysShort: ["B.", "B.e", "Ç.a", "Ç.", "C.a", "C.", "Ş."],
- daysMin: ["B.", "B.e", "Ç.a", "Ç.", "C.a", "C.", "Ş."],
- months: ["Yanvar", "Fevral", "Mart", "Aprel", "May", "Ä°yun", "Ä°yul", "Avqust", "Sentyabr", "Oktyabr", "Noyabr", "Dekabr"],
- monthsShort: ["Yan", "Fev", "Mar", "Apr", "May", "Ä°yun", "Ä°yul", "Avq", "Sen", "Okt", "Noy", "Dek"],
- today: "Bu gün",
- weekStart: 1,
- clear: "Təmizlə",
- monthsTitle: 'Aylar'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bg.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bg.js
deleted file mode 100755
index 3193e199b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bg.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Bulgarian translation for bootstrap-datepicker
- * Apostol Apostolov
- */
-;(function($){
- $.fn.datepicker.dates['bg'] = {
- days: ["ÐеделÑ", "Понеделник", "Вторник", "СрÑда", "Четвъртък", "Петък", "Събота"],
- daysShort: ["Ðед", "Пон", "Вто", "СрÑ", "Чет", "Пет", "Съб"],
- daysMin: ["Ð", "П", "Ð’", "С", "Ч", "П", "С"],
- months: ["Януари", "Февруари", "Март", "Ðприл", "Май", "Юни", "Юли", "ÐвгуÑÑ‚", "Септември", "Октомври", "Ðоември", "Декември"],
- monthsShort: ["Ян", "Фев", "Мар", "Ðпр", "Май", "Юни", "Юли", "Ðвг", "Сеп", "Окт", "Ðое", "Дек"],
- today: "днеÑ"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bm.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bm.js
deleted file mode 100755
index 899b9b088..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bm.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Bamanankan (bm) translation for bootstrap-datepicker
- * Fatou Fall
- */
-;(function($){
- $.fn.datepicker.dates['bm'] = {
- days: ["Kari","Ntɛnɛn","Tarata","Araba","Alamisa","Juma","Sibiri"],
- daysShort: ["Kar","NtÉ›","Tar","Ara","Ala","Jum","Sib"],
- daysMin: ["Ka","Nt","Ta","Ar","Al","Ju","Si"],
- months: ["Zanwuyekalo","Fewuruyekalo","Marisikalo","Awirilikalo","Mɛkalo","Zuwɛnkalo","Zuluyekalo","Utikalo","Sɛtanburukalo","ɔkutɔburukalo","Nowanburukalo","Desanburukalo"],
- monthsShort: ["Zan","Few","Mar","Awi","Mɛ","Zuw","Zul","Uti","Sɛt","ɔku","Now","Des"],
- today: "Bi",
- monthsTitle: "Kalo",
- clear: "Ka jɔsi",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bn.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bn.js
deleted file mode 100755
index 05e9ccff3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bn.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Bengali (Bangla) translation for bootstrap-datepicker
- * Karim Khan
- * Orif N. Jr.
- */
-;(function($){
- $.fn.datepicker.dates['bn'] = {
- days: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"],
- daysShort: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"],
- daysMin: ["রবি","সোম","মঙà§à¦—ল","বà§à¦§","বৃহসà§à¦ªà¦¤à¦¿","শà§à¦•à§à¦°","শনি"],
- months: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à¦¿","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","অগাসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নà¦à§‡à¦®à§à¦¬à¦°","ডিসেমà§à¦¬à¦°"],
- monthsShort: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à¦¿","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","অগাসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নà¦à§‡à¦®à§à¦¬à¦°","ডিসেমà§à¦¬à¦°"],
- today: "আজ",
- monthsTitle: "মাস",
- clear: "পরিষà§à¦•à¦¾à¦°",
- weekStart: 0,
- format: "mm/dd/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.br.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.br.js
deleted file mode 100755
index e71e194a3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.br.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Breton translation for bootstrap-datepicker
- * Gwenn Meynier
- */
-;(function($){
- $.fn.datepicker.dates['br'] = {
- days: ["Sul", "Lun", "Meurzh", "Merc'her", "Yaou", "Gwener", "Sadorn"],
- daysShort: ["Sul", "Lun", "Meu.", "Mer.", "Yao.", "Gwe.", "Sad."],
- daysMin: ["Su", "L", "Meu", "Mer", "Y", "G", "Sa"],
- months: ["Genver", "C'hwevrer", "Meurzh", "Ebrel", "Mae", "Mezheven", "Gouere", "Eost", "Gwengolo", "Here", "Du", "Kerzu"],
- monthsShort: ["Genv.", "C'hw.", "Meur.", "Ebre.", "Mae", "Mezh.", "Goue.", "Eost", "Gwen.", "Here", "Du", "Kerz."],
- today: "Hiziv",
- monthsTitle: "Miz",
- clear: "Dilemel",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bs.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bs.js
deleted file mode 100755
index 4a76529d9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.bs.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Bosnian translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['bs'] = {
- days: ["Nedjelja","Ponedjeljak", "Utorak", "Srijeda", "ÄŒetvrtak", "Petak", "Subota"],
- daysShort: ["Ned", "Pon", "Uto", "Sri", "ÄŒet", "Pet", "Sub"],
- daysMin: ["N", "Po", "U", "Sr", "Č", "Pe", "Su"],
- months: ["Januar", "Februar", "Mart", "April", "Maj", "Juni", "Juli", "August", "Septembar", "Oktobar", "Novembar", "Decembar"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
- today: "Danas",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ca.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ca.js
deleted file mode 100755
index 6ba993c87..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ca.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Catalan translation for bootstrap-datepicker
- * J. Garcia
- */
-;(function($){
- $.fn.datepicker.dates['ca'] = {
- days: ["Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte"],
- daysShort: ["Diu", "Dil", "Dmt", "Dmc", "Dij", "Div", "Dis"],
- daysMin: ["dg", "dl", "dt", "dc", "dj", "dv", "ds"],
- months: ["Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"],
- monthsShort: ["Gen", "Feb", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Oct", "Nov", "Des"],
- today: "Avui",
- monthsTitle: "Mesos",
- clear: "Esborrar",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cs.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cs.js
deleted file mode 100755
index d4826506b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cs.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Czech translation for bootstrap-datepicker
- * MatÄ›j KoubÃk
- * Fixes by Michal Remiš
- */
-;(function($){
- $.fn.datepicker.dates['cs'] = {
- days: ["NedÄ›le", "PondÄ›lÃ", "Úterý", "StÅ™eda", "ÄŒtvrtek", "Pátek", "Sobota"],
- daysShort: ["Ned", "Pon", "Úte", "Stř", "Čtv", "Pát", "Sob"],
- daysMin: ["Ne", "Po", "Út", "St", "Čt", "Pá", "So"],
- months: ["Leden", "Únor", "BÅ™ezen", "Duben", "KvÄ›ten", "ÄŒerven", "ÄŒervenec", "Srpen", "ZářÃ", "ŘÃjen", "Listopad", "Prosinec"],
- monthsShort: ["Led", "Úno", "BÅ™e", "Dub", "KvÄ›", "ÄŒer", "ÄŒnc", "Srp", "Zář", "ŘÃj", "Lis", "Pro"],
- today: "Dnes",
- clear: "Vymazat",
- monthsTitle: "MÄ›sÃc",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cy.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cy.js
deleted file mode 100755
index 553933bc6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.cy.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Welsh translation for bootstrap-datepicker
- * S. Morris
- */
-;(function($){
- $.fn.datepicker.dates['cy'] = {
- days: ["Sul", "Llun", "Mawrth", "Mercher", "Iau", "Gwener", "Sadwrn"],
- daysShort: ["Sul", "Llu", "Maw", "Mer", "Iau", "Gwe", "Sad"],
- daysMin: ["Su", "Ll", "Ma", "Me", "Ia", "Gwe", "Sa"],
- months: ["Ionawr", "Chewfror", "Mawrth", "Ebrill", "Mai", "Mehefin", "Gorfennaf", "Awst", "Medi", "Hydref", "Tachwedd", "Rhagfyr"],
- monthsShort: ["Ion", "Chw", "Maw", "Ebr", "Mai", "Meh", "Gor", "Aws", "Med", "Hyd", "Tach", "Rha"],
- today: "Heddiw"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.da.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.da.js
deleted file mode 100755
index 022edd696..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.da.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Danish translation for bootstrap-datepicker
- * Christian Pedersen
- * Ivan Mylyanyk
- */
-;(function($){
- $.fn.datepicker.dates['da'] = {
- days: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"],
- daysShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"],
- daysMin: ["Sø", "Ma", "Ti", "On", "To", "Fr", "Lø"],
- months: ["Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
- today: "I Dag",
- weekStart: 1,
- clear: "Nulstil",
- format: "dd/mm/yyyy",
- monthsTitle:"MÃ¥neder"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.de.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.de.js
deleted file mode 100755
index 52e7a9b5d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.de.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * German translation for bootstrap-datepicker
- * Sam Zurcher
- */
-;(function($){
- $.fn.datepicker.dates['de'] = {
- days: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"],
- daysShort: ["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"],
- daysMin: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"],
- months: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"],
- monthsShort: ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"],
- today: "Heute",
- monthsTitle: "Monate",
- clear: "Löschen",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.el.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.el.js
deleted file mode 100755
index 5e00c7d4a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.el.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Greek translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['el'] = {
- days: ["ΚυÏιακή", "ΔευτÎÏα", "ΤÏίτη", "ΤετάÏτη", "Î Îμπτη", "ΠαÏασκευή", "Σάββατο"],
- daysShort: ["ΚυÏ", "Δευ", "ΤÏι", "Τετ", "Πεμ", "ΠαÏ", "Σαβ"],
- daysMin: ["Κυ", "Δε", "ΤÏ", "Τε", "Πε", "Πα", "Σα"],
- months: ["ΙανουάÏιος", "ΦεβÏουάÏιος", "ΜάÏτιος", "ΑπÏίλιος", "Μάιος", "ΙοÏνιος", "ΙοÏλιος", "ΑÏγουστος", "ΣεπτÎμβÏιος", "ΟκτώβÏιος", "ÎοÎμβÏιος", "ΔεκÎμβÏιος"],
- monthsShort: ["Ιαν", "Φεβ", "ΜαÏ", "ΑπÏ", "Μάι", "Ιουν", "Ιουλ", "Αυγ", "Σεπ", "Οκτ", "Îοε", "Δεκ"],
- today: "ΣήμεÏα",
- clear: "ΚαθαÏισμός",
- weekStart: 1,
- format: "d/m/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-AU.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-AU.js
deleted file mode 100755
index 5f1fa2474..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-AU.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Australian English translation for bootstrap-datepicker
- * Steve Chapman
- */
-;(function($){
- $.fn.datepicker.dates['en-AU'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 1,
- format: "d/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-CA.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-CA.js
deleted file mode 100755
index 1a8e5639b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-CA.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Canadian English translation for bootstrap-datepicker
- * Mike Nacey
- */
-;(function($){
- $.fn.datepicker.dates['en-CA'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 0,
- format: "yyyy-mm-dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-GB.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-GB.js
deleted file mode 100755
index 4f09467a1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-GB.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * British English translation for bootstrap-datepicker
- * Xavier Dutreilh
- */
-;(function($){
- $.fn.datepicker.dates['en-GB'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-IE.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-IE.js
deleted file mode 100755
index 188e4fc12..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-IE.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Irish English translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['en-IE'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-NZ.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-NZ.js
deleted file mode 100755
index 9b6910b7a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-NZ.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * New Zealand English translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['en-NZ'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 1,
- format: "d/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-ZA.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-ZA.js
deleted file mode 100755
index 54b68f800..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.en-ZA.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * South African English translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['en-ZA'] = {
- days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
- daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
- daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
- months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Today",
- monthsTitle: "Months",
- clear: "Clear",
- weekStart: 1,
- format: "yyyy/mm/d"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eo.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eo.js
deleted file mode 100755
index 98e498875..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eo.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Esperanto translation for bootstrap-datepicker
- * Emmanuel Debanne
- */
-;(function($){
- $.fn.datepicker.dates['eo'] = {
- days: ["dimanĉo", "lundo", "mardo", "merkredo", "ĵaÅdo", "vendredo", "sabato"],
- daysShort: ["dim.", "lun.", "mar.", "mer.", "ĵaÅ.", "ven.", "sam."],
- daysMin: ["d", "l", "ma", "me", "ĵ", "v", "s"],
- months: ["januaro", "februaro", "marto", "aprilo", "majo", "junio", "julio", "aÅgusto", "septembro", "oktobro", "novembro", "decembro"],
- monthsShort: ["jan.", "feb.", "mar.", "apr.", "majo", "jun.", "jul.", "aÅg.", "sep.", "okt.", "nov.", "dec."],
- today: "HodiaÅ",
- clear: "Nuligi",
- weekStart: 1,
- format: "yyyy-mm-dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.es.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.es.js
deleted file mode 100755
index ac9dd3582..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.es.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Spanish translation for bootstrap-datepicker
- * Bruno Bonamin
- */
-;(function($){
- $.fn.datepicker.dates['es'] = {
- days: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"],
- daysShort: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"],
- daysMin: ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"],
- months: ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"],
- monthsShort: ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"],
- today: "Hoy",
- monthsTitle: "Meses",
- clear: "Borrar",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.et.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.et.js
deleted file mode 100755
index 7f7100d42..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.et.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Estonian translation for bootstrap-datepicker
- * Ando Roots
- * Fixes by Illimar Tambek <
- */
-;(function($){
- $.fn.datepicker.dates['et'] = {
- days: ["Pühapäev", "Esmaspäev", "Teisipäev", "Kolmapäev", "Neljapäev", "Reede", "Laupäev"],
- daysShort: ["Pühap", "Esmasp", "Teisip", "Kolmap", "Neljap", "Reede", "Laup"],
- daysMin: ["P", "E", "T", "K", "N", "R", "L"],
- months: ["Jaanuar", "Veebruar", "Märts", "Aprill", "Mai", "Juuni", "Juuli", "August", "September", "Oktoober", "November", "Detsember"],
- monthsShort: ["Jaan", "Veebr", "Märts", "Apr", "Mai", "Juuni", "Juuli", "Aug", "Sept", "Okt", "Nov", "Dets"],
- today: "Täna",
- clear: "Tühjenda",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eu.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eu.js
deleted file mode 100755
index c2c3c0aeb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.eu.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Basque translation for bootstrap-datepicker
- * Arkaitz Etxeberria
- */
-;(function($){
- $.fn.datepicker.dates['eu'] = {
- days: ['Igandea', 'Astelehena', 'Asteartea', 'Asteazkena', 'Osteguna', 'Ostirala', 'Larunbata'],
- daysShort: ['Ig', 'Al', 'Ar', 'Az', 'Og', 'Ol', 'Lr'],
- daysMin: ['Ig', 'Al', 'Ar', 'Az', 'Og', 'Ol', 'Lr'],
- months: ['Urtarrila', 'Otsaila', 'Martxoa', 'Apirila', 'Maiatza', 'Ekaina', 'Uztaila', 'Abuztua', 'Iraila', 'Urria', 'Azaroa', 'Abendua'],
- monthsShort: ['Urt', 'Ots', 'Mar', 'Api', 'Mai', 'Eka', 'Uzt', 'Abu', 'Ira', 'Urr', 'Aza', 'Abe'],
- today: "Gaur",
- monthsTitle: "Hilabeteak",
- clear: "Ezabatu",
- weekStart: 1,
- format: "yyyy/mm/dd"
- };
-}(jQuery));
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fa.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fa.js
deleted file mode 100755
index 6503c85dd..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fa.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Persian translation for bootstrap-datepicker
- * Mostafa Rokooie
- */
-;(function($){
- $.fn.datepicker.dates['fa'] = {
- days: ["یک‌شنبه", "دوشنبه", "سه‌شنبه", "چهارشنبه", "پنج‌شنبه", "جمعه", "شنبه", "یک‌شنبه"],
- daysShort: ["یک", "دو", "سه", "چهار", "پنج", "جمعه", "شنبه", "یک"],
- daysMin: ["ی", "د", "س", "چ", "پ", "ج", "ش", "ی"],
- months: ["ژانویه", "Ùوریه", "مارس", "آوریل", "مه", "ژوئن", "ژوئیه", "اوت", "سپتامبر", "اکتبر", "نوامبر", "دسامبر"],
- monthsShort: ["ژان", "Ùور", "مار", "آور", "مه", "ژون", "Ú˜ÙˆÛŒ", "اوت", "سپت", "اکت", "نوا", "دسا"],
- today: "امروز",
- clear: "پاک کن",
- weekStart: 1,
- format: "yyyy/mm/dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fi.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fi.js
deleted file mode 100755
index 220f6b2bf..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fi.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Finnish translation for bootstrap-datepicker
- * Jaakko Salonen
- */
-;(function($){
- $.fn.datepicker.dates['fi'] = {
- days: ["sunnuntai", "maanantai", "tiistai", "keskiviikko", "torstai", "perjantai", "lauantai"],
- daysShort: ["sun", "maa", "tii", "kes", "tor", "per", "lau"],
- daysMin: ["su", "ma", "ti", "ke", "to", "pe", "la"],
- months: ["tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesäkuu", "heinäkuu", "elokuu", "syyskuu", "lokakuu", "marraskuu", "joulukuu"],
- monthsShort: ["tam", "hel", "maa", "huh", "tou", "kes", "hei", "elo", "syy", "lok", "mar", "jou"],
- today: "tänään",
- clear: "Tyhjennä",
- weekStart: 1,
- format: "d.m.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fo.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fo.js
deleted file mode 100755
index eaada077b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fo.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Faroese translation for bootstrap-datepicker
- * Theodor Johannesen
- */
-;(function($){
- $.fn.datepicker.dates['fo'] = {
- days: ["Sunnudagur", "Mánadagur", "Týsdagur", "Mikudagur", "Hósdagur", "FrÃggjadagur", "Leygardagur"],
- daysShort: ["Sun", "Mán", "Týs", "Mik", "Hós", "FrÃ", "Ley"],
- daysMin: ["Su", "Má", "Tý", "Mi", "Hó", "Fr", "Le"],
- months: ["Januar", "Februar", "Marts", "AprÃl", "Mei", "Juni", "Juli", "August", "Septembur", "Oktobur", "Novembur", "Desembur"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Des"],
- today: "Ã Dag",
- clear: "Reinsa"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr-CH.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr-CH.js
deleted file mode 100755
index 79b5026f0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr-CH.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * French (Switzerland) translation for bootstrap-datepicker
- * Christoph Jossi
- * Based on
- * French translation for bootstrap-datepicker
- * Nico Mollet
- */
-;(function($){
- $.fn.datepicker.dates['fr'] = {
- days: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"],
- daysShort: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam"],
- daysMin: ["D", "L", "Ma", "Me", "J", "V", "S"],
- months: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"],
- monthsShort: ["Jan", "Fév", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc"],
- today: "Aujourd'hui",
- monthsTitle: "Mois",
- clear: "Effacer",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr.js
deleted file mode 100755
index df65ed683..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.fr.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * French translation for bootstrap-datepicker
- * Nico Mollet
- */
-;(function($){
- $.fn.datepicker.dates['fr'] = {
- days: ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"],
- daysShort: ["dim.", "lun.", "mar.", "mer.", "jeu.", "ven.", "sam."],
- daysMin: ["d", "l", "ma", "me", "j", "v", "s"],
- months: ["janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre"],
- monthsShort: ["janv.", "févr.", "mars", "avril", "mai", "juin", "juil.", "août", "sept.", "oct.", "nov.", "déc."],
- today: "Aujourd'hui",
- monthsTitle: "Mois",
- clear: "Effacer",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.gl.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.gl.js
deleted file mode 100755
index 592ce0045..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.gl.js
+++ /dev/null
@@ -1,13 +0,0 @@
-;(function($){
- $.fn.datepicker.dates['gl'] = {
- days: ["Domingo", "Luns", "Martes", "Mércores", "Xoves", "Venres", "Sábado"],
- daysShort: ["Dom", "Lun", "Mar", "Mér", "Xov", "Ven", "Sáb"],
- daysMin: ["Do", "Lu", "Ma", "Me", "Xo", "Ve", "Sa"],
- months: ["Xaneiro", "Febreiro", "Marzo", "Abril", "Maio", "Xuño", "Xullo", "Agosto", "Setembro", "Outubro", "Novembro", "Decembro"],
- monthsShort: ["Xan", "Feb", "Mar", "Abr", "Mai", "Xun", "Xul", "Ago", "Sep", "Out", "Nov", "Dec"],
- today: "Hoxe",
- clear: "Limpar",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.he.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.he.js
deleted file mode 100755
index 2e17393b1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.he.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Hebrew translation for bootstrap-datepicker
- * Sagie Maoz
- */
-;(function($){
- $.fn.datepicker.dates['he'] = {
- days: ["ר×שון", "×©× ×™", "שלישי", "רביעי", "חמישי", "שישי", "שבת", "ר×שון"],
- daysShort: ["×", "ב", "×’", "ד", "×”", "ו", "ש", "×"],
- daysMin: ["×", "ב", "×’", "ד", "×”", "ו", "ש", "×"],
- months: ["×™× ×•×ר", "פברו×ר", "מרץ", "×פריל", "מ××™", "×™×•× ×™", "יולי", "×וגוסט", "ספטמבר", "×וקטובר", "× ×•×‘×ž×‘×¨", "דצמבר"],
- monthsShort: ["×™× ×•", "פבר", "מרץ", "×פר", "מ××™", "×™×•× ", "יול", "×וג", "ספט", "×וק", "× ×•×‘", "דצמ"],
- today: "היו×",
- rtl: true
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hi.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hi.js
deleted file mode 100755
index c15b485e0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hi.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Hindi translation for bootstrap-datepicker
- * Visar Uruqi
- */
-; (function($){
- $.fn.datepicker.dates['hi'] = {
- days: ["रविवार", "सोमवार", "मंगलवार", "बà¥à¤§à¤µà¤¾à¤°", "गà¥à¤°à¥à¤µà¤¾à¤°", "शà¥à¤•à¥à¤°à¤µà¤¾à¤°", "शनिवार"],
- daysShort: ["सूरà¥à¤¯", "सोम", "मंगल", "बà¥à¤§", "गà¥à¤°à¥", "शà¥à¤•à¥à¤°", "शनि"],
- daysMin: ["र", "सो", "मं", "बà¥", "गà¥", "शà¥", "श"],
- months: ["जनवरी", "फ़रवरी", "मारà¥à¤š", "अपà¥à¤°à¥ˆà¤²", "मई", "जून", "जà¥à¤²à¤¾à¤ˆ", "अगसà¥à¤¤", "सितमà¥à¤¬à¤°", "अकà¥à¤Ÿà¥‚बर", "नवंबर", "दिसमà¥à¤¬à¤°"],
- monthsShort: ["जन", "फ़रवरी", "मारà¥à¤š", "अपà¥à¤°à¥ˆà¤²", "मई", "जून", "जà¥à¤²à¤¾à¤ˆ", "अगसà¥à¤¤", "सितं", "अकà¥à¤Ÿà¥‚बर", "नवं", "दिसमà¥à¤¬à¤°"],
- today: "आज",
- monthsTitle: "महीने",
- clear: "साफ",
- weekStart: 1,
- format: "dd / mm / yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hr.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hr.js
deleted file mode 100755
index ec72952af..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hr.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Croatian localisation
- */
-;(function($){
- $.fn.datepicker.dates['hr'] = {
- days: ["Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "ÄŒetvrtak", "Petak", "Subota"],
- daysShort: ["Ned", "Pon", "Uto", "Sri", "ÄŒet", "Pet", "Sub"],
- daysMin: ["Ne", "Po", "Ut", "Sr", "ÄŒe", "Pe", "Su"],
- months: ["SijeÄanj", "VeljaÄa", "Ožujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"],
- monthsShort: ["Sij", "Velj", "Ožu", "Tra", "Svi", "Lip", "Srp", "Kol", "Ruj", "Lis", "Stu", "Pro"],
- today: "Danas"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hu.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hu.js
deleted file mode 100755
index 03a36ee8a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hu.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Hungarian translation for bootstrap-datepicker
- * Sotus László
- */
-;(function($){
- $.fn.datepicker.dates['hu'] = {
- days: ["vasárnap", "hétfő", "kedd", "szerda", "csütörtök", "péntek", "szombat"],
- daysShort: ["vas", "hét", "ked", "sze", "csü", "pén", "szo"],
- daysMin: ["V", "H", "K", "Sze", "Cs", "P", "Szo"],
- months: ["január", "február", "március", "április", "május", "június", "július", "augusztus", "szeptember", "október", "november", "december"],
- monthsShort: ["jan", "feb", "már", "ápr", "máj", "jún", "júl", "aug", "sze", "okt", "nov", "dec"],
- today: "ma",
- weekStart: 1,
- clear: "töröl",
- titleFormat: "yyyy. MM",
- format: "yyyy.mm.dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hy.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hy.js
deleted file mode 100755
index a67c1b281..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.hy.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Armenian translation for bootstrap-datepicker
- * Hayk Chamyan
- */
-;(function($){
- $.fn.datepicker.dates['hy'] = {
- days: ["Ô¿Õ«Ö€Õ¡Õ¯Õ«", "ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«", "ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«", "Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«", "Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«", "ÕˆÖ‚Ö€Õ¢Õ¡Õ©", "Õ‡Õ¡Õ¢Õ¡Õ©"],
- daysShort: ["Ô¿Õ«Ö€", "ÔµÖ€Õ¯", "ÔµÖ€Õ¥", "Õ‰Õ¸Ö€", "Õ€Õ«Õ¶", "ÕˆÖ‚Ö€Õ¢", "Õ‡Õ¡Õ¢"],
- daysMin: ["Ô¿Õ«", "ÔµÕ¯", "ÔµÖ„", "Õ‰Õ¸", "Õ€Õ«", "ÕˆÖ‚", "Õ‡Õ¡"],
- months: ["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€", "Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€", "Õ„Õ¡Ö€Õ¿", "Ô±ÕºÖ€Õ«Õ¬", "Õ„Õ¡ÕµÕ«Õ½", "Õ€Õ¸Ö‚Õ¶Õ«Õ½", "Õ€Õ¸Ö‚Õ¬Õ«Õ½", "Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½", "ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€", "Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€", "Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€", "Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€"],
- monthsShort: ["Õ€Õ¶Õ¾", "Õ“Õ¥Õ¿", "Õ„Õ¡Ö€", "Ô±ÕºÖ€", "Õ„Õ¡Õµ", "Õ€Õ¸Ö‚Õ¶", "Õ€Õ¸Ö‚Õ¬", "Õ•Õ£Õ½", "ÕÕ¥Õº", "Õ€Õ¸Õ¯", "Õ†Õ¸Õµ", "Ô´Õ¥Õ¯"],
- today: "Ô±ÕµÕ½Ö…Ö€",
- clear: "Õ‹Õ¶Õ»Õ¥Õ¬",
- format: "dd.mm.yyyy",
- weekStart: 1,
- monthsTitle: 'Ô±Õ´Õ«Õ½Õ¶Õ§Ö€'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.id.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.id.js
deleted file mode 100755
index 832045ac6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.id.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Bahasa translation for bootstrap-datepicker
- * Azwar Akbar
- */
-;(function($){
- $.fn.datepicker.dates['id'] = {
- days: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"],
- daysShort: ["Mgu", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"],
- daysMin: ["Mg", "Sn", "Sl", "Ra", "Ka", "Ju", "Sa"],
- months: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"],
- today: "Hari Ini",
- clear: "Kosongkan"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.is.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.is.js
deleted file mode 100755
index 2eef5e129..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.is.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Icelandic translation for bootstrap-datepicker
- * Hinrik Örn Sigurðsson
- */
-;(function($){
- $.fn.datepicker.dates['is'] = {
- days: ["Sunnudagur", "Mánudagur", "Þriðjudagur", "Miðvikudagur", "Fimmtudagur", "Föstudagur", "Laugardagur"],
- daysShort: ["Sun", "Mán", "Þri", "Mið", "Fim", "Fös", "Lau"],
- daysMin: ["Su", "Má", "Þr", "Mi", "Fi", "Fö", "La"],
- months: ["Janúar", "Febrúar", "Mars", "AprÃl", "MaÃ", "JúnÃ", "JúlÃ", "Ãgúst", "September", "Október", "Nóvember", "Desember"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "MaÃ", "Jún", "Júl", "Ãgú", "Sep", "Okt", "Nóv", "Des"],
- today: "Ã Dag"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it-CH.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it-CH.js
deleted file mode 100755
index b4496aa9c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it-CH.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Italian (Switzerland) translation for bootstrap-datepicker
- * Christoph Jossi
- * Based on
- * Italian translation for bootstrap-datepicker
- * Enrico Rubboli
- */
-;(function($){
- $.fn.datepicker.dates['it'] = {
- days: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"],
- daysShort: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"],
- daysMin: ["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa"],
- months: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"],
- monthsShort: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"],
- today: "Oggi",
- clear: "Cancella",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it.js
deleted file mode 100755
index 1722031db..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.it.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Italian translation for bootstrap-datepicker
- * Enrico Rubboli
- */
-;(function($){
- $.fn.datepicker.dates['it'] = {
- days: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"],
- daysShort: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"],
- daysMin: ["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa"],
- months: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"],
- monthsShort: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"],
- today: "Oggi",
- monthsTitle: "Mesi",
- clear: "Cancella",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ja.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ja.js
deleted file mode 100755
index c64a61472..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ja.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Japanese translation for bootstrap-datepicker
- * Norio Suzuki
- */
-;(function($){
- $.fn.datepicker.dates['ja'] = {
- days: ["日曜", "月曜", "ç«æ›œ", "水曜", "木曜", "金曜", "土曜"],
- daysShort: ["æ—¥", "月", "ç«", "æ°´", "木", "金", "土"],
- daysMin: ["æ—¥", "月", "ç«", "æ°´", "木", "金", "土"],
- months: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
- monthsShort: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
- today: "今日",
- format: "yyyy/mm/dd",
- titleFormat: "yyyy年mm月",
- clear: "クリア"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ka.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ka.js
deleted file mode 100755
index c49e4533d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ka.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Georgian translation for bootstrap-datepicker
- * Levan Melikishvili
- */
-;(function($){
- $.fn.datepicker.dates['ka'] = {
- days: ["კვირáƒ", "áƒáƒ შáƒáƒ‘áƒáƒ—ი", "სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი", "áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი", "ხუთშáƒáƒ‘áƒáƒ—ი", "პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი", "შáƒáƒ‘áƒáƒ—ი"],
- daysShort: ["კვი", "áƒáƒ შ", "სáƒáƒ›", "áƒáƒ—ხ", "ხუთ", "პáƒáƒ ", "შáƒáƒ‘"],
- daysMin: ["კვ", "áƒáƒ ", "სáƒ", "áƒáƒ—", "ხუ", "პáƒ", "შáƒ"],
- months: ["იáƒáƒœáƒ•áƒáƒ ი", "თებერვáƒáƒšáƒ˜", "მáƒáƒ ტი", "áƒáƒžáƒ ილი", "მáƒáƒ˜áƒ¡áƒ˜", "ივნისი", "ივლისი", "áƒáƒ’ვისტáƒ", "სექტემბერი", "áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი", "ნáƒáƒ”მბერი", "დეკემბერი"],
- monthsShort: ["იáƒáƒœ", "თებ", "მáƒáƒ ", "áƒáƒžáƒ ", "მáƒáƒ˜", "ივნ", "ივლ", "áƒáƒ’ვ", "სექ", "áƒáƒ¥áƒ¢", "ნáƒáƒ”", "დეკ"],
- today: "დღეს",
- clear: "გáƒáƒ¡áƒ£áƒ¤áƒ—áƒáƒ•áƒ”ბáƒ",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kh.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kh.js
deleted file mode 100755
index 2c9eb0f72..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kh.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Cambodia (Khmer) translation for bootstrap-datepicker
- * Lytay TOUCH
- *
- * DEPRECATED: This language code 'kh' is deprecated and will be removed in 2.0.
- * Khmer support is now in a 'km' translation file to follow the ISO language
- * code - http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
- */
-;(function($){
- $.fn.datepicker.dates['kh'] = {
- days: ["អាទិážáŸ’áž™", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រហស្បážáž·áŸ", "សុក្រ", "សៅរáŸ"],
- daysShort: ["អា.áž‘áž·", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រ.áž ", "សុក្រ", "សៅរáŸ"],
- daysMin: ["អា.áž‘áž·", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រ.áž ", "សុក្រ", "សៅរáŸ"],
- months: ["មករា", "កុម្ភះ", "មិនា", "មáŸážŸáž¶", "ឧសភា", "មិážáž»áž“ា", "កក្កដា", "សីហា", "កញ្ញា", "ážáž»áž›áž¶", "វិច្ឆិកា", "ធ្នូ"],
- monthsShort: ["មករា", "កុម្ភះ", "មិនា", "មáŸážŸáž¶", "ឧសភា", "មិážáž»áž“ា", "កក្កដា", "សីហា", "កញ្ញា", "ážáž»áž›áž¶", "វិច្ឆិកា", "ធ្នូ"],
- today: "ážáŸ’ងៃនáŸáŸ‡",
- clear: "សំអាáž"
- };
-
- $.fn.datepicker.deprecated('The language code "kh" is deprecated and will be removed in 2.0. For Khmer support use "km" instead.');
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kk.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kk.js
deleted file mode 100755
index 9ffa8ca11..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kk.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Kazakh translation for bootstrap-datepicker
- * Yerzhan Tolekov
- */
-;(function($){
- $.fn.datepicker.dates['kk'] = {
- days: ["ЖекÑенбі", "ДүйÑенбі", "СейÑенбі", "СәрÑенбі", "БейÑенбі", "Жұма", "Сенбі"],
- daysShort: ["Жек", "Дүй", "Сей", "Сәр", "Бей", "Жұм", "Сен"],
- daysMin: ["Жк", "ДÑ", "СÑ", "Ср", "БÑ", "Жм", "Сн"],
- months: ["Қаңтар", "Ðқпан", "Ðаурыз", "Сәуір", "Мамыр", "МауÑым", "Шілде", "Тамыз", "Қыркүйек", "Қазан", "Қараша", "ЖелтоқÑан"],
- monthsShort: ["Қаң", "Ðқп", "Ðау", "Сәу", "Мам", "Мау", "Шіл", "Там", "Қыр", "Қаз", "Қар", "Жел"],
- today: "Бүгін",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.km.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.km.js
deleted file mode 100755
index 8a71c8efc..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.km.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Khmer translation for bootstrap-datepicker
- * This is the Updated Version of: https://github.com/uxsolutions/bootstrap-datepicker/blob/71308d42cce9524284c50c6fac50422d1790ac0f/js/locales/bootstrap-datepicker.kh.js
- */
-;(function($){
- $.fn.datepicker.dates['km'] = {
- days: ["អាទិážáŸ’áž™", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រហស្បážáž·áŸ", "សុក្រ", "សៅរáŸ"],
- daysShort: ["អា.áž‘áž·", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រ.áž ", "សុក្រ", "សៅរáŸ"],
- daysMin: ["អា.áž‘áž·", "ចន្ទ", "អង្គារ", "ពុធ", "ព្រ.áž ", "សុក្រ", "សៅរáŸ"],
- months: ["មករា", "កុម្ភះ", "មិនា", "មáŸážŸáž¶", "ឧសភា", "មិážáž»áž“ា", "កក្កដា", "សីហា", "កញ្ញា", "ážáž»áž›áž¶", "វិច្ឆិកា", "ធ្នូ"],
- monthsShort: ["មករា", "កុម្ភះ", "មិនា", "មáŸážŸáž¶", "ឧសភា", "មិážáž»áž“ា", "កក្កដា", "សីហា", "កញ្ញា", "ážáž»áž›áž¶", "វិច្ឆិកា", "ធ្នូ"],
- today: "ážáŸ’ងៃនáŸáŸ‡",
- clear: "សំអាáž"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ko.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ko.js
deleted file mode 100755
index 95514b22e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ko.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Korean translation for bootstrap-datepicker
- * This is a port from https://github.com/moment/moment/blob/develop/src/locale/ko.js
- */
-;(function($){
- $.fn.datepicker.dates['ko'] = {
- days: ["ì¼ìš”ì¼", "월요ì¼", "화요ì¼", "수요ì¼", "목요ì¼", "금요ì¼", "í† ìš”ì¼"],
- daysShort: ["ì¼", "ì›”", "í™”", "수", "목", "금", "í† "],
- daysMin: ["ì¼", "ì›”", "í™”", "수", "목", "금", "í† "],
- months: ["1ì›”", "2ì›”", "3ì›”", "4ì›”", "5ì›”", "6ì›”", "7ì›”", "8ì›”", "9ì›”", "10ì›”", "11ì›”", "12ì›”"],
- monthsShort: ["1ì›”", "2ì›”", "3ì›”", "4ì›”", "5ì›”", "6ì›”", "7ì›”", "8ì›”", "9ì›”", "10ì›”", "11ì›”", "12ì›”"],
- today: "오늘",
- clear: "ì‚ì œ",
- format: "yyyy-mm-dd",
- titleFormat: "yyyyë…„mmì›”",
- weekStart: 0
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kr.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kr.js
deleted file mode 100755
index 8f9cda944..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.kr.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Korean translation for bootstrap-datepicker
- * Gu Youn
- *
- * DEPRECATED: This language code 'kr' is deprecated and will be removed in 2.0.
- * Korean support is now in a 'ko' translation file to follow the ISO language
- * code - http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
- */
-;(function($){
- $.fn.datepicker.dates['kr'] = {
- days: ["ì¼ìš”ì¼", "월요ì¼", "화요ì¼", "수요ì¼", "목요ì¼", "금요ì¼", "í† ìš”ì¼"],
- daysShort: ["ì¼", "ì›”", "í™”", "수", "목", "금", "í† "],
- daysMin: ["ì¼", "ì›”", "í™”", "수", "목", "금", "í† "],
- months: ["1ì›”", "2ì›”", "3ì›”", "4ì›”", "5ì›”", "6ì›”", "7ì›”", "8ì›”", "9ì›”", "10ì›”", "11ì›”", "12ì›”"],
- monthsShort: ["1ì›”", "2ì›”", "3ì›”", "4ì›”", "5ì›”", "6ì›”", "7ì›”", "8ì›”", "9ì›”", "10ì›”", "11ì›”", "12ì›”"]
- };
-
- $.fn.datepicker.deprecated('The language code "kr" is deprecated and will be removed in 2.0. For korean support use "ko" instead.');
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lt.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lt.js
deleted file mode 100755
index 4845f26e6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lt.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Lithuanian translation for bootstrap-datepicker
- * Šarūnas Gliebus
- */
-
-;(function($){
- $.fn.datepicker.dates['lt'] = {
- days: ["Sekmadienis", "Pirmadienis", "Antradienis", "TreÄiadienis", "Ketvirtadienis", "Penktadienis", "Å eÅ¡tadienis"],
- daysShort: ["S", "Pr", "A", "T", "K", "Pn", "Å "],
- daysMin: ["Sk", "Pr", "An", "Tr", "Ke", "Pn", "Å t"],
- months: ["Sausis", "Vasaris", "Kovas", "Balandis", "Gegužė", "Birželis", "Liepa", "Rugpjūtis", "Rugsėjis", "Spalis", "Lapkritis", "Gruodis"],
- monthsShort: ["Sau", "Vas", "Kov", "Bal", "Geg", "Bir", "Lie", "Rugp", "Rugs", "Spa", "Lap", "Gru"],
- today: "Å iandien",
- monthsTitle:"MÄ—nesiai",
- clear:"IÅ¡valyti",
- weekStart: 1,
- format:"yyyy-mm-dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lv.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lv.js
deleted file mode 100755
index 530aa56be..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.lv.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Latvian translation for bootstrap-datepicker
- * Artis Avotins
- */
-
-;(function($){
- $.fn.datepicker.dates['lv'] = {
- days: ["Svētdiena", "Pirmdiena", "Otrdiena", "Trešdiena", "Ceturtdiena", "Piektdiena", "Sestdiena"],
- daysShort: ["Sv", "P", "O", "T", "C", "Pk", "S"],
- daysMin: ["Sv", "Pr", "Ot", "Tr", "Ce", "Pk", "Se"],
- months: ["JanvÄris", "FebruÄris", "Marts", "AprÄ«lis", "Maijs", "JÅ«nijs", "JÅ«lijs", "Augusts", "Septembris", "Oktobris", "Novembris", "Decembris"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mai", "JÅ«n", "JÅ«l", "Aug", "Sep", "Okt", "Nov", "Dec"],
- monthsTitle: "Mēneši",
- today: "Å odien",
- clear: "Nodzēst",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.me.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.me.js
deleted file mode 100755
index e581325d3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.me.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Montenegrin translation for bootstrap-datepicker
- * Miodrag NikaÄ
- */
-;(function($){
- $.fn.datepicker.dates['me'] = {
- days: ["Nedjelja","Ponedjeljak", "Utorak", "Srijeda", "ÄŒetvrtak", "Petak", "Subota"],
- daysShort: ["Ned", "Pon", "Uto", "Sri", "ÄŒet", "Pet", "Sub"],
- daysMin: ["Ne", "Po", "Ut", "Sr", "ÄŒe", "Pe", "Su"],
- months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
- today: "Danas",
- weekStart: 1,
- clear: "Izbriši",
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mk.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mk.js
deleted file mode 100755
index 2f041baad..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mk.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Macedonian translation for bootstrap-datepicker
- * Marko Aleksic
- */
-;(function($){
- $.fn.datepicker.dates['mk'] = {
- days: ["Ðедела", "Понеделник", "Вторник", "Среда", "Четврток", "Петок", "Сабота"],
- daysShort: ["Ðед", "Пон", "Вто", "Сре", "Чет", "Пет", "Саб"],
- daysMin: ["Ðе", "По", "Ð’Ñ‚", "Ср", "Че", "Пе", "Са"],
- months: ["Јануари", "Февруари", "Март", "Ðприл", "Мај", "Јуни", "Јули", "ÐвгуÑÑ‚", "Септември", "Октомври", "Ðоември", "Декември"],
- monthsShort: ["Јан", "Фев", "Мар", "Ðпр", "Мај", "Јун", "Јул", "Ðвг", "Сеп", "Окт", "Ðое", "Дек"],
- today: "ДенеÑ",
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mn.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mn.js
deleted file mode 100755
index b3a66e8b2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.mn.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Mongolian translation for bootstrap-datepicker
- * Andrey Torsunov
- */
-;(function($){
- $.fn.datepicker.dates['mn'] = {
- days: ["ÐÑм", "Даваа", "ÐœÑгмар", "Лхагва", "ПүрÑв", "БааÑан", "БÑмба"],
- daysShort: ["ÐÑм", "Дав", "ÐœÑг", "Лха", "Пүр", "Баа", "БÑм"],
- daysMin: ["ÐÑ", "Да", "ÐœÑ", "Лх", "Пү", "Ба", "БÑ"],
- months: ["Хулгана", "ҮхÑÑ€", "Бар", "Туулай", "Луу", "Могой", "Морь", "Хонь", "Бич", "Тахиа", "Ðохой", "Гахай"],
- monthsShort: ["Хул", "ҮхÑ", "Бар", "Туу", "Луу", "Мог", "Мор", "Хон", "Бич", "Тах", "Ðох", "Гах"],
- today: "Өнөөдөр",
- clear: "Тодорхой",
- format: "yyyy.mm.dd",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ms.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ms.js
deleted file mode 100755
index 8bb4194ae..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ms.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Malay translation for bootstrap-datepicker
- * Ateman Faiz
- */
-;(function($){
- $.fn.datepicker.dates['ms'] = {
- days: ["Ahad", "Isnin", "Selasa", "Rabu", "Khamis", "Jumaat", "Sabtu"],
- daysShort: ["Aha", "Isn", "Sel", "Rab", "Kha", "Jum", "Sab"],
- daysMin: ["Ah", "Is", "Se", "Ra", "Kh", "Ju", "Sa"],
- months: ["Januari", "Februari", "Mac", "April", "Mei", "Jun", "Julai", "Ogos", "September", "Oktober", "November", "Disember"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ogo", "Sep", "Okt", "Nov", "Dis"],
- today: "Hari Ini",
- clear: "Bersihkan"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl-BE.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl-BE.js
deleted file mode 100755
index aadc374ac..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl-BE.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Belgium-Dutch translation for bootstrap-datepicker
- * Julien Poulin
- */
-;(function($){
- $.fn.datepicker.dates['nl-BE'] = {
- days: ["zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag"],
- daysShort: ["zo", "ma", "di", "wo", "do", "vr", "za"],
- daysMin: ["zo", "ma", "di", "wo", "do", "vr", "za"],
- months: ["januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december"],
- monthsShort: ["jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec"],
- today: "Vandaag",
- monthsTitle: "Maanden",
- clear: "Leegmaken",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl.js
deleted file mode 100755
index bef19cf56..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.nl.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Dutch translation for bootstrap-datepicker
- * Reinier Goltstein
- */
-;(function($){
- $.fn.datepicker.dates['nl'] = {
- days: ["zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag"],
- daysShort: ["zo", "ma", "di", "wo", "do", "vr", "za"],
- daysMin: ["zo", "ma", "di", "wo", "do", "vr", "za"],
- months: ["januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december"],
- monthsShort: ["jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec"],
- today: "Vandaag",
- monthsTitle: "Maanden",
- clear: "Wissen",
- weekStart: 1,
- format: "dd-mm-yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.no.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.no.js
deleted file mode 100755
index 7d1732bd3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.no.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Norwegian translation for bootstrap-datepicker
- * George Gooding
- */
-;(function($){
- $.fn.datepicker.dates['no'] = {
- days: ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],
- daysShort: ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
- daysMin: ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
- months: ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
- monthsShort: ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
- today: 'i dag',
- monthsTitle: 'MÃ¥neder',
- clear: 'Nullstill',
- weekStart: 1,
- format: 'dd.mm.yyyy'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.oc.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.oc.js
deleted file mode 100755
index fada007e1..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.oc.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Occitan translation for bootstrap-datepicker
- */
-;(function($){
- $.fn.datepicker.dates['oc'] = {
- days: ["Dimenge", "Diluns", "Dimars", "Dimècres", "Dijòus", "Divendres", "Dissabte"],
- daysShort: ["Dim", "Dil", "Dmr", "Dmc", "Dij", "Div", "Dis"],
- daysMin: ["dg", "dl", "dr", "dc", "dj", "dv", "ds"],
- months: ["Genièr", "Febrièr", "Març", "Abrial", "Mai", "Junh", "Julhet", "Agost", "Setembre", "Octobre", "Novembre", "Decembre"],
- monthsShort: ["Gen", "Feb", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Oct", "Nov", "Dec"],
- today: "Uèi",
- monthsTitle: "Meses",
- clear: "Escafar",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pl.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pl.js
deleted file mode 100755
index 26c7ae860..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pl.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Polish translation for bootstrap-datepicker
- * Robert
- */
-;(function($){
- $.fn.datepicker.dates['pl'] = {
- days: ["Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota"],
- daysShort: ["Niedz.", "Pon.", "Wt.", "Åšr.", "Czw.", "PiÄ…t.", "Sob."],
- daysMin: ["Ndz.", "Pn.", "Wt.", "Åšr.", "Czw.", "Pt.", "Sob."],
- months: ["Styczeń", "Luty", "Marzec", "Kwiecień", "Maj", "Czerwiec", "Lipiec", "Sierpień", "Wrzesień", "Październik", "Listopad", "Grudzień"],
- monthsShort: ["Sty.", "Lut.", "Mar.", "Kwi.", "Maj", "Cze.", "Lip.", "Sie.", "Wrz.", "Paź.", "Lis.", "Gru."],
- today: "Dzisiaj",
- weekStart: 1,
- clear: "Wyczyść",
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt-BR.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt-BR.js
deleted file mode 100755
index 852160bb9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt-BR.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Brazilian translation for bootstrap-datepicker
- * Cauan Cabral
- */
-;(function($){
- $.fn.datepicker.dates['pt-BR'] = {
- days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"],
- daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
- daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa"],
- months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
- monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
- today: "Hoje",
- monthsTitle: "Meses",
- clear: "Limpar",
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt.js
deleted file mode 100755
index 011e01e07..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.pt.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Portuguese translation for bootstrap-datepicker
- * Original code: Cauan Cabral
- * Tiago Melo
- */
-;(function($){
- $.fn.datepicker.dates['pt'] = {
- days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"],
- daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
- daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa"],
- months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
- monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
- today: "Hoje",
- monthsTitle: "Meses",
- clear: "Limpar",
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ro.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ro.js
deleted file mode 100755
index 6637e9920..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ro.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Romanian translation for bootstrap-datepicker
- * Cristian Vasile
- */
-;(function($){
- $.fn.datepicker.dates['ro'] = {
- days: ["Duminică", "Luni", "Marţi", "Miercuri", "Joi", "Vineri", "Sâmbătă"],
- daysShort: ["Dum", "Lun", "Mar", "Mie", "Joi", "Vin", "Sâm"],
- daysMin: ["Du", "Lu", "Ma", "Mi", "Jo", "Vi", "Sâ"],
- months: ["Ianuarie", "Februarie", "Martie", "Aprilie", "Mai", "Iunie", "Iulie", "August", "Septembrie", "Octombrie", "Noiembrie", "Decembrie"],
- monthsShort: ["Ian", "Feb", "Mar", "Apr", "Mai", "Iun", "Iul", "Aug", "Sep", "Oct", "Nov", "Dec"],
- today: "Astăzi",
- clear: "Șterge",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs-latin.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs-latin.js
deleted file mode 100755
index 48e7ceaea..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs-latin.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Serbian latin translation for bootstrap-datepicker
- * Bojan Milosavlević
- *
- * DEPRECATED: This language code 'rs-latin' is deprecated (invalid serbian language code) and will be removed in 2.0.
- */
-;(function($){
- $.fn.datepicker.dates['rs-latin'] = {
- days: ["Nedelja","Ponedeljak", "Utorak", "Sreda", "ÄŒetvrtak", "Petak", "Subota"],
- daysShort: ["Ned", "Pon", "Uto", "Sre", "ÄŒet", "Pet", "Sub"],
- daysMin: ["N", "Po", "U", "Sr", "Č", "Pe", "Su"],
- months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
- today: "Danas",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-
- $.fn.datepicker.deprecated('This language code "rs-latin" is deprecated (invalid serbian language code) and will be removed in 2.0. For Serbian latin support use "sr-latin" instead.');
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs.js
deleted file mode 100755
index 96ef40396..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.rs.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Serbian cyrillic translation for bootstrap-datepicker
- * Bojan Milosavlević
- *
- * DEPRECATED: This language code 'rs' is deprecated (invalid serbian language code) and will be removed in 2.0.
- */
-;(function($){
- $.fn.datepicker.dates['rs'] = {
- days: ["Ðедеља","Понедељак", "Уторак", "Среда", "Четвртак", "Петак", "Субота"],
- daysShort: ["Ðед", "Пон", "Уто", "Сре", "Чет", "Пет", "Суб"],
- daysMin: ["Ð", "По", "У", "Ср", "Ч", "Пе", "Су"],
- months: ["Јануар", "Фебруар", "Март", "Ðприл", "Мај", "Јун", "Јул", "ÐвгуÑÑ‚", "Септембар", "Октобар", "Ðовембар", "Децембар"],
- monthsShort: ["Јан", "Феб", "Мар", "Ðпр", "Мај", "Јун", "Јул", "Ðвг", "Сеп", "Окт", "Ðов", "Дец"],
- today: "ДанаÑ",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-
- $.fn.datepicker.deprecated('This language code "rs" is deprecated (invalid serbian language code) and will be removed in 2.0. For Serbian support use "sr" instead.');
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ru.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ru.js
deleted file mode 100755
index 0c793ce6e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ru.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Russian translation for bootstrap-datepicker
- * Victor Taranenko
- */
-;(function($){
- $.fn.datepicker.dates['ru'] = {
- days: ["ВоÑкреÑенье", "Понедельник", "Вторник", "Среда", "Четверг", "ПÑтница", "Суббота"],
- daysShort: ["Ð’Ñк", "Пнд", "Ð’Ñ‚Ñ€", "Срд", "Чтв", "Птн", "Суб"],
- daysMin: ["Ð’Ñ", "Пн", "Ð’Ñ‚", "Ср", "Чт", "Пт", "Сб"],
- months: ["Январь", "Февраль", "Март", "Ðпрель", "Май", "Июнь", "Июль", "ÐвгуÑÑ‚", "СентÑбрь", "ОктÑбрь", "ÐоÑбрь", "Декабрь"],
- monthsShort: ["Янв", "Фев", "Мар", "Ðпр", "Май", "Июн", "Июл", "Ðвг", "Сен", "Окт", "ÐоÑ", "Дек"],
- today: "СегоднÑ",
- clear: "ОчиÑтить",
- format: "dd.mm.yyyy",
- weekStart: 1,
- monthsTitle: 'МеÑÑцы'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.si.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.si.js
deleted file mode 100755
index 806e580d9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.si.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Sinhala translation for bootstrap-datepicker
- * Chanaka Fernando
- */
-;(function($){
- $.fn.datepicker.dates['si'] = {
- days: ["ඉරිදà·", "සඳුදà·", "අඟහරුවà·à¶¯à·", "බදà·à¶¯à·", "බ්â€à¶»à·„ස්පà¶à·’න්දà·", "සිකුරà·à¶¯à·", "සෙනසුරà·à¶¯à·"],
- daysShort: ["ඉරි", "සඳු", "අඟ", "බදà·", "බ්â€à¶»à·„", "සිකු", "සෙන"],
- daysMin: ["ඉ", "à·ƒ", "අ", "බ", "බ්â€à¶»", "සි", "සෙ"],
- months: ["ජනවà·à¶»à·’", "පෙබරවà·à¶»à·’", "මà·à¶»à·Šà¶à·”", "අප්â€à¶»à·šà¶½à·Š", "මà·à¶ºà·’", "ජුනි", "ජූලි", "අගà·à·ƒà·Šà¶à·”", "à·ƒà·à¶´à·Šà¶à·à¶¸à·Šà¶¶à¶»à·Š", "ඔක්à¶à·à¶¶à¶»à·Š", "නොවà·à¶¸à·Šà¶¶à¶»à·Š", "දෙසà·à¶¸à·Šà¶¶à¶»à·Š"],
- monthsShort: ["ජන", "පෙබ", "මà·à¶»à·Š", "අප්â€à¶»à·š", "මà·à¶ºà·’", "ජුනි", "ජූලි", "අගà·", "à·ƒà·à¶´à·Š", "ඔක්", "නොවà·", "දෙසà·"],
- today: "අද",
- monthsTitle: "මà·à·ƒ",
- clear: "මකන්න",
- weekStart: 0,
- format: "yyyy-mm-dd"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sk.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sk.js
deleted file mode 100755
index 388138689..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sk.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Slovak translation for bootstrap-datepicker
- * Marek Lichtner
- * Fixes by Michal Remiš
- */
-;(function($){
- $.fn.datepicker.dates["sk"] = {
- days: ["Nedeľa", "Pondelok", "Utorok", "Streda", "Štvrtok", "Piatok", "Sobota"],
- daysShort: ["Ned", "Pon", "Uto", "Str", "Å tv", "Pia", "Sob"],
- daysMin: ["Ne", "Po", "Ut", "St", "Å t", "Pia", "So"],
- months: ["Január", "Február", "Marec", "AprÃl", "Máj", "Jún", "Júl", "August", "September", "Október", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Máj", "Jún", "Júl", "Aug", "Sep", "Okt", "Nov", "Dec"],
- today: "Dnes",
- clear: "Vymazať",
- weekStart: 1,
- format: "d.m.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sl.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sl.js
deleted file mode 100755
index 4a33748d2..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sl.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Slovene translation for bootstrap-datepicker
- * Gregor Rudolf
- */
-;(function($){
- $.fn.datepicker.dates['sl'] = {
- days: ["Nedelja", "Ponedeljek", "Torek", "Sreda", "ÄŒetrtek", "Petek", "Sobota"],
- daysShort: ["Ned", "Pon", "Tor", "Sre", "ÄŒet", "Pet", "Sob"],
- daysMin: ["Ne", "Po", "To", "Sr", "ÄŒe", "Pe", "So"],
- months: ["Januar", "Februar", "Marec", "April", "Maj", "Junij", "Julij", "Avgust", "September", "Oktober", "November", "December"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
- today: "Danes",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sq.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sq.js
deleted file mode 100755
index 744069213..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sq.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Albanian translation for bootstrap-datepicker
- * Tomor Pupovci
- */
-;(function($){
- $.fn.datepicker.dates['sq'] = {
- days: ["E Diel", "E Hënë", "E Martē", "E Mërkurë", "E Enjte", "E Premte", "E Shtunë"],
- daysShort: ["Die", "Hën", "Mar", "Mër", "Enj", "Pre", "Shtu"],
- daysMin: ["Di", "Hë", "Ma", "Më", "En", "Pr", "Sht"],
- months: ["Janar", "Shkurt", "Mars", "Prill", "Maj", "Qershor", "Korrik", "Gusht", "Shtator", "Tetor", "Nëntor", "Dhjetor"],
- monthsShort: ["Jan", "Shk", "Mar", "Pri", "Maj", "Qer", "Korr", "Gu", "Sht", "Tet", "Nën", "Dhjet"],
- monthsTitle: "Muaj",
- today: "Sot",
- weekStart: 1,
- format: "dd/mm/yyyy",
- clear: "Pastro"
- };
-}(jQuery));
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr-latin.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr-latin.js
deleted file mode 100755
index 058796336..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr-latin.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Serbian latin translation for bootstrap-datepicker
- * Bojan Milosavlević
- */
-;(function($){
- $.fn.datepicker.dates['sr-latin'] = {
- days: ["Nedelja","Ponedeljak", "Utorak", "Sreda", "ÄŒetvrtak", "Petak", "Subota"],
- daysShort: ["Ned", "Pon", "Uto", "Sre", "ÄŒet", "Pet", "Sub"],
- daysMin: ["N", "Po", "U", "Sr", "Č", "Pe", "Su"],
- months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"],
- monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
- today: "Danas",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr.js
deleted file mode 100755
index a0dcb83f3..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sr.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Serbian cyrillic translation for bootstrap-datepicker
- * Bojan Milosavlević
- */
-;(function($){
- $.fn.datepicker.dates['sr'] = {
- days: ["Ðедеља","Понедељак", "Уторак", "Среда", "Четвртак", "Петак", "Субота"],
- daysShort: ["Ðед", "Пон", "Уто", "Сре", "Чет", "Пет", "Суб"],
- daysMin: ["Ð", "По", "У", "Ср", "Ч", "Пе", "Су"],
- months: ["Јануар", "Фебруар", "Март", "Ðприл", "Мај", "Јун", "Јул", "ÐвгуÑÑ‚", "Септембар", "Октобар", "Ðовембар", "Децембар"],
- monthsShort: ["Јан", "Феб", "Мар", "Ðпр", "Мај", "Јун", "Јул", "Ðвг", "Сеп", "Окт", "Ðов", "Дец"],
- today: "ДанаÑ",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sv.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sv.js
deleted file mode 100755
index 53c0c0d2f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sv.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Swedish translation for bootstrap-datepicker
- * Patrik Ragnarsson
- */
-;(function($){
- $.fn.datepicker.dates['sv'] = {
- days: ["söndag", "måndag", "tisdag", "onsdag", "torsdag", "fredag", "lördag"],
- daysShort: ["sön", "mån", "tis", "ons", "tor", "fre", "lör"],
- daysMin: ["sö", "må", "ti", "on", "to", "fr", "lö"],
- months: ["januari", "februari", "mars", "april", "maj", "juni", "juli", "augusti", "september", "oktober", "november", "december"],
- monthsShort: ["jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec"],
- today: "Idag",
- format: "yyyy-mm-dd",
- weekStart: 1,
- clear: "Rensa"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sw.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sw.js
deleted file mode 100755
index 0e447b83f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.sw.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Swahili translation for bootstrap-datepicker
- * Edwin Mugendi
- * Source: http://scriptsource.org/cms/scripts/page.php?item_id=entry_detail&uid=xnfaqyzcku
- */
-;(function($){
- $.fn.datepicker.dates['sw'] = {
- days: ["Jumapili", "Jumatatu", "Jumanne", "Jumatano", "Alhamisi", "Ijumaa", "Jumamosi"],
- daysShort: ["J2", "J3", "J4", "J5", "Alh", "Ij", "J1"],
- daysMin: ["2", "3", "4", "5", "A", "I", "1"],
- months: ["Januari", "Februari", "Machi", "Aprili", "Mei", "Juni", "Julai", "Agosti", "Septemba", "Oktoba", "Novemba", "Desemba"],
- monthsShort: ["Jan", "Feb", "Mac", "Apr", "Mei", "Jun", "Jul", "Ago", "Sep", "Okt", "Nov", "Des"],
- today: "Leo"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ta.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ta.js
deleted file mode 100755
index 85e765688..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.ta.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Tamil translation for bootstrap-datepicker
- * Abubacker Siddik A
- */
-;(function($){
- $.fn.datepicker.dates['ta'] = {
- days: ["ஞாயிறà¯", "திஙà¯à®•à®³à¯", "செவà¯à®µà®¾à®¯à¯", "பà¯à®¤à®©à¯", "வியாழனà¯", "வெளà¯à®³à®¿", "சனி"],
- daysShort: ["ஞாயி", "திஙà¯", "செவà¯", "பà¯à®¤", "வியா", "வெளà¯", "சனி"],
- daysMin: ["ஞா", "தி", "செ", "பà¯", "வி", "வெ", "ச"],
- months: ["ஜனவரி", "பிபà¯à®°à®µà®°à®¿", "மாரà¯à®šà¯", "à®à®ªà¯à®°à®²à¯", "மே", "ஜூனà¯", "ஜூலை", "ஆகஸà¯à®Ÿà¯", "செபà¯à®Ÿà®®à¯à®ªà®°à¯", "அகà¯à®Ÿà¯‹à®ªà®°à¯", "நவமà¯à®ªà®°à¯", "டிசமà¯à®ªà®°à¯"],
- monthsShort: ["ஜன", "பிபà¯", "மாரà¯", "à®à®ªà¯", "மே", "ஜூனà¯", "ஜூலை", "ஆக", "செபà¯", "அகà¯", "நவ", "டிச"],
- today: "இனà¯à®±à¯",
- monthsTitle: "மாதஙà¯à®•à®³à¯",
- clear: "நீகà¯à®•à¯",
- weekStart: 1,
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tg.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tg.js
deleted file mode 100755
index 26863a067..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tg.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Tajik (cyrillic) translation for bootstrap-datepicker
- * Bakhtiyor Bahritidinov
- * Orif N. Jr.
- */
-;(function($){
- $.fn.datepicker.dates['tg'] = {
- days: ["Якшанбе", "Душанбе", "Сешанбе", "Чоршанбе", "Панҷшанбе", "Ҷумъа", "Шанбе"],
- daysShort: ["Яшб", "Дшб", "Сшб", "Чшб", "Пшб", "Ҷум", "Шнб"],
- daysMin: ["Яш", "Дш", "Сш", "Чш", "Пш", "Ҷм", "Шб"],
- months: ["Январ", "Феврал", "Март", "Ðпрел", "Май", "Июн", "Июл", "ÐвгуÑÑ‚", "СентÑбр", "ОктÑбр", "ÐоÑбр", "Декабр"],
- monthsShort: ["Янв", "Фев", "Мар", "Ðпр", "Май", "Июн", "Июл", "Ðвг", "Сен", "Окт", "ÐоÑ", "Дек"],
- today: "Имрӯз",
- monthsTitle: "Моҳҳо",
- clear: "Тоза намудан",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.th.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.th.js
deleted file mode 100755
index 562b063c5..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.th.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Thai translation for bootstrap-datepicker
- * Suchau Jiraprapot
- */
-;(function($){
- $.fn.datepicker.dates['th'] = {
- days: ["à¸à¸²à¸—ิตย์", "จันทร์", "à¸à¸±à¸‡à¸„าร", "พุธ", "พฤหัส", "ศุà¸à¸£à¹Œ", "เสาร์", "à¸à¸²à¸—ิตย์"],
- daysShort: ["à¸à¸²", "จ", "à¸", "พ", "พฤ", "ศ", "ส", "à¸à¸²"],
- daysMin: ["à¸à¸²", "จ", "à¸", "พ", "พฤ", "ศ", "ส", "à¸à¸²"],
- months: ["มà¸à¸£à¸²à¸„ม", "à¸à¸¸à¸¡à¸ าพันธ์", "มีนาคม", "เมษายน", "พฤษภาคม", "มิถุนายน", "à¸à¸£à¸à¸Žà¸²à¸„ม", "สิงหาคม", "à¸à¸±à¸™à¸¢à¸²à¸¢à¸™", "ตุลาคม", "พฤศจิà¸à¸²à¸¢à¸™", "ธันวาคม"],
- monthsShort: ["ม.ค.", "à¸.พ.", "มี.ค.", "เม.ย.", "พ.ค.", "มิ.ย.", "à¸.ค.", "ส.ค.", "à¸.ย.", "ต.ค.", "พ.ย.", "ธ.ค."],
- today: "วันนี้"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tk.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tk.js
deleted file mode 100755
index b06b6dc8a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tk.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Turkmen translation for bootstrap-datepicker
- * N'Bayramberdiyev
- */
-;(function($){
- $.fn.datepicker.dates['tk'] = {
- days: ["ÃekÅŸenbe", "DuÅŸenbe", "SiÅŸenbe", "ÇarÅŸenbe", "PenÅŸenbe", "Anna", "Åženbe"],
- daysShort: ["Ãek", "DuÅŸ", "SiÅŸ", "Çar", "Pen", "Ann", "Åžen"],
- daysMin: ["Ãe", "Du", "Si", "Ça", "Pe", "An", "Åže"],
- months: ["Ãanwar", "Fewral", "Mart", "Aprel", "Maý", "Iýun", "Iýul", "Awgust", "Sentýabr", "Oktýabr", "Noýabr", "Dekabr"],
- monthsShort: ["Ãan", "Few", "Mar", "Apr", "Maý", "Iýn", "Iýl", "Awg", "Sen", "Okt", "Noý", "Dek"],
- today: "Bu gün",
- monthsTitle: "Aýlar",
- clear: "Aýyr",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tr.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tr.js
deleted file mode 100755
index 0c8b0de4d..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.tr.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Turkish translation for bootstrap-datepicker
- * Serkan Algur
- */
-;(function($){
- $.fn.datepicker.dates['tr'] = {
- days: ["Pazar", "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi"],
- daysShort: ["Pz", "Pzt", "Sal", "Çrş", "Prş", "Cu", "Cts"],
- daysMin: ["Pz", "Pzt", "Sa", "Çr", "Pr", "Cu", "Ct"],
- months: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"],
- monthsShort: ["Oca", "Åžub", "Mar", "Nis", "May", "Haz", "Tem", "AÄŸu", "Eyl", "Eki", "Kas", "Ara"],
- today: "Bugün",
- clear: "Temizle",
- weekStart: 1,
- format: "dd.mm.yyyy"
- };
-}(jQuery));
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uk.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uk.js
deleted file mode 100755
index 1c4cf15aa..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uk.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Ukrainian translation for bootstrap-datepicker
- * Igor Polynets
- */
-;(function($){
- $.fn.datepicker.dates['uk'] = {
- days: ["ÐеділÑ", "Понеділок", "Вівторок", "Середа", "Четвер", "П'ÑтницÑ", "Субота"],
- daysShort: ["Ðед", "Пнд", "Ð’Ñ‚Ñ€", "Срд", "Чтв", "Птн", "Суб"],
- daysMin: ["Ðд", "Пн", "Ð’Ñ‚", "Ср", "Чт", "Пт", "Сб"],
- months: ["Cічень", "Лютий", "Березень", "Квітень", "Травень", "Червень", "Липень", "Серпень", "ВереÑень", "Жовтень", "ЛиÑтопад", "Грудень"],
- monthsShort: ["Січ", "Лют", "Бер", "Кві", "Тра", "Чер", "Лип", "Сер", "Вер", "Жов", "ЛиÑ", "Гру"],
- today: "Сьогодні",
- clear: "ОчиÑтити",
- format: "dd.mm.yyyy",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-cyrl.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-cyrl.js
deleted file mode 100755
index ce55543c6..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-cyrl.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Uzbek latin translation for bootstrap-datepicker
- * Kakhramonov Javlonbek
- */
-;(function($){
- $.fn.datepicker.dates['uz-cyrl'] = {
- days: ["Якшанба", "Душанба", "Сешанба", "Чоршанба", "Пайшанба", "Жума", "Шанба"],
- daysShort: ["Якш", "Ду", "Се", "Чор", "Пай", "Жу", "Ша"],
- daysMin: ["Як", "Ду", "Се", "Чо", "Па", "Жу", "Ша"],
- months: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь"],
- monthsShort: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек"],
- today: "Бугун",
- clear: "Ўчириш",
- format: "dd.mm.yyyy",
- weekStart: 1,
- monthsTitle: 'Ойлар'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-latn.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-latn.js
deleted file mode 100755
index 70fda6790..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.uz-latn.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Uzbek latin translation for bootstrap-datepicker
- * Kakhramonov Javlonbek
- */
-;(function($){
- $.fn.datepicker.dates['uz-latn'] = {
- days: ["Yakshanba", "Dushanba", "Seshanba", "Chorshanba", "Payshanba", "Juma", "Shanba"],
- daysShort: ["Yak", "Du", "Se", "Chor", "Pay", "Ju", "Sha"],
- daysMin: ["Ya", "Du", "Se", "Cho", "Pa", "Ju", "Sha"],
- months: ["Yanvar", "Fevral", "Mart", "Aprel", "May", "Iyun", "Iyul", "Avgust", "Sentabr", "Oktabr", "Noyabr", "Dekabr"],
- monthsShort: ["Yan", "Fev", "Mar", "Apr", "May", "Iyn", "Iyl", "Avg", "Sen", "Okt", "Noy", "Dek"],
- today: "Bugun",
- clear: "O'chirish",
- format: "dd.mm.yyyy",
- weekStart: 1,
- monthsTitle: 'Oylar'
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.vi.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.vi.js
deleted file mode 100755
index 0e8afc1b5..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.vi.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Vietnamese translation for bootstrap-datepicker
- * An Vo
- */
-;(function($){
- $.fn.datepicker.dates['vi'] = {
- days: ["Chủ nháºt", "Thứ hai", "Thứ ba", "Thứ tÆ°", "Thứ năm", "Thứ sáu", "Thứ bảy"],
- daysShort: ["CN", "Thứ 2", "Thứ 3", "Thứ 4", "Thứ 5", "Thứ 6", "Thứ 7"],
- daysMin: ["CN", "T2", "T3", "T4", "T5", "T6", "T7"],
- months: ["Tháng 1", "Tháng 2", "Tháng 3", "Tháng 4", "Tháng 5", "Tháng 6", "Tháng 7", "Tháng 8", "Tháng 9", "Tháng 10", "Tháng 11", "Tháng 12"],
- monthsShort: ["Th1", "Th2", "Th3", "Th4", "Th5", "Th6", "Th7", "Th8", "Th9", "Th10", "Th11", "Th12"],
- today: "Hôm nay",
- clear: "Xóa",
- format: "dd/mm/yyyy"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-CN.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-CN.js
deleted file mode 100755
index 67726c242..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-CN.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Simplified Chinese translation for bootstrap-datepicker
- * Yuan Cheung
- */
-;(function($){
- $.fn.datepicker.dates['zh-CN'] = {
- days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期å…"],
- daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周å…"],
- daysMin: ["æ—¥", "一", "二", "三", "å››", "五", "å…"],
- months: ["一月", "二月", "三月", "四月", "五月", "å…月", "七月", "八月", "ä¹æœˆ", "å月", "å一月", "å二月"],
- monthsShort: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
- today: "今天",
- monthsTitle: "选择月份",
- clear: "清除",
- format: "yyyy-mm-dd",
- titleFormat: "yyyy年mm月",
- weekStart: 1
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-TW.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-TW.js
deleted file mode 100755
index ff241b56f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/js/locales/bootstrap-datepicker.zh-TW.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Traditional Chinese translation for bootstrap-datepicker
- * Rung-Sheng Jang
- * FrankWu Fix more appropriate use of Traditional Chinese habit
- */
-;(function($){
- $.fn.datepicker.dates['zh-TW'] = {
- days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期å…"],
- daysShort: ["週日", "週一", "週二", "週三", "週四", "週五", "週å…"],
- daysMin: ["æ—¥", "一", "二", "三", "å››", "五", "å…"],
- months: ["一月", "二月", "三月", "四月", "五月", "å…月", "七月", "八月", "ä¹æœˆ", "å月", "å一月", "å二月"],
- monthsShort: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
- today: "今天",
- format: "yyyy年mm月dd日",
- weekStart: 1,
- clear: "清除"
- };
-}(jQuery));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/.csslintrc b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/.csslintrc
deleted file mode 100755
index 005b86236..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/.csslintrc
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "adjoining-classes": false,
- "box-sizing": false,
- "box-model": false,
- "compatible-vendor-prefixes": false,
- "floats": false,
- "font-sizes": false,
- "gradients": false,
- "important": false,
- "known-properties": false,
- "outline-none": false,
- "qualified-headings": false,
- "regex-selectors": false,
- "shorthand": false,
- "text-indent": false,
- "unique-headings": false,
- "universal-selector": false,
- "unqualified-attributes": false
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker.less
deleted file mode 100755
index b1f818370..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker.less
+++ /dev/null
@@ -1,242 +0,0 @@
-.datepicker {
- padding: 4px;
- .border-radius(@baseBorderRadius);
- &-inline {
- width: 220px;
- }
- direction: ltr;
- &-rtl {
- direction: rtl;
- &.dropdown-menu { left: auto; }
- table tr td span {
- float: right;
- }
- }
- &-dropdown {
- top: 0;
- left: 0;
- &:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid @grayLight;
- border-top: 0;
- border-bottom-color: rgba(0,0,0,.2);
- position: absolute;
- }
- &:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid @white;
- border-top: 0;
- position: absolute;
- }
- &.datepicker-orient-left:before { left: 6px; }
- &.datepicker-orient-left:after { left: 7px; }
- &.datepicker-orient-right:before { right: 6px; }
- &.datepicker-orient-right:after { right: 7px; }
- &.datepicker-orient-bottom:before { top: -7px; }
- &.datepicker-orient-bottom:after { top: -6px; }
- &.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid @grayLight;
- }
- &.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid @white;
- }
- }
- table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- }
- td, th {
- text-align: center;
- width: 20px;
- height: 20px;
- .border-radius(4px);
-
- border: none;
- }
- // Inline display inside a table presents some problems with
- // border and background colors.
- .table-striped & table tr {
- td, th {
- background-color: transparent;
- }
- }
- table tr td {
- &.day:hover,
- &.day.focused {
- background: @grayLighter;
- cursor: pointer;
- }
- &.old,
- &.new {
- color: @grayLight;
- }
- &.disabled,
- &.disabled:hover {
- background: none;
- color: @grayLight;
- cursor: default;
- }
- &.highlighted {
- background: @infoBackground;
- border-radius: 0;
- }
- &.today,
- &.today:hover,
- &.today.disabled,
- &.today.disabled:hover {
- @todayBackground: lighten(@orange, 30%);
- .buttonBackground(@todayBackground, spin(@todayBackground, 20));
- color: #000;
- }
- &.today:hover:hover { // Thank bootstrap 2.0 for this selector...
- // TODO: Bump min BS to 2.1, use @textColor in buttonBackground above
- color: #000;
- }
- &.today.active:hover {
- color: #fff;
- }
- &.range,
- &.range:hover,
- &.range.disabled,
- &.range.disabled:hover {
- background: @grayLighter;
- .border-radius(0);
- }
- &.range.today,
- &.range.today:hover,
- &.range.today.disabled,
- &.range.today.disabled:hover {
- @todayBackground: mix(@orange, @grayLighter, 50%);
- .buttonBackground(@todayBackground, spin(@todayBackground, 20));
- .border-radius(0);
- }
- &.selected,
- &.selected:hover,
- &.selected.disabled,
- &.selected.disabled:hover {
- .buttonBackground(lighten(@grayLight, 10), darken(@grayLight, 10));
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- &.active,
- &.active:hover,
- &.active.disabled,
- &.active.disabled:hover {
- .buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- .border-radius(4px);
- &:hover,
- &.focused {
- background: @grayLighter;
- }
- &.disabled,
- &.disabled:hover {
- background: none;
- color: @grayLight;
- cursor: default;
- }
- &.active,
- &.active:hover,
- &.active.disabled,
- &.active.disabled:hover {
- .buttonBackground(@btnPrimaryBackground, spin(@btnPrimaryBackground, 20));
- color: #fff;
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- &.old,
- &.new {
- color: @grayLight;
- }
- }
- }
-
- .datepicker-switch {
- width: 145px;
- }
-
- .datepicker-switch,
- .prev,
- .next,
- tfoot tr th {
- cursor: pointer;
- &:hover {
- background: @grayLighter;
- }
- }
-
- .prev, .next {
- &.disabled {
- visibility: hidden;
- }
- }
-
- // Basic styling for calendar-week cells
- .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
- }
-}
-.input-append,
-.input-prepend {
- &.date .add-on {
- cursor: pointer;
-
- i {
- margin-top: 3px;
- }
- }
-}
-.input-daterange {
- input {
- text-align:center;
- }
- input:first-child {
- .border-radius(3px 0 0 3px);
- }
- input:last-child {
- .border-radius(0 3px 3px 0);
- }
- .add-on {
- display: inline-block;
- width: auto;
- min-width: 16px;
- height: @baseLineHeight;
- padding: 4px 5px;
- font-weight: normal;
- line-height: @baseLineHeight;
- text-align: center;
- text-shadow: 0 1px 0 @white;
- vertical-align: middle;
- background-color: @grayLighter;
- border: 1px solid #ccc;
- margin-left: -5px;
- margin-right: -5px;
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker3.less b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker3.less
deleted file mode 100755
index 91e818112..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/less/datepicker3.less
+++ /dev/null
@@ -1,257 +0,0 @@
-.datepicker {
- border-radius: @border-radius-base;
- &-inline {
- width: 220px;
- }
- direction: ltr;
- &-rtl {
- direction: rtl;
- &.dropdown-menu { left: auto; }
- table tr td span {
- float: right;
- }
- }
- &-dropdown {
- top: 0;
- left: 0;
- padding: 4px;
- &:before {
- content: '';
- display: inline-block;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-bottom: 7px solid @dropdown-border;
- border-top: 0;
- border-bottom-color: rgba(0,0,0,.2);
- position: absolute;
- }
- &:after {
- content: '';
- display: inline-block;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- border-bottom: 6px solid @dropdown-bg;
- border-top: 0;
- position: absolute;
- }
- &.datepicker-orient-left:before { left: 6px; }
- &.datepicker-orient-left:after { left: 7px; }
- &.datepicker-orient-right:before { right: 6px; }
- &.datepicker-orient-right:after { right: 7px; }
- &.datepicker-orient-bottom:before { top: -7px; }
- &.datepicker-orient-bottom:after { top: -6px; }
- &.datepicker-orient-top:before {
- bottom: -7px;
- border-bottom: 0;
- border-top: 7px solid @dropdown-border;
- }
- &.datepicker-orient-top:after {
- bottom: -6px;
- border-bottom: 0;
- border-top: 6px solid @dropdown-bg;
- }
- }
- table {
- margin: 0;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- tr {
- td, th {
- text-align: center;
- width: 30px;
- height: 30px;
- border-radius: 4px;
- border: none;
- }
- }
- }
- // Inline display inside a table presents some problems with
- // border and background colors.
- .table-striped & table tr {
- td, th {
- background-color: transparent;
- }
- }
- table tr td {
- &.old,
- &.new {
- color: @btn-link-disabled-color;
- }
- &.day:hover,
- &.focused {
- background: @gray-lighter;
- cursor: pointer;
- }
- &.disabled,
- &.disabled:hover {
- background: none;
- color: @btn-link-disabled-color;
- cursor: default;
- }
- &.highlighted {
- @highlighted-bg: @state-info-bg;
- .button-variant(#000, @highlighted-bg, darken(@highlighted-bg, 20%));
- border-radius: 0;
-
- &.focused {
- background: darken(@highlighted-bg, 10%);
- }
-
- &.disabled,
- &.disabled:active {
- background: @highlighted-bg;
- color: @btn-link-disabled-color;
- }
- }
- &.today {
- @today-bg: lighten(orange, 30%);
- .button-variant(#000, @today-bg, darken(@today-bg, 20%));
-
- &.focused {
- background: darken(@today-bg, 10%);
- }
-
- &.disabled,
- &.disabled:active {
- background: @today-bg;
- color: @btn-link-disabled-color;
- }
- }
- &.range {
- @range-bg: @gray-lighter;
- .button-variant(#000, @range-bg, darken(@range-bg, 20%));
- border-radius: 0;
-
- &.focused {
- background: darken(@range-bg, 10%);
- }
-
- &.disabled,
- &.disabled:active {
- background: @range-bg;
- color: @btn-link-disabled-color;
- }
- }
- &.range.highlighted {
- @range-highlighted-bg: mix(@state-info-bg, @gray-lighter, 50%);
- .button-variant(#000, @range-highlighted-bg, darken(@range-highlighted-bg, 20%));
-
- &.focused {
- background: darken(@range-highlighted-bg, 10%);
- }
-
- &.disabled,
- &.disabled:active {
- background: @range-highlighted-bg;
- color: @btn-link-disabled-color;
- }
- }
- &.range.today {
- @range-today-bg: mix(orange, @gray-lighter, 50%);
- .button-variant(#000, @range-today-bg, darken(@range-today-bg, 20%));
-
- &.disabled,
- &.disabled:active {
- background: @range-today-bg;
- color: @btn-link-disabled-color;
- }
- }
- &.selected,
- &.selected.highlighted {
- .button-variant(#fff, @gray-light, @gray);
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- &.active,
- &.active.highlighted {
- .button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- span {
- display: block;
- width: 23%;
- height: 54px;
- line-height: 54px;
- float: left;
- margin: 1%;
- cursor: pointer;
- border-radius: 4px;
- &:hover,
- &.focused {
- background: @gray-lighter;
- }
- &.disabled,
- &.disabled:hover {
- background: none;
- color: @btn-link-disabled-color;
- cursor: default;
- }
- &.active,
- &.active:hover,
- &.active.disabled,
- &.active.disabled:hover {
- .button-variant(@btn-primary-color, @btn-primary-bg, @btn-primary-border);
- text-shadow: 0 -1px 0 rgba(0,0,0,.25);
- }
- &.old,
- &.new {
- color: @btn-link-disabled-color;
- }
- }
- }
-
- .datepicker-switch {
- width: 145px;
- }
-
- .datepicker-switch,
- .prev,
- .next,
- tfoot tr th {
- cursor: pointer;
- &:hover {
- background: @gray-lighter;
- }
- }
-
- .prev, .next {
- &.disabled {
- visibility: hidden;
- }
- }
-
- // Basic styling for calendar-week cells
- .cw {
- font-size: 10px;
- width: 12px;
- padding: 0 2px 0 5px;
- vertical-align: middle;
- }
-}
-.input-group.date .input-group-addon {
- cursor: pointer;
-}
-.input-daterange {
- width: 100%;
- input {
- text-align: center;
- }
- input:first-child {
- border-radius: 3px 0 0 3px;
- }
- input:last-child {
- border-radius: 0 3px 3px 0;
- }
- .input-group-addon {
- width: auto;
- min-width: 16px;
- padding: 4px 5px;
- line-height: @line-height-base;
- border-width: 1px 0;
- margin-left: -5px;
- margin-right: -5px;
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/package.json b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/package.json
deleted file mode 100755
index 8605e6b87..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/package.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "name": "bootstrap-datepicker",
- "description": "A datepicker for Bootstrap",
- "version": "1.9.0",
- "license": "Apache-2.0",
- "keywords": [
- "datepicker",
- "bootstrap"
- ],
- "main": "./dist/js/bootstrap-datepicker.js",
- "files": [
- "build",
- "dist",
- "js/**/*.js",
- "less/*.less",
- "LICENSE"
- ],
- "homepage": "https://github.com/uxsolutions/bootstrap-datepicker",
- "author": "Andrew Rowls ",
- "scripts": {
- "test": "grunt test"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/uxsolutions/bootstrap-datepicker.git"
- },
- "dependencies": {
- "jquery": ">=1.7.1 <4.0.0"
- },
- "devDependencies": {
- "grunt": "^1.0.4",
- "grunt-banner": "~0.6.0",
- "grunt-contrib-clean": "^1.0.0",
- "grunt-contrib-compress": "^1.5.0",
- "grunt-contrib-concat": "^1.0.1",
- "grunt-contrib-csslint": "^2.0.0",
- "grunt-contrib-cssmin": "^1.0.2",
- "grunt-contrib-jshint": "^1.1.0",
- "grunt-contrib-less": "^1.4.0",
- "grunt-contrib-qunit": "^1.2.0",
- "grunt-contrib-uglify": "^2.0.0",
- "grunt-jscs": "^3.0.1",
- "grunt-string-replace": "^1.3.1",
- "load-grunt-tasks": "^3.5.2",
- "phantomjs-prebuilt": "~2.1.16",
- "time-grunt": "^1.4.0"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/README.md b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/README.md
deleted file mode 100755
index dc3ce9d80..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-Unit tests, written with [QUnit](https://qunitjs.com), are used to
-expose bugs for squashing, prevent bugs from respawning, and suppress new
-bugs when adding new features and making changes.
-
-# Running the tests
-
-The simplest way to run the tests is to open `tests/tests.html` in your browser.
-The test suites will automatically run themselves and present their results.
-
-To run the tests from the command line (after running jshint and jscs, which is
-recommended), install Grunt and run the `test` task from anywhere within the
-repo:
-
- $ grunt test
-
-# Adding tests
-
-Tests go in js files in the `tests/suites/` directory tree. QUnit organizes
-tests into suites called "modules"; there is one module per js file. If the
-tests you are adding do not fit into an existing module, create a new one at
-`tests/suites/.js`, where `` is a broad yet
-descriptive name for the suite. If tests have many year-specific cases (ie,
-behave differently in leap years vs normal years, or have specific buggy
-behavior in a certain year), create the module in a new directory,
-`tests/suites//.js`, where `` is the decriptive
-name and `` is the four-digit year the tests pertain to.
-
-In order for new tests to be run, they must be imported into `tests/tests.html`.
-Find the script includes headed by the html comment ``, and
-add a new one to the list which includes the new js files.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/coverage.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/coverage.js
deleted file mode 100755
index 2e5704bc8..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/coverage.js
+++ /dev/null
@@ -1,48 +0,0 @@
-(function(){
- //we want this at global scope so outside callers can find it. In a more realistic implementation we
- //should probably put it in a namespace.
- window.getCoverageByLine = function(silent) {
- var key = null;
- var lines = null;
- var source = null;
- //look for code coverage data
- if (typeof window._$jscoverage === 'object') {
- for (key in _$jscoverage) {}
- lines = _$jscoverage[key];
- }
-
- if (!lines && !silent) {
- console.log('code coverage data is NOT available');
- }
-
- return { 'key': key, 'lines': lines };
- };
-
- QUnit.done = function(t) {
- var cvgInfo = getCoverageByLine(true);
- if (!!cvgInfo.key) {
- var testableLines = 0;
- var testedLines = 0;
- var untestableLines = 0;
- for (lineIdx in cvgInfo.lines) {
- var cvg = cvgInfo.lines[lineIdx];
- if (typeof cvg === 'number') {
- testableLines += 1;
- if (cvg > 0) {
- testedLines += 1;
- }
- } else {
- untestableLines += 1;
- }
- }
- var coverage = '' + Math.floor(100 * testedLines / testableLines) + '%';
-
- var result = document.getElementById('qunit-testresult');
- if (result != null) {
- result.innerHTML = result.innerHTML + ' ' + coverage + ' test coverage of ' + cvgInfo.key;
- } else {
- console.log('can\'t find test-result element to update');
- }
- }
- };
-}());
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/jquery-1.7.1.min.js b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/jquery-1.7.1.min.js
deleted file mode 100755
index 198b3ff07..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/assets/jquery-1.7.1.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! jQuery v1.7.1 jquery.com | jquery.org/license */
-(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(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;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};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=m.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.7.1",length:0,size:function(){return this.length},toArray:function(){return F.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)?E.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(),A.add(a);return this},eq:function(a){a=+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(F.apply(this,arguments),"slice",F.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:E,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(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},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},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(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(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))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(w,"ms-").replace(v,x)},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(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;ca ",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.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:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o=""+"",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([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&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.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}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),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,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;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},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};
-f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.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]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),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]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.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!!m(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 bc[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=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&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=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null: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=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=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(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c ",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.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:[]}},o.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&&(o.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.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="
";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[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}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.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 m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0: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=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-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(S(c[0])||S(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);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).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 V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,""," "],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""," "],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"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){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):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.clean(arguments);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.clean(arguments));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))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>$2>");try{for(var c=0,d=this.length;c1&&l0?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,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},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=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),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]===""&&!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=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.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.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,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=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,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&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/timezone.html b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/timezone.html
deleted file mode 100755
index 5cb15fa41..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/tests/timezone.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/yarn.lock b/front/lib/AdminLTE/bower_components/bootstrap-datepicker/yarn.lock
deleted file mode 100755
index 8ca0bec29..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-datepicker/yarn.lock
+++ /dev/null
@@ -1,2879 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-JSV@^4.0.x:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/JSV/-/JSV-4.0.2.tgz#d077f6825571f82132f9dffaed587b4029feff57"
- integrity sha1-0Hf2glVx+CEy+d/67Vh7QCn+/1c=
-
-abbrev@1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
- integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
-
-ajv@^4.9.1:
- version "4.11.8"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
- integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=
- dependencies:
- co "^4.6.0"
- json-stable-stringify "^1.0.1"
-
-ajv@^6.5.5:
- version "6.10.0"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1"
- integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==
- dependencies:
- fast-deep-equal "^2.0.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-align-text@^0.1.1, align-text@^0.1.3:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
- integrity sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=
- dependencies:
- kind-of "^3.0.2"
- longest "^1.0.1"
- repeat-string "^1.5.2"
-
-amdefine@>=0.0.4:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
- integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
- integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
-
-ansi-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
- integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
-
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
- integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
- dependencies:
- color-convert "^1.9.0"
-
-ansi-styles@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178"
- integrity sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=
-
-aproba@^1.0.3:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
- integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
-
-archiver-utils@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-1.3.0.tgz#e50b4c09c70bf3d680e32ff1b7994e9f9d895174"
- integrity sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=
- dependencies:
- glob "^7.0.0"
- graceful-fs "^4.1.0"
- lazystream "^1.0.0"
- lodash "^4.8.0"
- normalize-path "^2.0.0"
- readable-stream "^2.0.0"
-
-archiver@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/archiver/-/archiver-1.3.0.tgz#4f2194d6d8f99df3f531e6881f14f15d55faaf22"
- integrity sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=
- dependencies:
- archiver-utils "^1.3.0"
- async "^2.0.0"
- buffer-crc32 "^0.2.1"
- glob "^7.0.0"
- lodash "^4.8.0"
- readable-stream "^2.0.0"
- tar-stream "^1.5.0"
- walkdir "^0.0.11"
- zip-stream "^1.1.0"
-
-are-we-there-yet@~1.1.2:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21"
- integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
- dependencies:
- delegates "^1.0.0"
- readable-stream "^2.0.6"
-
-argparse@^1.0.2, argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
- integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
- dependencies:
- sprintf-js "~1.0.2"
-
-array-differ@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031"
- integrity sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=
-
-array-find-index@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
- integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=
-
-array-union@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
- integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=
- dependencies:
- array-uniq "^1.0.1"
-
-array-uniq@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
- integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
-
-arrify@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
- integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
-
-asap@~2.0.3:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
- integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
-
-asn1@~0.2.3:
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136"
- integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
- dependencies:
- safer-buffer "~2.1.0"
-
-assert-plus@1.0.0, assert-plus@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
- integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
-
-assert-plus@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
- integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ=
-
-async@0.2.x, async@~0.2.9:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
- integrity sha1-trvgsGdLnXGXCMo43owjfLUmw9E=
-
-async@^1.5.2, async@~1.5.2:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
- integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=
-
-async@^2.0.0:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381"
- integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==
- dependencies:
- lodash "^4.17.11"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
-
-aws-sign2@~0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
- integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8=
-
-aws-sign2@~0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
- integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
-
-aws4@^1.2.1, aws4@^1.8.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f"
- integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==
-
-babel-runtime@^6.9.2:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
- integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4=
- dependencies:
- core-js "^2.4.0"
- regenerator-runtime "^0.11.0"
-
-babylon@^6.8.1:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
- integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
-
-balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
- integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
-
-base64-js@^1.0.2:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3"
- integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
- integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=
- dependencies:
- tweetnacl "^0.14.3"
-
-bl@^1.0.0:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c"
- integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==
- dependencies:
- readable-stream "^2.3.5"
- safe-buffer "^5.1.1"
-
-block-stream@*:
- version "0.0.9"
- resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
- integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=
- dependencies:
- inherits "~2.0.0"
-
-boom@2.x.x:
- version "2.10.1"
- resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
- integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=
- dependencies:
- hoek "2.x.x"
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-browserify-zlib@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d"
- integrity sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=
- dependencies:
- pako "~0.2.0"
-
-buffer-alloc-unsafe@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
- integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==
-
-buffer-alloc@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
- integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==
- dependencies:
- buffer-alloc-unsafe "^1.1.0"
- buffer-fill "^1.0.0"
-
-buffer-crc32@^0.2.1:
- version "0.2.13"
- resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
- integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
-
-buffer-fill@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
- integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
-
-buffer-from@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
- integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
-
-buffer@^5.1.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.2.1.tgz#dd57fa0f109ac59c602479044dca7b8b3d0b71d6"
- integrity sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==
- dependencies:
- base64-js "^1.0.2"
- ieee754 "^1.1.4"
-
-camelcase-keys@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
- integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc=
- dependencies:
- camelcase "^2.0.0"
- map-obj "^1.0.0"
-
-camelcase@^1.0.2:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
- integrity sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=
-
-camelcase@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
- integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
- integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
-
-center-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
- integrity sha1-qg0yYptu6XIgBBHL1EYckHvCt60=
- dependencies:
- align-text "^0.1.3"
- lazy-cache "^1.0.3"
-
-chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@~1.1.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
- integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
- dependencies:
- ansi-styles "^2.2.1"
- escape-string-regexp "^1.0.2"
- has-ansi "^2.0.0"
- strip-ansi "^3.0.0"
- supports-color "^2.0.0"
-
-chalk@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f"
- integrity sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=
- dependencies:
- ansi-styles "~1.0.0"
- has-color "~0.1.0"
- strip-ansi "~0.1.0"
-
-chalk@~2.4.1:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
- integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
- dependencies:
- ansi-styles "^3.2.1"
- escape-string-regexp "^1.0.5"
- supports-color "^5.3.0"
-
-chownr@^1.0.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494"
- integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==
-
-clean-css@~3.4.2:
- version "3.4.28"
- resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.28.tgz#bf1945e82fc808f55695e6ddeaec01400efd03ff"
- integrity sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=
- dependencies:
- commander "2.8.x"
- source-map "0.4.x"
-
-cli-table@~0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23"
- integrity sha1-9TsFJmqLGguTSz0IIebi3FkUriM=
- dependencies:
- colors "1.0.3"
-
-cli@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14"
- integrity sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=
- dependencies:
- exit "0.1.2"
- glob "^7.1.1"
-
-cliui@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
- integrity sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=
- dependencies:
- center-align "^0.1.1"
- right-align "^0.1.1"
- wordwrap "0.0.2"
-
-clone@~2.1.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f"
- integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
- integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
-
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
- integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
-
-coffeescript@~1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/coffeescript/-/coffeescript-1.10.0.tgz#e7aa8301917ef621b35d8a39f348dcdd1db7e33e"
- integrity sha1-56qDAZF+9iGzXYo580jc3R234z4=
-
-color-convert@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
- integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
- dependencies:
- color-name "1.1.3"
-
-color-name@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
-
-colors@0.6.x:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc"
- integrity sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=
-
-colors@1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
- integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=
-
-colors@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
- integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM=
-
-combined-stream@^1.0.5, combined-stream@^1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
- integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
- dependencies:
- delayed-stream "~1.0.0"
-
-commander@2.8.x:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
- integrity sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=
- dependencies:
- graceful-readlink ">= 1.0.0"
-
-commander@~2.9.0:
- version "2.9.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
- integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=
- dependencies:
- graceful-readlink ">= 1.0.0"
-
-comment-parser@^0.3.1:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-0.3.2.tgz#3c03f0776b86a36dfd9a0a2c97c6307f332082fe"
- integrity sha1-PAPwd2uGo239mgosl8YwfzMggv4=
- dependencies:
- readable-stream "^2.0.4"
-
-compress-commons@^1.2.0:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-1.2.2.tgz#524a9f10903f3a813389b0225d27c48bb751890f"
- integrity sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=
- dependencies:
- buffer-crc32 "^0.2.1"
- crc32-stream "^2.0.0"
- normalize-path "^2.0.0"
- readable-stream "^2.0.0"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
-
-concat-stream@1.6.2, concat-stream@^1.4.1:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
- integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
- dependencies:
- buffer-from "^1.0.0"
- inherits "^2.0.3"
- readable-stream "^2.2.2"
- typedarray "^0.0.6"
-
-console-browserify@1.1.x:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
- integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=
- dependencies:
- date-now "^0.1.4"
-
-console-control-strings@^1.0.0, console-control-strings@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
- integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
-
-core-js@^2.4.0:
- version "2.6.5"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.5.tgz#44bc8d249e7fb2ff5d00e0341a7ffb94fbf67895"
- integrity sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
- integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
-
-crc32-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-2.0.0.tgz#e3cdd3b4df3168dd74e3de3fbbcb7b297fe908f4"
- integrity sha1-483TtN8xaN10494/u8t7KX/pCPQ=
- dependencies:
- crc "^3.4.4"
- readable-stream "^2.0.0"
-
-crc@^3.4.4:
- version "3.8.0"
- resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6"
- integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==
- dependencies:
- buffer "^5.1.0"
-
-cryptiles@2.x.x:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
- integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=
- dependencies:
- boom "2.x.x"
-
-csslint@^1.0.0:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/csslint/-/csslint-1.0.5.tgz#19cc3eda322160fd3f7232af1cb2a360e898a2e9"
- integrity sha1-Gcw+2jIhYP0/cjKvHLKjYOiYouk=
- dependencies:
- clone "~2.1.0"
- parserlib "~1.1.1"
-
-cst@^0.4.3:
- version "0.4.10"
- resolved "https://registry.yarnpkg.com/cst/-/cst-0.4.10.tgz#9c05c825290a762f0a85c0aabb8c0fe035ae8516"
- integrity sha512-U5ETe1IOjq2h56ZcBE3oe9rT7XryCH6IKgPMv0L7sSk6w29yR3p5egCK0T3BDNHHV95OoUBgXsqiVG+3a900Ag==
- dependencies:
- babel-runtime "^6.9.2"
- babylon "^6.8.1"
- source-map-support "^0.4.0"
-
-currently-unhandled@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
- integrity sha1-mI3zP+qxke95mmE2nddsF635V+o=
- dependencies:
- array-find-index "^1.0.1"
-
-cycle@1.0.x:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2"
- integrity sha1-IegLK+hYD5i0aPN5QwZisEbDStI=
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=
- dependencies:
- assert-plus "^1.0.0"
-
-date-now@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
- integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=
-
-date-time@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/date-time/-/date-time-1.1.0.tgz#18876d0bda4c19fe70dd3bf4b034f281b12a40b6"
- integrity sha1-GIdtC9pMGf5w3Tv0sDTygbEqQLY=
- dependencies:
- time-zone "^0.1.0"
-
-dateformat@~1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9"
- integrity sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.3.0"
-
-debug@2.6.9:
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-decamelize@^1.0.0, decamelize@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
- integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
-
-decompress-response@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
- integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
- dependencies:
- mimic-response "^1.0.0"
-
-deep-equal@*:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
- integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=
-
-deep-extend@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
- integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
-
-define-properties@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
- integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
- dependencies:
- object-keys "^1.0.12"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
-
-delegates@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
- integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
-
-detect-libc@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-0.2.0.tgz#47fdf567348a17ec25fcbf0b9e446348a76f9fb5"
- integrity sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U=
-
-detect-libc@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
- integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
-
-dom-serializer@0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
- integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==
- dependencies:
- domelementtype "^1.3.0"
- entities "^1.1.1"
-
-domelementtype@1, domelementtype@^1.3.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
- integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
-
-domhandler@2.3:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738"
- integrity sha1-LeWaCCLVAn+r/28DLCsloqir5zg=
- dependencies:
- domelementtype "1"
-
-domutils@1.5:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
- integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=
- dependencies:
- dom-serializer "0"
- domelementtype "1"
-
-ecc-jsbn@~0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
- integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=
- dependencies:
- jsbn "~0.1.0"
- safer-buffer "^2.1.0"
-
-end-of-stream@^1.0.0, end-of-stream@^1.1.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
- integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==
- dependencies:
- once "^1.4.0"
-
-entities@1.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26"
- integrity sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=
-
-entities@^1.1.1:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
- integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
-
-errno@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618"
- integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==
- dependencies:
- prr "~1.0.1"
-
-error-ex@^1.2.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
- dependencies:
- is-arrayish "^0.2.1"
-
-es6-promise@^4.0.3:
- version "4.2.6"
- resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.6.tgz#b685edd8258886365ea62b57d30de28fadcd974f"
- integrity sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==
-
-escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
- integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-
-esprima@^2.6.0:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
- integrity sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=
-
-esprima@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
- integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-
-estraverse@^4.1.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
- integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=
-
-eventemitter2@^0.4.9, eventemitter2@~0.4.13:
- version "0.4.14"
- resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-0.4.14.tgz#8f61b75cde012b2e9eb284d4545583b5643b61ab"
- integrity sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=
-
-exit@0.1.2, exit@0.1.x, exit@~0.1.1, exit@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
- integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
-
-expand-template@^1.0.2:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-1.1.1.tgz#981f188c0c3a87d2e28f559bc541426ff94f21dd"
- integrity sha512-cebqLtV8KOZfw0UI8TEFWxtczxxC1jvyUvx6H4fyp1K1FN7A4Q+uggVUlOsI1K8AGU0rwOGqP8nCapdrw8CYQg==
-
-extend@~3.0.0, extend@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
- integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
-
-extract-zip@^1.6.5:
- version "1.6.7"
- resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9"
- integrity sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=
- dependencies:
- concat-stream "1.6.2"
- debug "2.6.9"
- mkdirp "0.5.1"
- yauzl "2.4.1"
-
-extsprintf@1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
- integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
-
-extsprintf@^1.2.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
- integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
-
-eyes@0.1.x:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0"
- integrity sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=
-
-fast-deep-equal@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
- integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
-
-fast-json-stable-stringify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
- integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
-
-fd-slicer@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
- integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=
- dependencies:
- pend "~1.2.0"
-
-figures@^1.0.0, figures@^1.0.1:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
- integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=
- dependencies:
- escape-string-regexp "^1.0.5"
- object-assign "^4.1.0"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-findup-sync@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.3.0.tgz#37930aa5d816b777c03445e1966cc6790a4c0b16"
- integrity sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=
- dependencies:
- glob "~5.0.0"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
- integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
-
-form-data@~2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
- integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.5"
- mime-types "^2.1.12"
-
-form-data@~2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
- integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.6"
- mime-types "^2.1.12"
-
-fs-constants@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
- integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
-
-fs-extra@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950"
- integrity sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=
- dependencies:
- graceful-fs "^4.1.2"
- jsonfile "^2.1.0"
- klaw "^1.0.0"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
-
-fstream@^1.0.0, fstream@^1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045"
- integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==
- dependencies:
- graceful-fs "^4.1.2"
- inherits "~2.0.0"
- mkdirp ">=0.5 0"
- rimraf "2"
-
-function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-
-gauge@~2.7.3:
- version "2.7.4"
- resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
- integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
- dependencies:
- aproba "^1.0.3"
- console-control-strings "^1.0.0"
- has-unicode "^2.0.0"
- object-assign "^4.1.0"
- signal-exit "^3.0.0"
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wide-align "^1.1.0"
-
-get-stdin@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
- integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=
-
-getobject@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/getobject/-/getobject-0.1.0.tgz#047a449789fa160d018f5486ed91320b6ec7885c"
- integrity sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=
- dependencies:
- assert-plus "^1.0.0"
-
-github-from-package@0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce"
- integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=
-
-glob@^5.0.1, glob@~5.0.0:
- version "5.0.15"
- resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1"
- integrity sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "2 || 3"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.3:
- version "7.1.4"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
- integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@~7.0.0:
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a"
- integrity sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.2"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-graceful-fs@^4.1.0, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
- version "4.1.15"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
- integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
-
-"graceful-readlink@>= 1.0.0":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
- integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=
-
-grunt-banner@~0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/grunt-banner/-/grunt-banner-0.6.0.tgz#3f879021d123fa58a7ba5a0b6fb6be412b5885ac"
- integrity sha1-P4eQIdEj+linuloLb7a+QStYhaw=
- dependencies:
- chalk "^1.1.0"
-
-grunt-cli@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/grunt-cli/-/grunt-cli-1.2.0.tgz#562b119ebb069ddb464ace2845501be97b35b6a8"
- integrity sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=
- dependencies:
- findup-sync "~0.3.0"
- grunt-known-options "~1.1.0"
- nopt "~3.0.6"
- resolve "~1.1.0"
-
-grunt-contrib-clean@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz#564abf2d0378a983a15b9e3f30ee75b738c40638"
- integrity sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=
- dependencies:
- async "^1.5.2"
- rimraf "^2.5.1"
-
-grunt-contrib-compress@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-compress/-/grunt-contrib-compress-1.5.0.tgz#ba5f80e22acf192897ce43cb60250cab2cb1f09b"
- integrity sha512-RcCyetnvTJ7jvnDCSm05wOndAd00HWZTHeVGDVVmCM+K/PEivL0yx8vKyi8uzy0492l2dJgtzR0Ucid7roKg6A==
- dependencies:
- archiver "^1.3.0"
- chalk "^1.1.1"
- lodash "^4.7.0"
- pretty-bytes "^4.0.2"
- stream-buffers "^2.1.0"
- optionalDependencies:
- iltorb "^1.3.10"
-
-grunt-contrib-concat@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/grunt-contrib-concat/-/grunt-contrib-concat-1.0.1.tgz#61509863084e871d7e86de48c015259ed97745bd"
- integrity sha1-YVCYYwhOhx1+ht5IwBUlntl3Rb0=
- dependencies:
- chalk "^1.0.0"
- source-map "^0.5.3"
-
-grunt-contrib-csslint@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-csslint/-/grunt-contrib-csslint-2.0.0.tgz#3129d94dfe507357f23337d24ae9e9aa4b9d57df"
- integrity sha1-MSnZTf5Qc1fyMzfSSunpqkudV98=
- dependencies:
- chalk "^1.0.0"
- csslint "^1.0.0"
- lodash "^4.8.2"
- strip-json-comments "^2.0.1"
-
-grunt-contrib-cssmin@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/grunt-contrib-cssmin/-/grunt-contrib-cssmin-1.0.2.tgz#1734cbd3d84ca7364758b7e58ff18e52aa60bb76"
- integrity sha1-FzTL09hMpzZHWLflj/GOUqpgu3Y=
- dependencies:
- chalk "^1.0.0"
- clean-css "~3.4.2"
- maxmin "^1.1.0"
-
-grunt-contrib-jshint@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-jshint/-/grunt-contrib-jshint-1.1.0.tgz#369d909b2593c40e8be79940b21340850c7939ac"
- integrity sha1-Np2QmyWTxA6L55lAshNAhQx5Oaw=
- dependencies:
- chalk "^1.1.1"
- hooker "^0.2.3"
- jshint "~2.9.4"
-
-grunt-contrib-less@^1.4.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/grunt-contrib-less/-/grunt-contrib-less-1.4.1.tgz#3bbdec0b75d12ceaa55d62943625c0b0861cdf6f"
- integrity sha1-O73sC3XRLOqlXWKUNiXAsIYc328=
- dependencies:
- async "^2.0.0"
- chalk "^1.0.0"
- less "~2.7.1"
- lodash "^4.8.2"
-
-grunt-contrib-qunit@^1.2.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-qunit/-/grunt-contrib-qunit-1.3.0.tgz#9dac628cfd4ec815998633db73b52bdb3ddbc99e"
- integrity sha1-naxijP1OyBWZhjPbc7Ur2z3byZ4=
- dependencies:
- grunt-lib-phantomjs "^1.0.0"
-
-grunt-contrib-uglify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/grunt-contrib-uglify/-/grunt-contrib-uglify-2.3.0.tgz#b3d0260ebdd6cefa12ff2f8e9e1e259f7de4216f"
- integrity sha1-s9AmDr3WzvoS/y+Onh4ln33kIW8=
- dependencies:
- chalk "^1.0.0"
- maxmin "^1.1.0"
- object.assign "^4.0.4"
- uglify-js "~2.8.21"
- uri-path "^1.0.0"
-
-grunt-jscs@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/grunt-jscs/-/grunt-jscs-3.0.1.tgz#1fae50e3e955df9e3a9d9425aec22accae008092"
- integrity sha1-H65Q4+lV3546nZQlrsIqzK4AgJI=
- dependencies:
- hooker "~0.2.3"
- jscs "~3.0.5"
- lodash "~4.6.1"
- vow "~0.4.1"
-
-grunt-known-options@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/grunt-known-options/-/grunt-known-options-1.1.1.tgz#6cc088107bd0219dc5d3e57d91923f469059804d"
- integrity sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==
-
-grunt-legacy-log-utils@~2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz#d2f442c7c0150065d9004b08fd7410d37519194e"
- integrity sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==
- dependencies:
- chalk "~2.4.1"
- lodash "~4.17.10"
-
-grunt-legacy-log@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz#c8cd2c6c81a4465b9bbf2d874d963fef7a59ffb9"
- integrity sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==
- dependencies:
- colors "~1.1.2"
- grunt-legacy-log-utils "~2.0.0"
- hooker "~0.2.3"
- lodash "~4.17.5"
-
-grunt-legacy-util@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz#e10624e7c86034e5b870c8a8616743f0a0845e42"
- integrity sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==
- dependencies:
- async "~1.5.2"
- exit "~0.1.1"
- getobject "~0.1.0"
- hooker "~0.2.3"
- lodash "~4.17.10"
- underscore.string "~3.3.4"
- which "~1.3.0"
-
-grunt-lib-phantomjs@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/grunt-lib-phantomjs/-/grunt-lib-phantomjs-1.1.0.tgz#9e9edcdd9fd2dd40e0c181c94371d572aa5eead2"
- integrity sha1-np7c3Z/S3UDgwYHJQ3HVcqpe6tI=
- dependencies:
- eventemitter2 "^0.4.9"
- phantomjs-prebuilt "^2.1.3"
- rimraf "^2.5.2"
- semver "^5.1.0"
- temporary "^0.0.8"
-
-grunt-string-replace@^1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/grunt-string-replace/-/grunt-string-replace-1.3.1.tgz#633a03bc78482a0e0e1f9df7f645811fc1fbb162"
- integrity sha1-YzoDvHhIKg4OH5339kWBH8H7sWI=
- dependencies:
- async "^2.0.0"
- chalk "^1.0.0"
-
-grunt@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/grunt/-/grunt-1.0.4.tgz#c799883945a53a3d07622e0737c8f70bfe19eb38"
- integrity sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ==
- dependencies:
- coffeescript "~1.10.0"
- dateformat "~1.0.12"
- eventemitter2 "~0.4.13"
- exit "~0.1.1"
- findup-sync "~0.3.0"
- glob "~7.0.0"
- grunt-cli "~1.2.0"
- grunt-known-options "~1.1.0"
- grunt-legacy-log "~2.0.0"
- grunt-legacy-util "~1.1.1"
- iconv-lite "~0.4.13"
- js-yaml "~3.13.0"
- minimatch "~3.0.2"
- mkdirp "~0.5.1"
- nopt "~3.0.6"
- path-is-absolute "~1.0.0"
- rimraf "~2.6.2"
-
-gzip-size@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-1.0.0.tgz#66cf8b101047227b95bace6ea1da0c177ed5c22f"
- integrity sha1-Zs+LEBBHInuVus5uodoMF37Vwi8=
- dependencies:
- browserify-zlib "^0.1.4"
- concat-stream "^1.4.1"
-
-har-schema@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
- integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=
-
-har-schema@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
- integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
-
-har-validator@~4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
- integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio=
- dependencies:
- ajv "^4.9.1"
- har-schema "^1.0.5"
-
-har-validator@~5.1.0:
- version "5.1.3"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
- integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
- dependencies:
- ajv "^6.5.5"
- har-schema "^2.0.0"
-
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
- dependencies:
- ansi-regex "^2.0.0"
-
-has-color@~0.1.0:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f"
- integrity sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
-
-has-symbols@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
- integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
-
-has-unicode@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
- integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
-
-hasha@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/hasha/-/hasha-2.2.0.tgz#78d7cbfc1e6d66303fe79837365984517b2f6ee1"
- integrity sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=
- dependencies:
- is-stream "^1.0.1"
- pinkie-promise "^2.0.0"
-
-hawk@~3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
- integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=
- dependencies:
- boom "2.x.x"
- cryptiles "2.x.x"
- hoek "2.x.x"
- sntp "1.x.x"
-
-hoek@2.x.x:
- version "2.16.3"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
- integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=
-
-hooker@^0.2.3, hooker@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/hooker/-/hooker-0.2.3.tgz#b834f723cc4a242aa65963459df6d984c5d3d959"
- integrity sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=
-
-hosted-git-info@^2.1.4:
- version "2.7.1"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
- integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==
-
-htmlparser2@3.8.3, htmlparser2@3.8.x:
- version "3.8.3"
- resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068"
- integrity sha1-mWwosZFRaovoZQGn15dX5ccMEGg=
- dependencies:
- domelementtype "1"
- domhandler "2.3"
- domutils "1.5"
- entities "1.0"
- readable-stream "1.1"
-
-http-signature@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
- integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=
- dependencies:
- assert-plus "^0.2.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-http-signature@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
- integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=
- dependencies:
- assert-plus "^1.0.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-i@0.3.x:
- version "0.3.6"
- resolved "https://registry.yarnpkg.com/i/-/i-0.3.6.tgz#d96c92732076f072711b6b10fd7d4f65ad8ee23d"
- integrity sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0=
-
-iconv-lite@~0.4.13:
- version "0.4.24"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
- integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
- dependencies:
- safer-buffer ">= 2.1.2 < 3"
-
-ieee754@^1.1.4:
- version "1.1.13"
- resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
- integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
-
-iltorb@^1.3.10:
- version "1.3.10"
- resolved "https://registry.yarnpkg.com/iltorb/-/iltorb-1.3.10.tgz#a0d9e4e7d52bf510741442236cbe0cc4230fc9f8"
- integrity sha512-nyB4+ru1u8CQqQ6w7YjasboKN3NQTN8GH/V/eEssNRKhW6UbdxdWhB9fJ5EEdjJfezKY0qPrcwLyIcgjL8hHxA==
- dependencies:
- detect-libc "^0.2.0"
- nan "^2.6.2"
- node-gyp "^3.6.2"
- prebuild-install "^2.3.0"
-
-image-size@~0.5.0:
- version "0.5.5"
- resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c"
- integrity sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=
-
-indent-string@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
- integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=
- dependencies:
- repeating "^2.0.0"
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherit@^2.2.2:
- version "2.2.7"
- resolved "https://registry.yarnpkg.com/inherit/-/inherit-2.2.7.tgz#4e238e289bc7adddf8ff5053d0f26a2fcda94b9f"
- integrity sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==
-
-inherits@2, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
- integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
-
-ini@~1.3.0:
- version "1.3.5"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
- integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
-
-is-buffer@^1.1.5:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
- integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
-
-is-finite@^1.0.0, is-finite@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=
- dependencies:
- number-is-nan "^1.0.0"
-
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
- dependencies:
- number-is-nan "^1.0.0"
-
-is-fullwidth-code-point@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
- integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
-
-is-stream@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
- integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
- integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
-
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
- integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
-
-isarray@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
- integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
-
-isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
- integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
-
-isstream@0.1.x, isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
- integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
-
-"jquery@>=1.7.1 <4.0.0":
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz#714f1f8d9dde4bdfa55764ba37ef214630d80ef2"
- integrity sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==
-
-js-yaml@~3.13.0:
- version "3.13.1"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
- integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-js-yaml@~3.4.0:
- version "3.4.6"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.4.6.tgz#6be1b23f6249f53d293370fd4d1aaa63ce1b4eb0"
- integrity sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=
- dependencies:
- argparse "^1.0.2"
- esprima "^2.6.0"
- inherit "^2.2.2"
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
- integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
-
-jscs-jsdoc@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/jscs-jsdoc/-/jscs-jsdoc-2.0.0.tgz#f53ebce029aa3125bd88290ba50d64d4510a4871"
- integrity sha1-9T684CmqMSW9iCkLpQ1k1FEKSHE=
- dependencies:
- comment-parser "^0.3.1"
- jsdoctypeparser "~1.2.0"
-
-jscs-preset-wikimedia@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/jscs-preset-wikimedia/-/jscs-preset-wikimedia-1.0.1.tgz#a6a5fa5967fd67a5d609038e1c794eaf41d4233d"
- integrity sha512-RWqu6IYSUlnYuCRCF0obCOHjJV0vhpLcvKbauwxmLQoZ0PiXDTWBYlfpsEfdhg7pmREAEwrARfDRz5qWD6qknA==
-
-jscs@~3.0.5:
- version "3.0.7"
- resolved "https://registry.yarnpkg.com/jscs/-/jscs-3.0.7.tgz#7141b4dff5b86e32d0e99d764b836767c30d201a"
- integrity sha1-cUG03/W4bjLQ6Z12S4NnZ8MNIBo=
- dependencies:
- chalk "~1.1.0"
- cli-table "~0.3.1"
- commander "~2.9.0"
- cst "^0.4.3"
- estraverse "^4.1.0"
- exit "~0.1.2"
- glob "^5.0.1"
- htmlparser2 "3.8.3"
- js-yaml "~3.4.0"
- jscs-jsdoc "^2.0.0"
- jscs-preset-wikimedia "~1.0.0"
- jsonlint "~1.6.2"
- lodash "~3.10.0"
- minimatch "~3.0.0"
- natural-compare "~1.2.2"
- pathval "~0.1.1"
- prompt "~0.2.14"
- reserved-words "^0.1.1"
- resolve "^1.1.6"
- strip-bom "^2.0.0"
- strip-json-comments "~1.0.2"
- to-double-quotes "^2.0.0"
- to-single-quotes "^2.0.0"
- vow "~0.4.8"
- vow-fs "~0.3.4"
- xmlbuilder "^3.1.0"
-
-jsdoctypeparser@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/jsdoctypeparser/-/jsdoctypeparser-1.2.0.tgz#e7dedc153a11849ffc5141144ae86a7ef0c25392"
- integrity sha1-597cFToRhJ/8UUEUSuhqfvDCU5I=
- dependencies:
- lodash "^3.7.0"
-
-jshint@~2.9.4:
- version "2.9.7"
- resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.9.7.tgz#038a3fa5c328fa3ab03ddfd85df88d3d87bedcbd"
- integrity sha512-Q8XN38hGsVQhdlM+4gd1Xl7OB1VieSuCJf+fEJjpo59JH99bVJhXRXAh26qQ15wfdd1VPMuDWNeSWoNl53T4YA==
- dependencies:
- cli "~1.0.0"
- console-browserify "1.1.x"
- exit "0.1.x"
- htmlparser2 "3.8.x"
- lodash "~4.17.10"
- minimatch "~3.0.2"
- shelljs "0.3.x"
- strip-json-comments "1.0.x"
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-schema@0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
- integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=
-
-json-stable-stringify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
- integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=
- dependencies:
- jsonify "~0.0.0"
-
-json-stringify-safe@~5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
- integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
-
-jsonfile@^2.1.0:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8"
- integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug=
- optionalDependencies:
- graceful-fs "^4.1.6"
-
-jsonify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
- integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=
-
-jsonlint@~1.6.2:
- version "1.6.3"
- resolved "https://registry.yarnpkg.com/jsonlint/-/jsonlint-1.6.3.tgz#cb5e31efc0b78291d0d862fbef05900adf212988"
- integrity sha512-jMVTMzP+7gU/IyC6hvKyWpUU8tmTkK5b3BPNuMI9U8Sit+YAWLlZwB6Y6YrdCxfg2kNz05p3XY3Bmm4m26Nv3A==
- dependencies:
- JSV "^4.0.x"
- nomnom "^1.5.x"
-
-jsprim@^1.2.2:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
- integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.3.0"
- json-schema "0.2.3"
- verror "1.10.0"
-
-kew@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/kew/-/kew-0.7.0.tgz#79d93d2d33363d6fdd2970b335d9141ad591d79b"
- integrity sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=
-
-kind-of@^3.0.2:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
- integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
- dependencies:
- is-buffer "^1.1.5"
-
-klaw@^1.0.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439"
- integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk=
- optionalDependencies:
- graceful-fs "^4.1.9"
-
-lazy-cache@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
- integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4=
-
-lazystream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4"
- integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=
- dependencies:
- readable-stream "^2.0.5"
-
-less@~2.7.1:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/less/-/less-2.7.3.tgz#cc1260f51c900a9ec0d91fb6998139e02507b63b"
- integrity sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==
- optionalDependencies:
- errno "^0.1.1"
- graceful-fs "^4.1.2"
- image-size "~0.5.0"
- mime "^1.2.11"
- mkdirp "^0.5.0"
- promise "^7.1.1"
- request "2.81.0"
- source-map "^0.5.3"
-
-load-grunt-tasks@^3.5.2:
- version "3.5.2"
- resolved "https://registry.yarnpkg.com/load-grunt-tasks/-/load-grunt-tasks-3.5.2.tgz#0728561180fd20ff8a6927505852fc58aaea0c88"
- integrity sha1-ByhWEYD9IP+KaSdQWFL8WKrqDIg=
- dependencies:
- arrify "^1.0.0"
- multimatch "^2.0.0"
- pkg-up "^1.0.0"
- resolve-pkg "^0.1.0"
-
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
-lodash@^3.5.0, lodash@^3.7.0, lodash@~3.10.0:
- version "3.10.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
- integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=
-
-lodash@^4.17.11, lodash@^4.7.0, lodash@^4.8.0, lodash@^4.8.2, lodash@~4.17.10, lodash@~4.17.5:
- version "4.17.11"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
- integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
-
-lodash@~4.6.1:
- version "4.6.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.6.1.tgz#df00c1164ad236b183cfc3887a5e8d38cc63cbbc"
- integrity sha1-3wDBFkrSNrGDz8OIel6NOMxjy7w=
-
-longest@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
- integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=
-
-loud-rejection@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
- integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=
- dependencies:
- currently-unhandled "^0.4.1"
- signal-exit "^3.0.0"
-
-map-obj@^1.0.0, map-obj@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
- integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=
-
-maxmin@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/maxmin/-/maxmin-1.1.0.tgz#71365e84a99dd8f8b3f7d5fde2f00d1e7f73be61"
- integrity sha1-cTZehKmd2Piz99X94vANHn9zvmE=
- dependencies:
- chalk "^1.0.0"
- figures "^1.0.1"
- gzip-size "^1.0.0"
- pretty-bytes "^1.0.0"
-
-meow@^3.1.0, meow@^3.3.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
- integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=
- dependencies:
- camelcase-keys "^2.0.0"
- decamelize "^1.1.2"
- loud-rejection "^1.0.0"
- map-obj "^1.0.1"
- minimist "^1.1.3"
- normalize-package-data "^2.3.4"
- object-assign "^4.0.1"
- read-pkg-up "^1.0.1"
- redent "^1.0.0"
- trim-newlines "^1.0.0"
-
-mime-db@1.40.0:
- version "1.40.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32"
- integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==
-
-mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.7:
- version "2.1.24"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81"
- integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==
- dependencies:
- mime-db "1.40.0"
-
-mime@^1.2.11:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
- integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
-
-mimic-response@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
- integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
-
-"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.0, minimatch@~3.0.2:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
- dependencies:
- brace-expansion "^1.1.7"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
- integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
-
-minimist@^1.1.3, minimist@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
- integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
-
-mkdirp@0.5.1, mkdirp@0.x.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
- dependencies:
- minimist "0.0.8"
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
- integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-
-multimatch@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b"
- integrity sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=
- dependencies:
- array-differ "^1.0.0"
- array-union "^1.0.1"
- arrify "^1.0.0"
- minimatch "^3.0.0"
-
-mute-stream@~0.0.4:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d"
- integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==
-
-nan@^2.6.2:
- version "2.14.0"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c"
- integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==
-
-natural-compare@~1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.2.2.tgz#1f96d60e3141cac1b6d05653ce0daeac763af6aa"
- integrity sha1-H5bWDjFBysG20FZTzg2urHY69qo=
-
-ncp@0.4.x:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/ncp/-/ncp-0.4.2.tgz#abcc6cbd3ec2ed2a729ff6e7c1fa8f01784a8574"
- integrity sha1-q8xsvT7C7Spyn/bnwfqPAXhKhXQ=
-
-node-abi@^2.2.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.8.0.tgz#bd2e88dbe6a6871e6dd08553e0605779325737ec"
- integrity sha512-1/aa2clS0pue0HjckL62CsbhWWU35HARvBDXcJtYKbYR7LnIutmpxmXbuDMV9kEviD2lP/wACOgWmmwljghHyQ==
- dependencies:
- semver "^5.4.1"
-
-node-gyp@^3.6.2:
- version "3.8.0"
- resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c"
- integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==
- dependencies:
- fstream "^1.0.0"
- glob "^7.0.3"
- graceful-fs "^4.1.2"
- mkdirp "^0.5.0"
- nopt "2 || 3"
- npmlog "0 || 1 || 2 || 3 || 4"
- osenv "0"
- request "^2.87.0"
- rimraf "2"
- semver "~5.3.0"
- tar "^2.0.0"
- which "1"
-
-nomnom@^1.5.x:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7"
- integrity sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=
- dependencies:
- chalk "~0.4.0"
- underscore "~1.6.0"
-
-noop-logger@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2"
- integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=
-
-"nopt@2 || 3", nopt@~3.0.6:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
- integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k=
- dependencies:
- abbrev "1"
-
-normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
- integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
- dependencies:
- hosted-git-info "^2.1.4"
- resolve "^1.10.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-normalize-path@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
- integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
- dependencies:
- remove-trailing-separator "^1.0.1"
-
-"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.1:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
- integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
- dependencies:
- are-we-there-yet "~1.1.2"
- console-control-strings "~1.1.0"
- gauge "~2.7.3"
- set-blocking "~2.0.0"
-
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
- integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
-
-oauth-sign@~0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
- integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=
-
-oauth-sign@~0.9.0:
- version "0.9.0"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
- integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
-
-object-assign@^4.0.1, object-assign@^4.1.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
-
-object-keys@^1.0.11, object-keys@^1.0.12:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
- integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
-
-object.assign@^4.0.4:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
- integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
- dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.1"
- has-symbols "^1.0.0"
- object-keys "^1.0.11"
-
-once@^1.3.0, once@^1.3.1, once@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
- dependencies:
- wrappy "1"
-
-os-homedir@^1.0.0, os-homedir@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
- integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
-
-os-tmpdir@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
- integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
-
-osenv@0:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
- integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.0"
-
-"package@>= 1.0.0 < 1.2.0":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/package/-/package-1.0.1.tgz#d25a1f99e2506dcb27d6704b83dca8a312e4edcc"
- integrity sha1-0lofmeJQbcsn1nBLg9yooxLk7cw=
-
-pako@~0.2.0:
- version "0.2.9"
- resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
- integrity sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
- dependencies:
- error-ex "^1.2.0"
-
-parse-ms@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-1.0.1.tgz#56346d4749d78f23430ca0c713850aef91aa361d"
- integrity sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=
-
-parserlib@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/parserlib/-/parserlib-1.1.1.tgz#a64cfa724062434fdfc351c9a4ec2d92b94c06f4"
- integrity sha1-pkz6ckBiQ0/fw1HJpOwtkrlMBvQ=
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-is-absolute@^1.0.0, path-is-absolute@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
-
-path-parse@^1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
- integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-pathval@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/pathval/-/pathval-0.1.1.tgz#08f911cdca9cce5942880da7817bc0b723b66d82"
- integrity sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=
-
-pend@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
- integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
-
-performance-now@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
- integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=
-
-performance-now@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
- integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
-
-phantomjs-prebuilt@^2.1.3, phantomjs-prebuilt@~2.1.16:
- version "2.1.16"
- resolved "https://registry.yarnpkg.com/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz#efd212a4a3966d3647684ea8ba788549be2aefef"
- integrity sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=
- dependencies:
- es6-promise "^4.0.3"
- extract-zip "^1.6.5"
- fs-extra "^1.0.0"
- hasha "^2.2.0"
- kew "^0.7.0"
- progress "^1.1.8"
- request "^2.81.0"
- request-progress "^2.0.1"
- which "^1.2.10"
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
- integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
-
-pkg-up@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26"
- integrity sha1-Pgj7RhUlxEIWJKM7n35tCvWwWiY=
- dependencies:
- find-up "^1.0.0"
-
-pkginfo@0.3.x:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21"
- integrity sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=
-
-pkginfo@0.x.x:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff"
- integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=
-
-plur@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/plur/-/plur-1.0.0.tgz#db85c6814f5e5e5a3b49efc28d604fec62975156"
- integrity sha1-24XGgU9eXlo7Se/CjWBP7GKXUVY=
-
-prebuild-install@^2.3.0:
- version "2.5.3"
- resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.5.3.tgz#9f65f242782d370296353710e9bc843490c19f69"
- integrity sha512-/rI36cN2g7vDQnKWN8Uzupi++KjyqS9iS+/fpwG4Ea8d0Pip0PQ5bshUNzVwt+/D2MRfhVAplYMMvWLqWrCF/g==
- dependencies:
- detect-libc "^1.0.3"
- expand-template "^1.0.2"
- github-from-package "0.0.0"
- minimist "^1.2.0"
- mkdirp "^0.5.1"
- node-abi "^2.2.0"
- noop-logger "^0.1.1"
- npmlog "^4.0.1"
- os-homedir "^1.0.1"
- pump "^2.0.1"
- rc "^1.1.6"
- simple-get "^2.7.0"
- tar-fs "^1.13.0"
- tunnel-agent "^0.6.0"
- which-pm-runs "^1.0.0"
-
-pretty-bytes@^1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84"
- integrity sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.1.0"
-
-pretty-bytes@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9"
- integrity sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=
-
-pretty-ms@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-2.1.0.tgz#4257c256df3fb0b451d6affaab021884126981dc"
- integrity sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=
- dependencies:
- is-finite "^1.0.1"
- parse-ms "^1.0.0"
- plur "^1.0.0"
-
-process-nextick-args@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
- integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==
-
-progress@^1.1.8:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
- integrity sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=
-
-promise@^7.1.1:
- version "7.3.1"
- resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
- integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==
- dependencies:
- asap "~2.0.3"
-
-prompt@~0.2.14:
- version "0.2.14"
- resolved "https://registry.yarnpkg.com/prompt/-/prompt-0.2.14.tgz#57754f64f543fd7b0845707c818ece618f05ffdc"
- integrity sha1-V3VPZPVD/XsIRXB8gY7OYY8F/9w=
- dependencies:
- pkginfo "0.x.x"
- read "1.0.x"
- revalidator "0.1.x"
- utile "0.2.x"
- winston "0.8.x"
-
-prr@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
- integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY=
-
-psl@^1.1.24:
- version "1.1.31"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184"
- integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==
-
-pump@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954"
- integrity sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==
- dependencies:
- end-of-stream "^1.1.0"
- once "^1.3.1"
-
-pump@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909"
- integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==
- dependencies:
- end-of-stream "^1.1.0"
- once "^1.3.1"
-
-punycode@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
- integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
-
-punycode@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
- integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
-
-qs@~6.4.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
- integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=
-
-qs@~6.5.2:
- version "6.5.2"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
- integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
-
-rc@^1.1.6:
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
- integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
- dependencies:
- deep-extend "^0.6.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
-read@1.0.x:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4"
- integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=
- dependencies:
- mute-stream "~0.0.4"
-
-readable-stream@1.1:
- version "1.1.13"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e"
- integrity sha1-9u73ZPUUyJ4rniMUanW6EGdW0j4=
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-readable-stream@^2.0.0, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
- integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~2.0.0"
- safe-buffer "~5.1.1"
- string_decoder "~1.1.1"
- util-deprecate "~1.0.1"
-
-redent@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
- integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=
- dependencies:
- indent-string "^2.1.0"
- strip-indent "^1.0.1"
-
-regenerator-runtime@^0.11.0:
- version "0.11.1"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
- integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
-
-remove-trailing-separator@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
- integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
-
-repeat-string@^1.5.2:
- version "1.6.1"
- resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
- integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
-
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
- dependencies:
- is-finite "^1.0.0"
-
-request-progress@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-2.0.1.tgz#5d36bb57961c673aa5b788dbc8141fdf23b44e08"
- integrity sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=
- dependencies:
- throttleit "^1.0.0"
-
-request@2.81.0:
- version "2.81.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
- integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=
- dependencies:
- aws-sign2 "~0.6.0"
- aws4 "^1.2.1"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.0"
- forever-agent "~0.6.1"
- form-data "~2.1.1"
- har-validator "~4.2.1"
- hawk "~3.1.3"
- http-signature "~1.1.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.7"
- oauth-sign "~0.8.1"
- performance-now "^0.2.0"
- qs "~6.4.0"
- safe-buffer "^5.0.1"
- stringstream "~0.0.4"
- tough-cookie "~2.3.0"
- tunnel-agent "^0.6.0"
- uuid "^3.0.0"
-
-request@^2.81.0, request@^2.87.0:
- version "2.88.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
- integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==
- dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.8.0"
- caseless "~0.12.0"
- combined-stream "~1.0.6"
- extend "~3.0.2"
- forever-agent "~0.6.1"
- form-data "~2.3.2"
- har-validator "~5.1.0"
- http-signature "~1.2.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.19"
- oauth-sign "~0.9.0"
- performance-now "^2.1.0"
- qs "~6.5.2"
- safe-buffer "^5.1.2"
- tough-cookie "~2.4.3"
- tunnel-agent "^0.6.0"
- uuid "^3.3.2"
-
-reserved-words@^0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/reserved-words/-/reserved-words-0.1.2.tgz#00a0940f98cd501aeaaac316411d9adc52b31ab1"
- integrity sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE=
-
-resolve-from@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57"
- integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=
-
-resolve-pkg@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/resolve-pkg/-/resolve-pkg-0.1.0.tgz#02cc993410e2936962bd97166a1b077da9725531"
- integrity sha1-AsyZNBDik2livZcWahsHfalyVTE=
- dependencies:
- resolve-from "^2.0.0"
-
-resolve@^1.1.6, resolve@^1.10.0:
- version "1.11.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.0.tgz#4014870ba296176b86343d50b60f3b50609ce232"
- integrity sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==
- dependencies:
- path-parse "^1.0.6"
-
-resolve@~1.1.0:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
- integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
-
-revalidator@0.1.x:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b"
- integrity sha1-/s5hv6DBtSoga9axgZgYS91SOjs=
-
-right-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
- integrity sha1-YTObci/mo1FWiSENJOFMlhSGE+8=
- dependencies:
- align-text "^0.1.1"
-
-rimraf@2, rimraf@2.x.x, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@~2.6.2:
- version "2.6.3"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
- integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
- dependencies:
- glob "^7.1.3"
-
-safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
- integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-
-"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.4.1:
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
- integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
-
-semver@~5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
- integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8=
-
-set-blocking@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
- integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
-
-shelljs@0.3.x:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1"
- integrity sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=
-
-signal-exit@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
- integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
-
-simple-concat@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6"
- integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=
-
-simple-get@^2.7.0:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d"
- integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==
- dependencies:
- decompress-response "^3.3.0"
- once "^1.3.1"
- simple-concat "^1.0.0"
-
-sntp@1.x.x:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
- integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=
- dependencies:
- hoek "2.x.x"
-
-source-map-support@^0.4.0:
- version "0.4.18"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
- integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
- dependencies:
- source-map "^0.5.6"
-
-source-map@0.4.x:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
- integrity sha1-66T12pwNyZneaAMti092FzZSA2s=
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
- integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
-
-spdx-correct@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4"
- integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
- integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
-
-spdx-expression-parse@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
- integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1"
- integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==
-
-sprintf-js@^1.0.3:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673"
- integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
- integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
-
-sshpk@^1.7.0:
- version "1.16.1"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877"
- integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- bcrypt-pbkdf "^1.0.0"
- dashdash "^1.12.0"
- ecc-jsbn "~0.1.1"
- getpass "^0.1.1"
- jsbn "~0.1.0"
- safer-buffer "^2.0.2"
- tweetnacl "~0.14.0"
-
-stack-trace@0.0.x:
- version "0.0.10"
- resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0"
- integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=
-
-stream-buffers@^2.1.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4"
- integrity sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ=
-
-string-width@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
-
-"string-width@^1.0.2 || 2":
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
- integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
- dependencies:
- is-fullwidth-code-point "^2.0.0"
- strip-ansi "^4.0.0"
-
-string_decoder@~0.10.x:
- version "0.10.31"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
- integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
-
-string_decoder@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
- integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
- dependencies:
- safe-buffer "~5.1.0"
-
-stringstream@~0.0.4:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72"
- integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==
-
-strip-ansi@^3.0.0, strip-ansi@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
- dependencies:
- ansi-regex "^2.0.0"
-
-strip-ansi@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
- integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
- dependencies:
- ansi-regex "^3.0.0"
-
-strip-ansi@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991"
- integrity sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=
-
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
- dependencies:
- is-utf8 "^0.2.0"
-
-strip-indent@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
- integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=
- dependencies:
- get-stdin "^4.0.1"
-
-strip-json-comments@1.0.x, strip-json-comments@~1.0.2:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
- integrity sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=
-
-strip-json-comments@^2.0.1, strip-json-comments@~2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
- integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
-
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
- integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
-
-supports-color@^5.3.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
-
-tar-fs@^1.13.0:
- version "1.16.3"
- resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509"
- integrity sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==
- dependencies:
- chownr "^1.0.1"
- mkdirp "^0.5.1"
- pump "^1.0.0"
- tar-stream "^1.1.2"
-
-tar-stream@^1.1.2, tar-stream@^1.5.0:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555"
- integrity sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==
- dependencies:
- bl "^1.0.0"
- buffer-alloc "^1.2.0"
- end-of-stream "^1.0.0"
- fs-constants "^1.0.0"
- readable-stream "^2.3.0"
- to-buffer "^1.1.1"
- xtend "^4.0.0"
-
-tar@^2.0.0:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40"
- integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==
- dependencies:
- block-stream "*"
- fstream "^1.0.12"
- inherits "2"
-
-temporary@^0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/temporary/-/temporary-0.0.8.tgz#a18a981d28ba8ca36027fb3c30538c3ecb740ac0"
- integrity sha1-oYqYHSi6jKNgJ/s8MFOMPst0CsA=
- dependencies:
- package ">= 1.0.0 < 1.2.0"
-
-text-table@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
- integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
-
-throttleit@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c"
- integrity sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=
-
-time-grunt@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/time-grunt/-/time-grunt-1.4.0.tgz#062213e660c907e86f440556c01ea6597b712420"
- integrity sha1-BiIT5mDJB+hvRAVWwB6mWXtxJCA=
- dependencies:
- chalk "^1.0.0"
- date-time "^1.1.0"
- figures "^1.0.0"
- hooker "^0.2.3"
- number-is-nan "^1.0.0"
- pretty-ms "^2.1.0"
- text-table "^0.2.0"
-
-time-zone@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/time-zone/-/time-zone-0.1.0.tgz#4a7728b6ac28db0e008f514043fd555bd5573b46"
- integrity sha1-Sncotqwo2w4Aj1FAQ/1VW9VXO0Y=
-
-to-buffer@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80"
- integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==
-
-to-double-quotes@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/to-double-quotes/-/to-double-quotes-2.0.0.tgz#aaf231d6fa948949f819301bbab4484d8588e4a7"
- integrity sha1-qvIx1vqUiUn4GTAburRITYWI5Kc=
-
-to-single-quotes@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/to-single-quotes/-/to-single-quotes-2.0.1.tgz#7cc29151f0f5f2c41946f119f5932fe554170125"
- integrity sha1-fMKRUfD18sQZRvEZ9ZMv5VQXASU=
-
-tough-cookie@~2.3.0:
- version "2.3.4"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655"
- integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==
- dependencies:
- punycode "^1.4.1"
-
-tough-cookie@~2.4.3:
- version "2.4.3"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
- integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==
- dependencies:
- psl "^1.1.24"
- punycode "^1.4.1"
-
-trim-newlines@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
- integrity sha1-WIeWa7WCpFA6QetST301ARgVphM=
-
-tunnel-agent@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
- integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
- dependencies:
- safe-buffer "^5.0.1"
-
-tweetnacl@^0.14.3, tweetnacl@~0.14.0:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
- integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
-
-typedarray@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
- integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
-
-uglify-js@~2.8.21:
- version "2.8.29"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
- integrity sha1-KcVzMUgFe7Th913zW3qcty5qWd0=
- dependencies:
- source-map "~0.5.1"
- yargs "~3.10.0"
- optionalDependencies:
- uglify-to-browserify "~1.0.0"
-
-uglify-to-browserify@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
- integrity sha1-bgkk1r2mta/jSeOabWMoUKD4grc=
-
-underscore.string@~3.3.4:
- version "3.3.5"
- resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.5.tgz#fc2ad255b8bd309e239cbc5816fd23a9b7ea4023"
- integrity sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==
- dependencies:
- sprintf-js "^1.0.3"
- util-deprecate "^1.0.2"
-
-underscore@~1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8"
- integrity sha1-izixDKze9jM3uLJOT/htRa6lKag=
-
-uri-js@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
- integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==
- dependencies:
- punycode "^2.1.0"
-
-uri-path@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/uri-path/-/uri-path-1.0.0.tgz#9747f018358933c31de0fccfd82d138e67262e32"
- integrity sha1-l0fwGDWJM8Md4PzP2C0TjmcmLjI=
-
-util-deprecate@^1.0.2, util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
-
-utile@0.2.x:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/utile/-/utile-0.2.1.tgz#930c88e99098d6220834c356cbd9a770522d90d7"
- integrity sha1-kwyI6ZCY1iIINMNWy9mncFItkNc=
- dependencies:
- async "~0.2.9"
- deep-equal "*"
- i "0.3.x"
- mkdirp "0.x.x"
- ncp "0.4.x"
- rimraf "2.x.x"
-
-uuid@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
- integrity sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=
-
-uuid@^3.0.0, uuid@^3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
- integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
-
-validate-npm-package-license@^3.0.1:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
- integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
- dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
-
-verror@1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
- integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
- dependencies:
- assert-plus "^1.0.0"
- core-util-is "1.0.2"
- extsprintf "^1.2.0"
-
-vow-fs@~0.3.4:
- version "0.3.6"
- resolved "https://registry.yarnpkg.com/vow-fs/-/vow-fs-0.3.6.tgz#2d4c59be22e2bf2618ddf597ab4baa923be7200d"
- integrity sha1-LUxZviLivyYY3fWXq0uqkjvnIA0=
- dependencies:
- glob "^7.0.5"
- uuid "^2.0.2"
- vow "^0.4.7"
- vow-queue "^0.4.1"
-
-vow-queue@^0.4.1:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/vow-queue/-/vow-queue-0.4.3.tgz#4ba8f64b56e9212c0dbe57f1405aeebd54cce78d"
- integrity sha512-/poAKDTFL3zYbeQg7cl4BGcfP4sGgXKrHnRFSKj97dteUFu8oyXMwIcdwu8NSx/RmPGIuYx1Bik/y5vU4H/VKw==
- dependencies:
- vow "^0.4.17"
-
-vow@^0.4.17, vow@^0.4.7, vow@~0.4.1, vow@~0.4.8:
- version "0.4.19"
- resolved "https://registry.yarnpkg.com/vow/-/vow-0.4.19.tgz#cc5ef4d6bb6972d830830a7c9ecf8ad834a7c525"
- integrity sha512-S+0+CiQlbUhTNWMlJdqo/ARuXOttXdvw5ACGyh1W97NFHUdwt3Fzyaus03Kvdmo733dwnYS9AGJSDg0Zu8mNfA==
-
-walkdir@^0.0.11:
- version "0.0.11"
- resolved "https://registry.yarnpkg.com/walkdir/-/walkdir-0.0.11.tgz#a16d025eb931bd03b52f308caed0f40fcebe9532"
- integrity sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=
-
-which-pm-runs@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb"
- integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=
-
-which@1, which@^1.2.10, which@~1.3.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
- integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
- dependencies:
- isexe "^2.0.0"
-
-wide-align@^1.1.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
- integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
- dependencies:
- string-width "^1.0.2 || 2"
-
-window-size@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
- integrity sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=
-
-winston@0.8.x:
- version "0.8.3"
- resolved "https://registry.yarnpkg.com/winston/-/winston-0.8.3.tgz#64b6abf4cd01adcaefd5009393b1d8e8bec19db0"
- integrity sha1-ZLar9M0Brcrv1QCTk7HY6L7BnbA=
- dependencies:
- async "0.2.x"
- colors "0.6.x"
- cycle "1.0.x"
- eyes "0.1.x"
- isstream "0.1.x"
- pkginfo "0.3.x"
- stack-trace "0.0.x"
-
-wordwrap@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
- integrity sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-
-xmlbuilder@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-3.1.0.tgz#2c86888f2d4eade850fa38ca7f7223f7209516e1"
- integrity sha1-LIaIjy1OrehQ+jjKf3Ij9yCVFuE=
- dependencies:
- lodash "^3.5.0"
-
-xtend@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
- integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68=
-
-yargs@~3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
- integrity sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=
- dependencies:
- camelcase "^1.0.2"
- cliui "^2.1.0"
- decamelize "^1.0.0"
- window-size "0.1.0"
-
-yauzl@2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005"
- integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=
- dependencies:
- fd-slicer "~1.0.1"
-
-zip-stream@^1.1.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-1.2.0.tgz#a8bc45f4c1b49699c6b90198baacaacdbcd4ba04"
- integrity sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=
- dependencies:
- archiver-utils "^1.3.0"
- compress-commons "^1.2.0"
- lodash "^4.8.0"
- readable-stream "^2.0.0"
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/.bower.json b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/.bower.json
deleted file mode 100755
index 859cfc5f9..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/.bower.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "name": "bootstrap-daterangepicker",
- "main": [
- "daterangepicker.js",
- "daterangepicker.css"
- ],
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests",
- "moment.js",
- "moment.min.js"
- ],
- "dependencies": {
- "jquery": "1.9.1 - 3",
- "moment": ">=2.9.0"
- },
- "homepage": "https://github.com/dangrossman/bootstrap-daterangepicker",
- "version": "2.1.27",
- "_release": "2.1.27",
- "_resolution": {
- "type": "version",
- "tag": "v2.1.27",
- "commit": "d4aabfbceaf57117e1af33f3f82e92162719eee9"
- },
- "_source": "https://github.com/dangrossman/bootstrap-daterangepicker.git",
- "_target": "^2.1.25",
- "_originalSource": "bootstrap-daterangepicker"
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/README.md b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/README.md
deleted file mode 100755
index d6be83daa..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/README.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Date Range Picker for Bootstrap
-
-![Improvely.com](http://i.imgur.com/LbAMf3D.png)
-
-This date range picker component for Bootstrap creates a dropdown menu from which a user can
-select a range of dates. I created it while building the UI for [Improvely](http://www.improvely.com),
-which needed a way to select date ranges for reports.
-
-Features include limiting the selectable date range, localizable strings and date formats,
-a single date picker mode, optional time picker (for e.g. making appointments or reservations),
-and styles that match the default Bootstrap 3 theme.
-
-## [Documentation and Live Usage Examples](http://www.daterangepicker.com)
-
-## [See It In a Live Application](https://awio.iljmp.com/5/drpdemogh)
-
-## License
-
-This code is made available under the same license as Bootstrap. Moment.js is included in this repository
-for convenience. It is available under the [MIT license](http://www.opensource.org/licenses/mit-license.php).
-
---
-
-The MIT License (MIT)
-
-Copyright (c) 2012-2017 Dan Grossman
-
-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.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/bower.json b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/bower.json
deleted file mode 100755
index d42995a62..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/bower.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "name": "bootstrap-daterangepicker",
- "main": [
- "daterangepicker.js",
- "daterangepicker.css"
- ],
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests",
- "moment.js",
- "moment.min.js"
- ],
- "dependencies": {
- "jquery": "1.9.1 - 3",
- "moment": ">=2.9.0"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.css b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.css
deleted file mode 100755
index 86f4b775e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.css
+++ /dev/null
@@ -1,269 +0,0 @@
-.daterangepicker {
- position: absolute;
- color: inherit;
- background-color: #fff;
- border-radius: 4px;
- width: 278px;
- padding: 4px;
- margin-top: 1px;
- top: 100px;
- left: 20px;
- /* Calendars */ }
- .daterangepicker:before, .daterangepicker:after {
- position: absolute;
- display: inline-block;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- content: ''; }
- .daterangepicker:before {
- top: -7px;
- border-right: 7px solid transparent;
- border-left: 7px solid transparent;
- border-bottom: 7px solid #ccc; }
- .daterangepicker:after {
- top: -6px;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-left: 6px solid transparent; }
- .daterangepicker.opensleft:before {
- right: 9px; }
- .daterangepicker.opensleft:after {
- right: 10px; }
- .daterangepicker.openscenter:before {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto; }
- .daterangepicker.openscenter:after {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto; }
- .daterangepicker.opensright:before {
- left: 9px; }
- .daterangepicker.opensright:after {
- left: 10px; }
- .daterangepicker.dropup {
- margin-top: -5px; }
- .daterangepicker.dropup:before {
- top: initial;
- bottom: -7px;
- border-bottom: initial;
- border-top: 7px solid #ccc; }
- .daterangepicker.dropup:after {
- top: initial;
- bottom: -6px;
- border-bottom: initial;
- border-top: 6px solid #fff; }
- .daterangepicker.dropdown-menu {
- max-width: none;
- z-index: 3001; }
- .daterangepicker.single .ranges, .daterangepicker.single .calendar {
- float: none; }
- .daterangepicker.show-calendar .calendar {
- display: block; }
- .daterangepicker .calendar {
- display: none;
- max-width: 270px;
- margin: 4px; }
- .daterangepicker .calendar.single .calendar-table {
- border: none; }
- .daterangepicker .calendar th, .daterangepicker .calendar td {
- white-space: nowrap;
- text-align: center;
- min-width: 32px; }
- .daterangepicker .calendar-table {
- border: 1px solid #fff;
- padding: 4px;
- border-radius: 4px;
- background-color: #fff; }
- .daterangepicker table {
- width: 100%;
- margin: 0; }
- .daterangepicker td, .daterangepicker th {
- text-align: center;
- width: 20px;
- height: 20px;
- border-radius: 4px;
- border: 1px solid transparent;
- white-space: nowrap;
- cursor: pointer; }
- .daterangepicker td.available:hover, .daterangepicker th.available:hover {
- background-color: #eee;
- border-color: transparent;
- color: inherit; }
- .daterangepicker td.week, .daterangepicker th.week {
- font-size: 80%;
- color: #ccc; }
- .daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
- background-color: #fff;
- border-color: transparent;
- color: #999; }
- .daterangepicker td.in-range {
- background-color: #ebf4f8;
- border-color: transparent;
- color: #000;
- border-radius: 0; }
- .daterangepicker td.start-date {
- border-radius: 4px 0 0 4px; }
- .daterangepicker td.end-date {
- border-radius: 0 4px 4px 0; }
- .daterangepicker td.start-date.end-date {
- border-radius: 4px; }
- .daterangepicker td.active, .daterangepicker td.active:hover {
- background-color: #357ebd;
- border-color: transparent;
- color: #fff; }
- .daterangepicker th.month {
- width: auto; }
- .daterangepicker td.disabled, .daterangepicker option.disabled {
- color: #999;
- cursor: not-allowed;
- text-decoration: line-through; }
- .daterangepicker select.monthselect, .daterangepicker select.yearselect {
- font-size: 12px;
- padding: 1px;
- height: auto;
- margin: 0;
- cursor: default; }
- .daterangepicker select.monthselect {
- margin-right: 2%;
- width: 56%; }
- .daterangepicker select.yearselect {
- width: 40%; }
- .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
- width: 50px;
- margin-bottom: 0; }
- .daterangepicker .input-mini {
- border: 1px solid #ccc;
- border-radius: 4px;
- color: #555;
- height: 30px;
- line-height: 30px;
- display: block;
- vertical-align: middle;
- margin: 0 0 5px 0;
- padding: 0 6px 0 28px;
- width: 100%; }
- .daterangepicker .input-mini.active {
- border: 1px solid #08c;
- border-radius: 4px; }
- .daterangepicker .daterangepicker_input {
- position: relative; }
- .daterangepicker .daterangepicker_input i {
- position: absolute;
- left: 8px;
- top: 8px; }
- .daterangepicker.rtl .input-mini {
- padding-right: 28px;
- padding-left: 6px; }
- .daterangepicker.rtl .daterangepicker_input i {
- left: auto;
- right: 8px; }
- .daterangepicker .calendar-time {
- text-align: center;
- margin: 5px auto;
- line-height: 30px;
- position: relative;
- padding-left: 28px; }
- .daterangepicker .calendar-time select.disabled {
- color: #ccc;
- cursor: not-allowed; }
-
-.ranges {
- font-size: 11px;
- float: none;
- margin: 4px;
- text-align: left; }
- .ranges ul {
- list-style: none;
- margin: 0 auto;
- padding: 0;
- width: 100%; }
- .ranges li {
- font-size: 13px;
- background-color: #f5f5f5;
- border: 1px solid #f5f5f5;
- border-radius: 4px;
- color: #08c;
- padding: 3px 12px;
- margin-bottom: 8px;
- cursor: pointer; }
- .ranges li:hover {
- background-color: #08c;
- border: 1px solid #08c;
- color: #fff; }
- .ranges li.active {
- background-color: #08c;
- border: 1px solid #08c;
- color: #fff; }
-
-/* Larger Screen Styling */
-@media (min-width: 564px) {
- .daterangepicker {
- width: auto; }
- .daterangepicker .ranges ul {
- width: 160px; }
- .daterangepicker.single .ranges ul {
- width: 100%; }
- .daterangepicker.single .calendar.left {
- clear: none; }
- .daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .calendar {
- float: left; }
- .daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .calendar {
- float: right; }
- .daterangepicker.ltr {
- direction: ltr;
- text-align: left; }
- .daterangepicker.ltr .calendar.left {
- clear: left;
- margin-right: 0; }
- .daterangepicker.ltr .calendar.left .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0; }
- .daterangepicker.ltr .calendar.right {
- margin-left: 0; }
- .daterangepicker.ltr .calendar.right .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0; }
- .daterangepicker.ltr .left .daterangepicker_input {
- padding-right: 12px; }
- .daterangepicker.ltr .calendar.left .calendar-table {
- padding-right: 12px; }
- .daterangepicker.ltr .ranges, .daterangepicker.ltr .calendar {
- float: left; }
- .daterangepicker.rtl {
- direction: rtl;
- text-align: right; }
- .daterangepicker.rtl .calendar.left {
- clear: right;
- margin-left: 0; }
- .daterangepicker.rtl .calendar.left .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0; }
- .daterangepicker.rtl .calendar.right {
- margin-right: 0; }
- .daterangepicker.rtl .calendar.right .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0; }
- .daterangepicker.rtl .left .daterangepicker_input {
- padding-left: 12px; }
- .daterangepicker.rtl .calendar.left .calendar-table {
- padding-left: 12px; }
- .daterangepicker.rtl .ranges, .daterangepicker.rtl .calendar {
- text-align: right;
- float: right; } }
-@media (min-width: 730px) {
- .daterangepicker .ranges {
- width: auto; }
- .daterangepicker.ltr .ranges {
- float: left; }
- .daterangepicker.rtl .ranges {
- float: right; }
- .daterangepicker .calendar.left {
- clear: none !important; } }
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.js
deleted file mode 100755
index 079cde61c..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.js
+++ /dev/null
@@ -1,1653 +0,0 @@
-/**
-* @version: 2.1.27
-* @author: Dan Grossman http://www.dangrossman.info/
-* @copyright: Copyright (c) 2012-2017 Dan Grossman. All rights reserved.
-* @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php
-* @website: http://www.daterangepicker.com/
-*/
-// Follow the UMD template https://github.com/umdjs/umd/blob/master/templates/returnExportsGlobal.js
-(function (root, factory) {
- if (typeof define === 'function' && define.amd) {
- // AMD. Make globaly available as well
- define(['moment', 'jquery'], function (moment, jquery) {
- if (!jquery.fn) jquery.fn = {}; // webpack server rendering
- return factory(moment, jquery);
- });
- } else if (typeof module === 'object' && module.exports) {
- // Node / Browserify
- //isomorphic issue
- var jQuery = (typeof window != 'undefined') ? window.jQuery : undefined;
- if (!jQuery) {
- jQuery = require('jquery');
- if (!jQuery.fn) jQuery.fn = {};
- }
- var moment = (typeof window != 'undefined' && typeof window.moment != 'undefined') ? window.moment : require('moment');
- module.exports = factory(moment, jQuery);
- } else {
- // Browser globals
- root.daterangepicker = factory(root.moment, root.jQuery);
- }
-}(this, function(moment, $) {
- var DateRangePicker = function(element, options, cb) {
-
- //default settings for options
- this.parentEl = 'body';
- this.element = $(element);
- this.startDate = moment().startOf('day');
- this.endDate = moment().endOf('day');
- this.minDate = false;
- this.maxDate = false;
- this.dateLimit = false;
- this.autoApply = false;
- this.singleDatePicker = false;
- this.showDropdowns = false;
- this.showWeekNumbers = false;
- this.showISOWeekNumbers = false;
- this.showCustomRangeLabel = true;
- this.timePicker = false;
- this.timePicker24Hour = false;
- this.timePickerIncrement = 1;
- this.timePickerSeconds = false;
- this.linkedCalendars = true;
- this.autoUpdateInput = true;
- this.alwaysShowCalendars = false;
- this.ranges = {};
-
- this.opens = 'right';
- if (this.element.hasClass('pull-right'))
- this.opens = 'left';
-
- this.drops = 'down';
- if (this.element.hasClass('dropup'))
- this.drops = 'up';
-
- this.buttonClasses = 'btn btn-sm';
- this.applyClass = 'btn-success';
- this.cancelClass = 'btn-default';
-
- this.locale = {
- direction: 'ltr',
- format: moment.localeData().longDateFormat('L'),
- separator: ' - ',
- applyLabel: 'Apply',
- cancelLabel: 'Cancel',
- weekLabel: 'W',
- customRangeLabel: 'Custom Range',
- daysOfWeek: moment.weekdaysMin(),
- monthNames: moment.monthsShort(),
- firstDay: moment.localeData().firstDayOfWeek()
- };
-
- this.callback = function() { };
-
- //some state information
- this.isShowing = false;
- this.leftCalendar = {};
- this.rightCalendar = {};
-
- //custom options from user
- if (typeof options !== 'object' || options === null)
- options = {};
-
- //allow setting options with data attributes
- //data-api options will be overwritten with custom javascript options
- options = $.extend(this.element.data(), options);
-
- //html template for the picker UI
- if (typeof options.template !== 'string' && !(options.template instanceof $))
- options.template = '';
-
- this.parentEl = (options.parentEl && $(options.parentEl).length) ? $(options.parentEl) : $(this.parentEl);
- this.container = $(options.template).appendTo(this.parentEl);
-
- //
- // handle all the possible options overriding defaults
- //
-
- if (typeof options.locale === 'object') {
-
- if (typeof options.locale.direction === 'string')
- this.locale.direction = options.locale.direction;
-
- if (typeof options.locale.format === 'string')
- this.locale.format = options.locale.format;
-
- if (typeof options.locale.separator === 'string')
- this.locale.separator = options.locale.separator;
-
- if (typeof options.locale.daysOfWeek === 'object')
- this.locale.daysOfWeek = options.locale.daysOfWeek.slice();
-
- if (typeof options.locale.monthNames === 'object')
- this.locale.monthNames = options.locale.monthNames.slice();
-
- if (typeof options.locale.firstDay === 'number')
- this.locale.firstDay = options.locale.firstDay;
-
- if (typeof options.locale.applyLabel === 'string')
- this.locale.applyLabel = options.locale.applyLabel;
-
- if (typeof options.locale.cancelLabel === 'string')
- this.locale.cancelLabel = options.locale.cancelLabel;
-
- if (typeof options.locale.weekLabel === 'string')
- this.locale.weekLabel = options.locale.weekLabel;
-
- if (typeof options.locale.customRangeLabel === 'string'){
- //Support unicode chars in the custom range name.
- var elem = document.createElement('textarea');
- elem.innerHTML = options.locale.customRangeLabel;
- var rangeHtml = elem.value;
- this.locale.customRangeLabel = rangeHtml;
- }
- }
- this.container.addClass(this.locale.direction);
-
- if (typeof options.startDate === 'string')
- this.startDate = moment(options.startDate, this.locale.format);
-
- if (typeof options.endDate === 'string')
- this.endDate = moment(options.endDate, this.locale.format);
-
- if (typeof options.minDate === 'string')
- this.minDate = moment(options.minDate, this.locale.format);
-
- if (typeof options.maxDate === 'string')
- this.maxDate = moment(options.maxDate, this.locale.format);
-
- if (typeof options.startDate === 'object')
- this.startDate = moment(options.startDate);
-
- if (typeof options.endDate === 'object')
- this.endDate = moment(options.endDate);
-
- if (typeof options.minDate === 'object')
- this.minDate = moment(options.minDate);
-
- if (typeof options.maxDate === 'object')
- this.maxDate = moment(options.maxDate);
-
- // sanity check for bad options
- if (this.minDate && this.startDate.isBefore(this.minDate))
- this.startDate = this.minDate.clone();
-
- // sanity check for bad options
- if (this.maxDate && this.endDate.isAfter(this.maxDate))
- this.endDate = this.maxDate.clone();
-
- if (typeof options.applyClass === 'string')
- this.applyClass = options.applyClass;
-
- if (typeof options.cancelClass === 'string')
- this.cancelClass = options.cancelClass;
-
- if (typeof options.dateLimit === 'object')
- this.dateLimit = options.dateLimit;
-
- if (typeof options.opens === 'string')
- this.opens = options.opens;
-
- if (typeof options.drops === 'string')
- this.drops = options.drops;
-
- if (typeof options.showWeekNumbers === 'boolean')
- this.showWeekNumbers = options.showWeekNumbers;
-
- if (typeof options.showISOWeekNumbers === 'boolean')
- this.showISOWeekNumbers = options.showISOWeekNumbers;
-
- if (typeof options.buttonClasses === 'string')
- this.buttonClasses = options.buttonClasses;
-
- if (typeof options.buttonClasses === 'object')
- this.buttonClasses = options.buttonClasses.join(' ');
-
- if (typeof options.showDropdowns === 'boolean')
- this.showDropdowns = options.showDropdowns;
-
- if (typeof options.showCustomRangeLabel === 'boolean')
- this.showCustomRangeLabel = options.showCustomRangeLabel;
-
- if (typeof options.singleDatePicker === 'boolean') {
- this.singleDatePicker = options.singleDatePicker;
- if (this.singleDatePicker)
- this.endDate = this.startDate.clone();
- }
-
- if (typeof options.timePicker === 'boolean')
- this.timePicker = options.timePicker;
-
- if (typeof options.timePickerSeconds === 'boolean')
- this.timePickerSeconds = options.timePickerSeconds;
-
- if (typeof options.timePickerIncrement === 'number')
- this.timePickerIncrement = options.timePickerIncrement;
-
- if (typeof options.timePicker24Hour === 'boolean')
- this.timePicker24Hour = options.timePicker24Hour;
-
- if (typeof options.autoApply === 'boolean')
- this.autoApply = options.autoApply;
-
- if (typeof options.autoUpdateInput === 'boolean')
- this.autoUpdateInput = options.autoUpdateInput;
-
- if (typeof options.linkedCalendars === 'boolean')
- this.linkedCalendars = options.linkedCalendars;
-
- if (typeof options.isInvalidDate === 'function')
- this.isInvalidDate = options.isInvalidDate;
-
- if (typeof options.isCustomDate === 'function')
- this.isCustomDate = options.isCustomDate;
-
- if (typeof options.alwaysShowCalendars === 'boolean')
- this.alwaysShowCalendars = options.alwaysShowCalendars;
-
- // update day names order to firstDay
- if (this.locale.firstDay != 0) {
- var iterator = this.locale.firstDay;
- while (iterator > 0) {
- this.locale.daysOfWeek.push(this.locale.daysOfWeek.shift());
- iterator--;
- }
- }
-
- var start, end, range;
-
- //if no start/end dates set, check if an input element contains initial values
- if (typeof options.startDate === 'undefined' && typeof options.endDate === 'undefined') {
- if ($(this.element).is('input[type=text]')) {
- var val = $(this.element).val(),
- split = val.split(this.locale.separator);
-
- start = end = null;
-
- if (split.length == 2) {
- start = moment(split[0], this.locale.format);
- end = moment(split[1], this.locale.format);
- } else if (this.singleDatePicker && val !== "") {
- start = moment(val, this.locale.format);
- end = moment(val, this.locale.format);
- }
- if (start !== null && end !== null) {
- this.setStartDate(start);
- this.setEndDate(end);
- }
- }
- }
-
- if (typeof options.ranges === 'object') {
- for (range in options.ranges) {
-
- if (typeof options.ranges[range][0] === 'string')
- start = moment(options.ranges[range][0], this.locale.format);
- else
- start = moment(options.ranges[range][0]);
-
- if (typeof options.ranges[range][1] === 'string')
- end = moment(options.ranges[range][1], this.locale.format);
- else
- end = moment(options.ranges[range][1]);
-
- // If the start or end date exceed those allowed by the minDate or dateLimit
- // options, shorten the range to the allowable period.
- if (this.minDate && start.isBefore(this.minDate))
- start = this.minDate.clone();
-
- var maxDate = this.maxDate;
- if (this.dateLimit && maxDate && start.clone().add(this.dateLimit).isAfter(maxDate))
- maxDate = start.clone().add(this.dateLimit);
- if (maxDate && end.isAfter(maxDate))
- end = maxDate.clone();
-
- // If the end of the range is before the minimum or the start of the range is
- // after the maximum, don't display this range option at all.
- if ((this.minDate && end.isBefore(this.minDate, this.timepicker ? 'minute' : 'day'))
- || (maxDate && start.isAfter(maxDate, this.timepicker ? 'minute' : 'day')))
- continue;
-
- //Support unicode chars in the range names.
- var elem = document.createElement('textarea');
- elem.innerHTML = range;
- var rangeHtml = elem.value;
-
- this.ranges[rangeHtml] = [start, end];
- }
-
- var list = '';
- for (range in this.ranges) {
- list += '' + range + ' ';
- }
- if (this.showCustomRangeLabel) {
- list += '' + this.locale.customRangeLabel + ' ';
- }
- list += ' ';
- this.container.find('.ranges').prepend(list);
- }
-
- if (typeof cb === 'function') {
- this.callback = cb;
- }
-
- if (!this.timePicker) {
- this.startDate = this.startDate.startOf('day');
- this.endDate = this.endDate.endOf('day');
- this.container.find('.calendar-time').hide();
- }
-
- //can't be used together for now
- if (this.timePicker && this.autoApply)
- this.autoApply = false;
-
- if (this.autoApply && typeof options.ranges !== 'object') {
- this.container.find('.ranges').hide();
- } else if (this.autoApply) {
- this.container.find('.applyBtn, .cancelBtn').addClass('hide');
- }
-
- if (this.singleDatePicker) {
- this.container.addClass('single');
- this.container.find('.calendar.left').addClass('single');
- this.container.find('.calendar.left').show();
- this.container.find('.calendar.right').hide();
- this.container.find('.daterangepicker_input input, .daterangepicker_input > i').hide();
- if (this.timePicker) {
- this.container.find('.ranges ul').hide();
- } else {
- this.container.find('.ranges').hide();
- }
- }
-
- if ((typeof options.ranges === 'undefined' && !this.singleDatePicker) || this.alwaysShowCalendars) {
- this.container.addClass('show-calendar');
- }
-
- this.container.addClass('opens' + this.opens);
-
- //swap the position of the predefined ranges if opens right
- if (typeof options.ranges !== 'undefined' && this.opens == 'right') {
- this.container.find('.ranges').prependTo( this.container.find('.calendar.left').parent() );
- }
-
- //apply CSS classes and labels to buttons
- this.container.find('.applyBtn, .cancelBtn').addClass(this.buttonClasses);
- if (this.applyClass.length)
- this.container.find('.applyBtn').addClass(this.applyClass);
- if (this.cancelClass.length)
- this.container.find('.cancelBtn').addClass(this.cancelClass);
- this.container.find('.applyBtn').html(this.locale.applyLabel);
- this.container.find('.cancelBtn').html(this.locale.cancelLabel);
-
- //
- // event listeners
- //
-
- this.container.find('.calendar')
- .on('click.daterangepicker', '.prev', $.proxy(this.clickPrev, this))
- .on('click.daterangepicker', '.next', $.proxy(this.clickNext, this))
- .on('mousedown.daterangepicker', 'td.available', $.proxy(this.clickDate, this))
- .on('mouseenter.daterangepicker', 'td.available', $.proxy(this.hoverDate, this))
- .on('mouseleave.daterangepicker', 'td.available', $.proxy(this.updateFormInputs, this))
- .on('change.daterangepicker', 'select.yearselect', $.proxy(this.monthOrYearChanged, this))
- .on('change.daterangepicker', 'select.monthselect', $.proxy(this.monthOrYearChanged, this))
- .on('change.daterangepicker', 'select.hourselect,select.minuteselect,select.secondselect,select.ampmselect', $.proxy(this.timeChanged, this))
- .on('click.daterangepicker', '.daterangepicker_input input', $.proxy(this.showCalendars, this))
- .on('focus.daterangepicker', '.daterangepicker_input input', $.proxy(this.formInputsFocused, this))
- .on('blur.daterangepicker', '.daterangepicker_input input', $.proxy(this.formInputsBlurred, this))
- .on('change.daterangepicker', '.daterangepicker_input input', $.proxy(this.formInputsChanged, this))
- .on('keydown.daterangepicker', '.daterangepicker_input input', $.proxy(this.formInputsKeydown, this));
-
- this.container.find('.ranges')
- .on('click.daterangepicker', 'button.applyBtn', $.proxy(this.clickApply, this))
- .on('click.daterangepicker', 'button.cancelBtn', $.proxy(this.clickCancel, this))
- .on('click.daterangepicker', 'li', $.proxy(this.clickRange, this))
- .on('mouseenter.daterangepicker', 'li', $.proxy(this.hoverRange, this))
- .on('mouseleave.daterangepicker', 'li', $.proxy(this.updateFormInputs, this));
-
- if (this.element.is('input') || this.element.is('button')) {
- this.element.on({
- 'click.daterangepicker': $.proxy(this.show, this),
- 'focus.daterangepicker': $.proxy(this.show, this),
- 'keyup.daterangepicker': $.proxy(this.elementChanged, this),
- 'keydown.daterangepicker': $.proxy(this.keydown, this) //IE 11 compatibility
- });
- } else {
- this.element.on('click.daterangepicker', $.proxy(this.toggle, this));
- this.element.on('keydown.daterangepicker', $.proxy(this.toggle, this));
- }
-
- //
- // if attached to a text input, set the initial value
- //
-
- if (this.element.is('input') && !this.singleDatePicker && this.autoUpdateInput) {
- this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format));
- this.element.trigger('change');
- } else if (this.element.is('input') && this.autoUpdateInput) {
- this.element.val(this.startDate.format(this.locale.format));
- this.element.trigger('change');
- }
-
- };
-
- DateRangePicker.prototype = {
-
- constructor: DateRangePicker,
-
- setStartDate: function(startDate) {
- if (typeof startDate === 'string')
- this.startDate = moment(startDate, this.locale.format);
-
- if (typeof startDate === 'object')
- this.startDate = moment(startDate);
-
- if (!this.timePicker)
- this.startDate = this.startDate.startOf('day');
-
- if (this.timePicker && this.timePickerIncrement)
- this.startDate.minute(Math.round(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement);
-
- if (this.minDate && this.startDate.isBefore(this.minDate)) {
- this.startDate = this.minDate.clone();
- if (this.timePicker && this.timePickerIncrement)
- this.startDate.minute(Math.round(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement);
- }
-
- if (this.maxDate && this.startDate.isAfter(this.maxDate)) {
- this.startDate = this.maxDate.clone();
- if (this.timePicker && this.timePickerIncrement)
- this.startDate.minute(Math.floor(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement);
- }
-
- if (!this.isShowing)
- this.updateElement();
-
- this.updateMonthsInView();
- },
-
- setEndDate: function(endDate) {
- if (typeof endDate === 'string')
- this.endDate = moment(endDate, this.locale.format);
-
- if (typeof endDate === 'object')
- this.endDate = moment(endDate);
-
- if (!this.timePicker)
- this.endDate = this.endDate.add(1,'d').startOf('day').subtract(1,'second');
-
- if (this.timePicker && this.timePickerIncrement)
- this.endDate.minute(Math.round(this.endDate.minute() / this.timePickerIncrement) * this.timePickerIncrement);
-
- if (this.endDate.isBefore(this.startDate))
- this.endDate = this.startDate.clone();
-
- if (this.maxDate && this.endDate.isAfter(this.maxDate))
- this.endDate = this.maxDate.clone();
-
- if (this.dateLimit && this.startDate.clone().add(this.dateLimit).isBefore(this.endDate))
- this.endDate = this.startDate.clone().add(this.dateLimit);
-
- this.previousRightTime = this.endDate.clone();
-
- if (!this.isShowing)
- this.updateElement();
-
- this.updateMonthsInView();
- },
-
- isInvalidDate: function() {
- return false;
- },
-
- isCustomDate: function() {
- return false;
- },
-
- updateView: function() {
- if (this.timePicker) {
- this.renderTimePicker('left');
- this.renderTimePicker('right');
- if (!this.endDate) {
- this.container.find('.right .calendar-time select').attr('disabled', 'disabled').addClass('disabled');
- } else {
- this.container.find('.right .calendar-time select').removeAttr('disabled').removeClass('disabled');
- }
- }
- if (this.endDate) {
- this.container.find('input[name="daterangepicker_end"]').removeClass('active');
- this.container.find('input[name="daterangepicker_start"]').addClass('active');
- } else {
- this.container.find('input[name="daterangepicker_end"]').addClass('active');
- this.container.find('input[name="daterangepicker_start"]').removeClass('active');
- }
- this.updateMonthsInView();
- this.updateCalendars();
- this.updateFormInputs();
- },
-
- updateMonthsInView: function() {
- if (this.endDate) {
-
- //if both dates are visible already, do nothing
- if (!this.singleDatePicker && this.leftCalendar.month && this.rightCalendar.month &&
- (this.startDate.format('YYYY-MM') == this.leftCalendar.month.format('YYYY-MM') || this.startDate.format('YYYY-MM') == this.rightCalendar.month.format('YYYY-MM'))
- &&
- (this.endDate.format('YYYY-MM') == this.leftCalendar.month.format('YYYY-MM') || this.endDate.format('YYYY-MM') == this.rightCalendar.month.format('YYYY-MM'))
- ) {
- return;
- }
-
- this.leftCalendar.month = this.startDate.clone().date(2);
- if (!this.linkedCalendars && (this.endDate.month() != this.startDate.month() || this.endDate.year() != this.startDate.year())) {
- this.rightCalendar.month = this.endDate.clone().date(2);
- } else {
- this.rightCalendar.month = this.startDate.clone().date(2).add(1, 'month');
- }
-
- } else {
- if (this.leftCalendar.month.format('YYYY-MM') != this.startDate.format('YYYY-MM') && this.rightCalendar.month.format('YYYY-MM') != this.startDate.format('YYYY-MM')) {
- this.leftCalendar.month = this.startDate.clone().date(2);
- this.rightCalendar.month = this.startDate.clone().date(2).add(1, 'month');
- }
- }
- if (this.maxDate && this.linkedCalendars && !this.singleDatePicker && this.rightCalendar.month > this.maxDate) {
- this.rightCalendar.month = this.maxDate.clone().date(2);
- this.leftCalendar.month = this.maxDate.clone().date(2).subtract(1, 'month');
- }
- },
-
- updateCalendars: function() {
-
- if (this.timePicker) {
- var hour, minute, second;
- if (this.endDate) {
- hour = parseInt(this.container.find('.left .hourselect').val(), 10);
- minute = parseInt(this.container.find('.left .minuteselect').val(), 10);
- second = this.timePickerSeconds ? parseInt(this.container.find('.left .secondselect').val(), 10) : 0;
- if (!this.timePicker24Hour) {
- var ampm = this.container.find('.left .ampmselect').val();
- if (ampm === 'PM' && hour < 12)
- hour += 12;
- if (ampm === 'AM' && hour === 12)
- hour = 0;
- }
- } else {
- hour = parseInt(this.container.find('.right .hourselect').val(), 10);
- minute = parseInt(this.container.find('.right .minuteselect').val(), 10);
- second = this.timePickerSeconds ? parseInt(this.container.find('.right .secondselect').val(), 10) : 0;
- if (!this.timePicker24Hour) {
- var ampm = this.container.find('.right .ampmselect').val();
- if (ampm === 'PM' && hour < 12)
- hour += 12;
- if (ampm === 'AM' && hour === 12)
- hour = 0;
- }
- }
- this.leftCalendar.month.hour(hour).minute(minute).second(second);
- this.rightCalendar.month.hour(hour).minute(minute).second(second);
- }
-
- this.renderCalendar('left');
- this.renderCalendar('right');
-
- //highlight any predefined range matching the current start and end dates
- this.container.find('.ranges li').removeClass('active');
- if (this.endDate == null) return;
-
- this.calculateChosenLabel();
- },
-
- renderCalendar: function(side) {
-
- //
- // Build the matrix of dates that will populate the calendar
- //
-
- var calendar = side == 'left' ? this.leftCalendar : this.rightCalendar;
- var month = calendar.month.month();
- var year = calendar.month.year();
- var hour = calendar.month.hour();
- var minute = calendar.month.minute();
- var second = calendar.month.second();
- var daysInMonth = moment([year, month]).daysInMonth();
- var firstDay = moment([year, month, 1]);
- var lastDay = moment([year, month, daysInMonth]);
- var lastMonth = moment(firstDay).subtract(1, 'month').month();
- var lastYear = moment(firstDay).subtract(1, 'month').year();
- var daysInLastMonth = moment([lastYear, lastMonth]).daysInMonth();
- var dayOfWeek = firstDay.day();
-
- //initialize a 6 rows x 7 columns array for the calendar
- var calendar = [];
- calendar.firstDay = firstDay;
- calendar.lastDay = lastDay;
-
- for (var i = 0; i < 6; i++) {
- calendar[i] = [];
- }
-
- //populate the calendar with date objects
- var startDay = daysInLastMonth - dayOfWeek + this.locale.firstDay + 1;
- if (startDay > daysInLastMonth)
- startDay -= 7;
-
- if (dayOfWeek == this.locale.firstDay)
- startDay = daysInLastMonth - 6;
-
- var curDate = moment([lastYear, lastMonth, startDay, 12, minute, second]);
-
- var col, row;
- for (var i = 0, col = 0, row = 0; i < 42; i++, col++, curDate = moment(curDate).add(24, 'hour')) {
- if (i > 0 && col % 7 === 0) {
- col = 0;
- row++;
- }
- calendar[row][col] = curDate.clone().hour(hour).minute(minute).second(second);
- curDate.hour(12);
-
- if (this.minDate && calendar[row][col].format('YYYY-MM-DD') == this.minDate.format('YYYY-MM-DD') && calendar[row][col].isBefore(this.minDate) && side == 'left') {
- calendar[row][col] = this.minDate.clone();
- }
-
- if (this.maxDate && calendar[row][col].format('YYYY-MM-DD') == this.maxDate.format('YYYY-MM-DD') && calendar[row][col].isAfter(this.maxDate) && side == 'right') {
- calendar[row][col] = this.maxDate.clone();
- }
-
- }
-
- //make the calendar object available to hoverDate/clickDate
- if (side == 'left') {
- this.leftCalendar.calendar = calendar;
- } else {
- this.rightCalendar.calendar = calendar;
- }
-
- //
- // Display the calendar
- //
-
- var minDate = side == 'left' ? this.minDate : this.startDate;
- var maxDate = this.maxDate;
- var selected = side == 'left' ? this.startDate : this.endDate;
- var arrow = this.locale.direction == 'ltr' ? {left: 'chevron-left', right: 'chevron-right'} : {left: 'chevron-right', right: 'chevron-left'};
-
- var html = '';
- html += '';
- html += '';
-
- // add empty cell for week number
- if (this.showWeekNumbers || this.showISOWeekNumbers)
- html += ' ';
-
- if ((!minDate || minDate.isBefore(calendar.firstDay)) && (!this.linkedCalendars || side == 'left')) {
- html += ' ';
- } else {
- html += ' ';
- }
-
- var dateHtml = this.locale.monthNames[calendar[1][1].month()] + calendar[1][1].format(" YYYY");
-
- if (this.showDropdowns) {
- var currentMonth = calendar[1][1].month();
- var currentYear = calendar[1][1].year();
- var maxYear = (maxDate && maxDate.year()) || (currentYear + 5);
- var minYear = (minDate && minDate.year()) || (currentYear - 50);
- var inMinYear = currentYear == minYear;
- var inMaxYear = currentYear == maxYear;
-
- var monthHtml = '';
- for (var m = 0; m < 12; m++) {
- if ((!inMinYear || m >= minDate.month()) && (!inMaxYear || m <= maxDate.month())) {
- monthHtml += "" + this.locale.monthNames[m] + " ";
- } else {
- monthHtml += "" + this.locale.monthNames[m] + " ";
- }
- }
- monthHtml += " ";
-
- var yearHtml = '';
- for (var y = minYear; y <= maxYear; y++) {
- yearHtml += '' + y + ' ';
- }
- yearHtml += ' ';
-
- dateHtml = monthHtml + yearHtml;
- }
-
- html += '' + dateHtml + ' ';
- if ((!maxDate || maxDate.isAfter(calendar.lastDay)) && (!this.linkedCalendars || side == 'right' || this.singleDatePicker)) {
- html += ' ';
- } else {
- html += ' ';
- }
-
- html += ' ';
- html += '';
-
- // add week number label
- if (this.showWeekNumbers || this.showISOWeekNumbers)
- html += '' + this.locale.weekLabel + ' ';
-
- $.each(this.locale.daysOfWeek, function(index, dayOfWeek) {
- html += '' + dayOfWeek + ' ';
- });
-
- html += ' ';
- html += ' ';
- html += '';
-
- //adjust maxDate to reflect the dateLimit setting in order to
- //grey out end dates beyond the dateLimit
- if (this.endDate == null && this.dateLimit) {
- var maxLimit = this.startDate.clone().add(this.dateLimit).endOf('day');
- if (!maxDate || maxLimit.isBefore(maxDate)) {
- maxDate = maxLimit;
- }
- }
-
- for (var row = 0; row < 6; row++) {
- html += '';
-
- // add week number
- if (this.showWeekNumbers)
- html += '' + calendar[row][0].week() + ' ';
- else if (this.showISOWeekNumbers)
- html += '' + calendar[row][0].isoWeek() + ' ';
-
- for (var col = 0; col < 7; col++) {
-
- var classes = [];
-
- //highlight today's date
- if (calendar[row][col].isSame(new Date(), "day"))
- classes.push('today');
-
- //highlight weekends
- if (calendar[row][col].isoWeekday() > 5)
- classes.push('weekend');
-
- //grey out the dates in other months displayed at beginning and end of this calendar
- if (calendar[row][col].month() != calendar[1][1].month())
- classes.push('off');
-
- //don't allow selection of dates before the minimum date
- if (this.minDate && calendar[row][col].isBefore(this.minDate, 'day'))
- classes.push('off', 'disabled');
-
- //don't allow selection of dates after the maximum date
- if (maxDate && calendar[row][col].isAfter(maxDate, 'day'))
- classes.push('off', 'disabled');
-
- //don't allow selection of date if a custom function decides it's invalid
- if (this.isInvalidDate(calendar[row][col]))
- classes.push('off', 'disabled');
-
- //highlight the currently selected start date
- if (calendar[row][col].format('YYYY-MM-DD') == this.startDate.format('YYYY-MM-DD'))
- classes.push('active', 'start-date');
-
- //highlight the currently selected end date
- if (this.endDate != null && calendar[row][col].format('YYYY-MM-DD') == this.endDate.format('YYYY-MM-DD'))
- classes.push('active', 'end-date');
-
- //highlight dates in-between the selected dates
- if (this.endDate != null && calendar[row][col] > this.startDate && calendar[row][col] < this.endDate)
- classes.push('in-range');
-
- //apply custom classes for this date
- var isCustom = this.isCustomDate(calendar[row][col]);
- if (isCustom !== false) {
- if (typeof isCustom === 'string')
- classes.push(isCustom);
- else
- Array.prototype.push.apply(classes, isCustom);
- }
-
- var cname = '', disabled = false;
- for (var i = 0; i < classes.length; i++) {
- cname += classes[i] + ' ';
- if (classes[i] == 'disabled')
- disabled = true;
- }
- if (!disabled)
- cname += 'available';
-
- html += '' + calendar[row][col].date() + ' ';
-
- }
- html += ' ';
- }
-
- html += ' ';
- html += '
';
-
- this.container.find('.calendar.' + side + ' .calendar-table').html(html);
-
- },
-
- renderTimePicker: function(side) {
-
- // Don't bother updating the time picker if it's currently disabled
- // because an end date hasn't been clicked yet
- if (side == 'right' && !this.endDate) return;
-
- var html, selected, minDate, maxDate = this.maxDate;
-
- if (this.dateLimit && (!this.maxDate || this.startDate.clone().add(this.dateLimit).isAfter(this.maxDate)))
- maxDate = this.startDate.clone().add(this.dateLimit);
-
- if (side == 'left') {
- selected = this.startDate.clone();
- minDate = this.minDate;
- } else if (side == 'right') {
- selected = this.endDate.clone();
- minDate = this.startDate;
-
- //Preserve the time already selected
- var timeSelector = this.container.find('.calendar.right .calendar-time div');
- if (timeSelector.html() != '') {
-
- selected.hour(timeSelector.find('.hourselect option:selected').val() || selected.hour());
- selected.minute(timeSelector.find('.minuteselect option:selected').val() || selected.minute());
- selected.second(timeSelector.find('.secondselect option:selected').val() || selected.second());
-
- if (!this.timePicker24Hour) {
- var ampm = timeSelector.find('.ampmselect option:selected').val();
- if (ampm === 'PM' && selected.hour() < 12)
- selected.hour(selected.hour() + 12);
- if (ampm === 'AM' && selected.hour() === 12)
- selected.hour(0);
- }
-
- }
-
- if (selected.isBefore(this.startDate))
- selected = this.startDate.clone();
-
- if (maxDate && selected.isAfter(maxDate))
- selected = maxDate.clone();
-
- }
-
- //
- // hours
- //
-
- html = '';
-
- var start = this.timePicker24Hour ? 0 : 1;
- var end = this.timePicker24Hour ? 23 : 12;
-
- for (var i = start; i <= end; i++) {
- var i_in_24 = i;
- if (!this.timePicker24Hour)
- i_in_24 = selected.hour() >= 12 ? (i == 12 ? 12 : i + 12) : (i == 12 ? 0 : i);
-
- var time = selected.clone().hour(i_in_24);
- var disabled = false;
- if (minDate && time.minute(59).isBefore(minDate))
- disabled = true;
- if (maxDate && time.minute(0).isAfter(maxDate))
- disabled = true;
-
- if (i_in_24 == selected.hour() && !disabled) {
- html += '' + i + ' ';
- } else if (disabled) {
- html += '' + i + ' ';
- } else {
- html += '' + i + ' ';
- }
- }
-
- html += ' ';
-
- //
- // minutes
- //
-
- html += ': ';
-
- for (var i = 0; i < 60; i += this.timePickerIncrement) {
- var padded = i < 10 ? '0' + i : i;
- var time = selected.clone().minute(i);
-
- var disabled = false;
- if (minDate && time.second(59).isBefore(minDate))
- disabled = true;
- if (maxDate && time.second(0).isAfter(maxDate))
- disabled = true;
-
- if (selected.minute() == i && !disabled) {
- html += '' + padded + ' ';
- } else if (disabled) {
- html += '' + padded + ' ';
- } else {
- html += '' + padded + ' ';
- }
- }
-
- html += ' ';
-
- //
- // seconds
- //
-
- if (this.timePickerSeconds) {
- html += ': ';
-
- for (var i = 0; i < 60; i++) {
- var padded = i < 10 ? '0' + i : i;
- var time = selected.clone().second(i);
-
- var disabled = false;
- if (minDate && time.isBefore(minDate))
- disabled = true;
- if (maxDate && time.isAfter(maxDate))
- disabled = true;
-
- if (selected.second() == i && !disabled) {
- html += '' + padded + ' ';
- } else if (disabled) {
- html += '' + padded + ' ';
- } else {
- html += '' + padded + ' ';
- }
- }
-
- html += ' ';
- }
-
- //
- // AM/PM
- //
-
- if (!this.timePicker24Hour) {
- html += '';
-
- var am_html = '';
- var pm_html = '';
-
- if (minDate && selected.clone().hour(12).minute(0).second(0).isBefore(minDate))
- am_html = ' disabled="disabled" class="disabled"';
-
- if (maxDate && selected.clone().hour(0).minute(0).second(0).isAfter(maxDate))
- pm_html = ' disabled="disabled" class="disabled"';
-
- if (selected.hour() >= 12) {
- html += 'AM PM ';
- } else {
- html += 'AM PM ';
- }
-
- html += ' ';
- }
-
- this.container.find('.calendar.' + side + ' .calendar-time div').html(html);
-
- },
-
- updateFormInputs: function() {
-
- //ignore mouse movements while an above-calendar text input has focus
- if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus"))
- return;
-
- this.container.find('input[name=daterangepicker_start]').val(this.startDate.format(this.locale.format));
- if (this.endDate)
- this.container.find('input[name=daterangepicker_end]').val(this.endDate.format(this.locale.format));
-
- if (this.singleDatePicker || (this.endDate && (this.startDate.isBefore(this.endDate) || this.startDate.isSame(this.endDate)))) {
- this.container.find('button.applyBtn').removeAttr('disabled');
- } else {
- this.container.find('button.applyBtn').attr('disabled', 'disabled');
- }
-
- },
-
- move: function() {
- var parentOffset = { top: 0, left: 0 },
- containerTop;
- var parentRightEdge = $(window).width();
- if (!this.parentEl.is('body')) {
- parentOffset = {
- top: this.parentEl.offset().top - this.parentEl.scrollTop(),
- left: this.parentEl.offset().left - this.parentEl.scrollLeft()
- };
- parentRightEdge = this.parentEl[0].clientWidth + this.parentEl.offset().left;
- }
-
- if (this.drops == 'up')
- containerTop = this.element.offset().top - this.container.outerHeight() - parentOffset.top;
- else
- containerTop = this.element.offset().top + this.element.outerHeight() - parentOffset.top;
- this.container[this.drops == 'up' ? 'addClass' : 'removeClass']('dropup');
-
- if (this.opens == 'left') {
- this.container.css({
- top: containerTop,
- right: parentRightEdge - this.element.offset().left - this.element.outerWidth(),
- left: 'auto'
- });
- if (this.container.offset().left < 0) {
- this.container.css({
- right: 'auto',
- left: 9
- });
- }
- } else if (this.opens == 'center') {
- this.container.css({
- top: containerTop,
- left: this.element.offset().left - parentOffset.left + this.element.outerWidth() / 2
- - this.container.outerWidth() / 2,
- right: 'auto'
- });
- if (this.container.offset().left < 0) {
- this.container.css({
- right: 'auto',
- left: 9
- });
- }
- } else {
- this.container.css({
- top: containerTop,
- left: this.element.offset().left - parentOffset.left,
- right: 'auto'
- });
- if (this.container.offset().left + this.container.outerWidth() > $(window).width()) {
- this.container.css({
- left: 'auto',
- right: 0
- });
- }
- }
- },
-
- show: function(e) {
- if (this.isShowing) return;
-
- // Create a click proxy that is private to this instance of datepicker, for unbinding
- this._outsideClickProxy = $.proxy(function(e) { this.outsideClick(e); }, this);
-
- // Bind global datepicker mousedown for hiding and
- $(document)
- .on('mousedown.daterangepicker', this._outsideClickProxy)
- // also support mobile devices
- .on('touchend.daterangepicker', this._outsideClickProxy)
- // also explicitly play nice with Bootstrap dropdowns, which stopPropagation when clicking them
- .on('click.daterangepicker', '[data-toggle=dropdown]', this._outsideClickProxy)
- // and also close when focus changes to outside the picker (eg. tabbing between controls)
- .on('focusin.daterangepicker', this._outsideClickProxy);
-
- // Reposition the picker if the window is resized while it's open
- $(window).on('resize.daterangepicker', $.proxy(function(e) { this.move(e); }, this));
-
- this.oldStartDate = this.startDate.clone();
- this.oldEndDate = this.endDate.clone();
- this.previousRightTime = this.endDate.clone();
-
- this.updateView();
- this.container.show();
- this.move();
- this.element.trigger('show.daterangepicker', this);
- this.isShowing = true;
- },
-
- hide: function(e) {
- if (!this.isShowing) return;
-
- //incomplete date selection, revert to last values
- if (!this.endDate) {
- this.startDate = this.oldStartDate.clone();
- this.endDate = this.oldEndDate.clone();
- }
-
- //if a new date range was selected, invoke the user callback function
- if (!this.startDate.isSame(this.oldStartDate) || !this.endDate.isSame(this.oldEndDate))
- this.callback(this.startDate, this.endDate, this.chosenLabel);
-
- //if picker is attached to a text input, update it
- this.updateElement();
-
- $(document).off('.daterangepicker');
- $(window).off('.daterangepicker');
- this.container.hide();
- this.element.trigger('hide.daterangepicker', this);
- this.isShowing = false;
- },
-
- toggle: function(e) {
- if (this.isShowing) {
- this.hide();
- } else {
- this.show();
- }
- },
-
- outsideClick: function(e) {
- var target = $(e.target);
- // if the page is clicked anywhere except within the daterangerpicker/button
- // itself then call this.hide()
- if (
- // ie modal dialog fix
- e.type == "focusin" ||
- target.closest(this.element).length ||
- target.closest(this.container).length ||
- target.closest('.calendar-table').length
- ) return;
- this.hide();
- this.element.trigger('outsideClick.daterangepicker', this);
- },
-
- showCalendars: function() {
- this.container.addClass('show-calendar');
- this.move();
- this.element.trigger('showCalendar.daterangepicker', this);
- },
-
- hideCalendars: function() {
- this.container.removeClass('show-calendar');
- this.element.trigger('hideCalendar.daterangepicker', this);
- },
-
- hoverRange: function(e) {
-
- //ignore mouse movements while an above-calendar text input has focus
- if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus"))
- return;
-
- var label = e.target.getAttribute('data-range-key');
-
- if (label == this.locale.customRangeLabel) {
- this.updateView();
- } else {
- var dates = this.ranges[label];
- this.container.find('input[name=daterangepicker_start]').val(dates[0].format(this.locale.format));
- this.container.find('input[name=daterangepicker_end]').val(dates[1].format(this.locale.format));
- }
-
- },
-
- clickRange: function(e) {
- var label = e.target.getAttribute('data-range-key');
- this.chosenLabel = label;
- if (label == this.locale.customRangeLabel) {
- this.showCalendars();
- } else {
- var dates = this.ranges[label];
- this.startDate = dates[0];
- this.endDate = dates[1];
-
- if (!this.timePicker) {
- this.startDate.startOf('day');
- this.endDate.endOf('day');
- }
-
- if (!this.alwaysShowCalendars)
- this.hideCalendars();
- this.clickApply();
- }
- },
-
- clickPrev: function(e) {
- var cal = $(e.target).parents('.calendar');
- if (cal.hasClass('left')) {
- this.leftCalendar.month.subtract(1, 'month');
- if (this.linkedCalendars)
- this.rightCalendar.month.subtract(1, 'month');
- } else {
- this.rightCalendar.month.subtract(1, 'month');
- }
- this.updateCalendars();
- },
-
- clickNext: function(e) {
- var cal = $(e.target).parents('.calendar');
- if (cal.hasClass('left')) {
- this.leftCalendar.month.add(1, 'month');
- } else {
- this.rightCalendar.month.add(1, 'month');
- if (this.linkedCalendars)
- this.leftCalendar.month.add(1, 'month');
- }
- this.updateCalendars();
- },
-
- hoverDate: function(e) {
-
- //ignore mouse movements while an above-calendar text input has focus
- //if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus"))
- // return;
-
- //ignore dates that can't be selected
- if (!$(e.target).hasClass('available')) return;
-
- //have the text inputs above calendars reflect the date being hovered over
- var title = $(e.target).attr('data-title');
- var row = title.substr(1, 1);
- var col = title.substr(3, 1);
- var cal = $(e.target).parents('.calendar');
- var date = cal.hasClass('left') ? this.leftCalendar.calendar[row][col] : this.rightCalendar.calendar[row][col];
-
- if (this.endDate && !this.container.find('input[name=daterangepicker_start]').is(":focus")) {
- this.container.find('input[name=daterangepicker_start]').val(date.format(this.locale.format));
- } else if (!this.endDate && !this.container.find('input[name=daterangepicker_end]').is(":focus")) {
- this.container.find('input[name=daterangepicker_end]').val(date.format(this.locale.format));
- }
-
- //highlight the dates between the start date and the date being hovered as a potential end date
- var leftCalendar = this.leftCalendar;
- var rightCalendar = this.rightCalendar;
- var startDate = this.startDate;
- if (!this.endDate) {
- this.container.find('.calendar tbody td').each(function(index, el) {
-
- //skip week numbers, only look at dates
- if ($(el).hasClass('week')) return;
-
- var title = $(el).attr('data-title');
- var row = title.substr(1, 1);
- var col = title.substr(3, 1);
- var cal = $(el).parents('.calendar');
- var dt = cal.hasClass('left') ? leftCalendar.calendar[row][col] : rightCalendar.calendar[row][col];
-
- if ((dt.isAfter(startDate) && dt.isBefore(date)) || dt.isSame(date, 'day')) {
- $(el).addClass('in-range');
- } else {
- $(el).removeClass('in-range');
- }
-
- });
- }
-
- },
-
- clickDate: function(e) {
-
- if (!$(e.target).hasClass('available')) return;
-
- var title = $(e.target).attr('data-title');
- var row = title.substr(1, 1);
- var col = title.substr(3, 1);
- var cal = $(e.target).parents('.calendar');
- var date = cal.hasClass('left') ? this.leftCalendar.calendar[row][col] : this.rightCalendar.calendar[row][col];
-
- //
- // this function needs to do a few things:
- // * alternate between selecting a start and end date for the range,
- // * if the time picker is enabled, apply the hour/minute/second from the select boxes to the clicked date
- // * if autoapply is enabled, and an end date was chosen, apply the selection
- // * if single date picker mode, and time picker isn't enabled, apply the selection immediately
- // * if one of the inputs above the calendars was focused, cancel that manual input
- //
-
- if (this.endDate || date.isBefore(this.startDate, 'day')) { //picking start
- if (this.timePicker) {
- var hour = parseInt(this.container.find('.left .hourselect').val(), 10);
- if (!this.timePicker24Hour) {
- var ampm = this.container.find('.left .ampmselect').val();
- if (ampm === 'PM' && hour < 12)
- hour += 12;
- if (ampm === 'AM' && hour === 12)
- hour = 0;
- }
- var minute = parseInt(this.container.find('.left .minuteselect').val(), 10);
- var second = this.timePickerSeconds ? parseInt(this.container.find('.left .secondselect').val(), 10) : 0;
- date = date.clone().hour(hour).minute(minute).second(second);
- }
- this.endDate = null;
- this.setStartDate(date.clone());
- } else if (!this.endDate && date.isBefore(this.startDate)) {
- //special case: clicking the same date for start/end,
- //but the time of the end date is before the start date
- this.setEndDate(this.startDate.clone());
- } else { // picking end
- if (this.timePicker) {
- var hour = parseInt(this.container.find('.right .hourselect').val(), 10);
- if (!this.timePicker24Hour) {
- var ampm = this.container.find('.right .ampmselect').val();
- if (ampm === 'PM' && hour < 12)
- hour += 12;
- if (ampm === 'AM' && hour === 12)
- hour = 0;
- }
- var minute = parseInt(this.container.find('.right .minuteselect').val(), 10);
- var second = this.timePickerSeconds ? parseInt(this.container.find('.right .secondselect').val(), 10) : 0;
- date = date.clone().hour(hour).minute(minute).second(second);
- }
- this.setEndDate(date.clone());
- if (this.autoApply) {
- this.calculateChosenLabel();
- this.clickApply();
- }
- }
-
- if (this.singleDatePicker) {
- this.setEndDate(this.startDate);
- if (!this.timePicker)
- this.clickApply();
- }
-
- this.updateView();
-
- //This is to cancel the blur event handler if the mouse was in one of the inputs
- e.stopPropagation();
-
- },
-
- calculateChosenLabel: function () {
- var customRange = true;
- var i = 0;
- for (var range in this.ranges) {
- if (this.timePicker) {
- var format = this.timePickerSeconds ? "YYYY-MM-DD hh:mm:ss" : "YYYY-MM-DD hh:mm";
- //ignore times when comparing dates if time picker seconds is not enabled
- if (this.startDate.format(format) == this.ranges[range][0].format(format) && this.endDate.format(format) == this.ranges[range][1].format(format)) {
- customRange = false;
- this.chosenLabel = this.container.find('.ranges li:eq(' + i + ')').addClass('active').html();
- break;
- }
- } else {
- //ignore times when comparing dates if time picker is not enabled
- if (this.startDate.format('YYYY-MM-DD') == this.ranges[range][0].format('YYYY-MM-DD') && this.endDate.format('YYYY-MM-DD') == this.ranges[range][1].format('YYYY-MM-DD')) {
- customRange = false;
- this.chosenLabel = this.container.find('.ranges li:eq(' + i + ')').addClass('active').html();
- break;
- }
- }
- i++;
- }
- if (customRange) {
- if (this.showCustomRangeLabel) {
- this.chosenLabel = this.container.find('.ranges li:last').addClass('active').html();
- } else {
- this.chosenLabel = null;
- }
- this.showCalendars();
- }
- },
-
- clickApply: function(e) {
- this.hide();
- this.element.trigger('apply.daterangepicker', this);
- },
-
- clickCancel: function(e) {
- this.startDate = this.oldStartDate;
- this.endDate = this.oldEndDate;
- this.hide();
- this.element.trigger('cancel.daterangepicker', this);
- },
-
- monthOrYearChanged: function(e) {
- var isLeft = $(e.target).closest('.calendar').hasClass('left'),
- leftOrRight = isLeft ? 'left' : 'right',
- cal = this.container.find('.calendar.'+leftOrRight);
-
- // Month must be Number for new moment versions
- var month = parseInt(cal.find('.monthselect').val(), 10);
- var year = cal.find('.yearselect').val();
-
- if (!isLeft) {
- if (year < this.startDate.year() || (year == this.startDate.year() && month < this.startDate.month())) {
- month = this.startDate.month();
- year = this.startDate.year();
- }
- }
-
- if (this.minDate) {
- if (year < this.minDate.year() || (year == this.minDate.year() && month < this.minDate.month())) {
- month = this.minDate.month();
- year = this.minDate.year();
- }
- }
-
- if (this.maxDate) {
- if (year > this.maxDate.year() || (year == this.maxDate.year() && month > this.maxDate.month())) {
- month = this.maxDate.month();
- year = this.maxDate.year();
- }
- }
-
- if (isLeft) {
- this.leftCalendar.month.month(month).year(year);
- if (this.linkedCalendars)
- this.rightCalendar.month = this.leftCalendar.month.clone().add(1, 'month');
- } else {
- this.rightCalendar.month.month(month).year(year);
- if (this.linkedCalendars)
- this.leftCalendar.month = this.rightCalendar.month.clone().subtract(1, 'month');
- }
- this.updateCalendars();
- },
-
- timeChanged: function(e) {
-
- var cal = $(e.target).closest('.calendar'),
- isLeft = cal.hasClass('left');
-
- var hour = parseInt(cal.find('.hourselect').val(), 10);
- var minute = parseInt(cal.find('.minuteselect').val(), 10);
- var second = this.timePickerSeconds ? parseInt(cal.find('.secondselect').val(), 10) : 0;
-
- if (!this.timePicker24Hour) {
- var ampm = cal.find('.ampmselect').val();
- if (ampm === 'PM' && hour < 12)
- hour += 12;
- if (ampm === 'AM' && hour === 12)
- hour = 0;
- }
-
- if (isLeft) {
- var start = this.startDate.clone();
- start.hour(hour);
- start.minute(minute);
- start.second(second);
- this.setStartDate(start);
- if (this.singleDatePicker) {
- this.endDate = this.startDate.clone();
- } else if (this.endDate && this.endDate.format('YYYY-MM-DD') == start.format('YYYY-MM-DD') && this.endDate.isBefore(start)) {
- this.setEndDate(start.clone());
- }
- } else if (this.endDate) {
- var end = this.endDate.clone();
- end.hour(hour);
- end.minute(minute);
- end.second(second);
- this.setEndDate(end);
- }
-
- //update the calendars so all clickable dates reflect the new time component
- this.updateCalendars();
-
- //update the form inputs above the calendars with the new time
- this.updateFormInputs();
-
- //re-render the time pickers because changing one selection can affect what's enabled in another
- this.renderTimePicker('left');
- this.renderTimePicker('right');
-
- },
-
- formInputsChanged: function(e) {
- var isRight = $(e.target).closest('.calendar').hasClass('right');
- var start = moment(this.container.find('input[name="daterangepicker_start"]').val(), this.locale.format);
- var end = moment(this.container.find('input[name="daterangepicker_end"]').val(), this.locale.format);
-
- if (start.isValid() && end.isValid()) {
-
- if (isRight && end.isBefore(start))
- start = end.clone();
-
- this.setStartDate(start);
- this.setEndDate(end);
-
- if (isRight) {
- this.container.find('input[name="daterangepicker_start"]').val(this.startDate.format(this.locale.format));
- } else {
- this.container.find('input[name="daterangepicker_end"]').val(this.endDate.format(this.locale.format));
- }
-
- }
-
- this.updateView();
- },
-
- formInputsFocused: function(e) {
-
- // Highlight the focused input
- this.container.find('input[name="daterangepicker_start"], input[name="daterangepicker_end"]').removeClass('active');
- $(e.target).addClass('active');
-
- // Set the state such that if the user goes back to using a mouse,
- // the calendars are aware we're selecting the end of the range, not
- // the start. This allows someone to edit the end of a date range without
- // re-selecting the beginning, by clicking on the end date input then
- // using the calendar.
- var isRight = $(e.target).closest('.calendar').hasClass('right');
- if (isRight) {
- this.endDate = null;
- this.setStartDate(this.startDate.clone());
- this.updateView();
- }
-
- },
-
- formInputsBlurred: function(e) {
-
- // this function has one purpose right now: if you tab from the first
- // text input to the second in the UI, the endDate is nulled so that
- // you can click another, but if you tab out without clicking anything
- // or changing the input value, the old endDate should be retained
-
- if (!this.endDate) {
- var val = this.container.find('input[name="daterangepicker_end"]').val();
- var end = moment(val, this.locale.format);
- if (end.isValid()) {
- this.setEndDate(end);
- this.updateView();
- }
- }
-
- },
-
- formInputsKeydown: function(e) {
- // This function ensures that if the 'enter' key was pressed in the input, then the calendars
- // are updated with the startDate and endDate.
- // This behaviour is automatic in Chrome/Firefox/Edge but not in IE 11 hence why this exists.
- // Other browsers and versions of IE are untested and the behaviour is unknown.
- if (e.keyCode === 13) {
- // Prevent the calendar from being updated twice on Chrome/Firefox/Edge
- e.preventDefault();
- this.formInputsChanged(e);
- }
- },
-
-
- elementChanged: function() {
- if (!this.element.is('input')) return;
- if (!this.element.val().length) return;
-
- var dateString = this.element.val().split(this.locale.separator),
- start = null,
- end = null;
-
- if (dateString.length === 2) {
- start = moment(dateString[0], this.locale.format);
- end = moment(dateString[1], this.locale.format);
- }
-
- if (this.singleDatePicker || start === null || end === null) {
- start = moment(this.element.val(), this.locale.format);
- end = start;
- }
-
- if (!start.isValid() || !end.isValid()) return;
-
- this.setStartDate(start);
- this.setEndDate(end);
- this.updateView();
- },
-
- keydown: function(e) {
- //hide on tab or enter
- if ((e.keyCode === 9) || (e.keyCode === 13)) {
- this.hide();
- }
-
- //hide on esc and prevent propagation
- if (e.keyCode === 27) {
- e.preventDefault();
- e.stopPropagation();
-
- this.hide();
- }
- },
-
- updateElement: function() {
- if (this.element.is('input') && !this.singleDatePicker && this.autoUpdateInput) {
- this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format));
- this.element.trigger('change');
- } else if (this.element.is('input') && this.autoUpdateInput) {
- this.element.val(this.startDate.format(this.locale.format));
- this.element.trigger('change');
- }
- },
-
- remove: function() {
- this.container.remove();
- this.element.off('.daterangepicker');
- this.element.removeData();
- }
-
- };
-
- $.fn.daterangepicker = function(options, callback) {
- var implementOptions = $.extend(true, {}, $.fn.daterangepicker.defaultOptions, options);
- this.each(function() {
- var el = $(this);
- if (el.data('daterangepicker'))
- el.data('daterangepicker').remove();
- el.data('daterangepicker', new DateRangePicker(el, implementOptions, callback));
- });
- return this;
- };
-
- return DateRangePicker;
-
-}));
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.scss b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.scss
deleted file mode 100755
index f61da9614..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/daterangepicker.scss
+++ /dev/null
@@ -1,611 +0,0 @@
-//
-// A stylesheet for use with Bootstrap 3.x
-// @author: Dan Grossman http://www.dangrossman.info/
-// @copyright: Copyright (c) 2012-2015 Dan Grossman. All rights reserved.
-// @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php
-// @website: https://www.improvely.com/
-//
-
-//
-// VARIABLES
-//
-
-//
-// Settings
-
-// The class name to contain everything within.
-$prefix-class: daterangepicker;
-$arrow-size: 7px !default;
-
-//
-// Colors
-$daterangepicker-color: inherit !default;
-$daterangepicker-bg-color: #fff !default;
-
-$daterangepicker-cell-color: $daterangepicker-color !default;
-$daterangepicker-cell-border-color: transparent !default;
-$daterangepicker-cell-bg-color: $daterangepicker-bg-color !default;
-
-$daterangepicker-cell-hover-color: $daterangepicker-color !default;
-$daterangepicker-cell-hover-border-color: $daterangepicker-cell-border-color !default;
-$daterangepicker-cell-hover-bg-color: #eee !default;
-
-$daterangepicker-in-range-color: #000 !default;
-$daterangepicker-in-range-border-color: transparent !default;
-$daterangepicker-in-range-bg-color: #ebf4f8 !default;
-
-$daterangepicker-active-color: #fff !default;
-$daterangepicker-active-bg-color: #357ebd !default;
-$daterangepicker-active-border-color: transparent !default;
-
-$daterangepicker-unselected-color: #999 !default;
-$daterangepicker-unselected-border-color: transparent !default;
-$daterangepicker-unselected-bg-color: #fff !default;
-
-//
-// daterangepicker
-$daterangepicker-width: 278px !default;
-$daterangepicker-padding: 4px !default;
-$daterangepicker-z-index: 3000 !default;
-
-$daterangepicker-border-size: 1px !default;
-$daterangepicker-border-color: #ccc !default;
-$daterangepicker-border-radius: 4px !default;
-
-
-//
-// Calendar
-$daterangepicker-calendar-margin: $daterangepicker-padding !default;
-$daterangepicker-calendar-bg-color: $daterangepicker-bg-color !default;
-
-$daterangepicker-calendar-border-size: 1px !default;
-$daterangepicker-calendar-border-color: $daterangepicker-bg-color !default;
-$daterangepicker-calendar-border-radius: $daterangepicker-border-radius !default;
-
-//
-// Calendar Cells
-$daterangepicker-cell-size: 20px !default;
-$daterangepicker-cell-width: $daterangepicker-cell-size !default;
-$daterangepicker-cell-height: $daterangepicker-cell-size !default;
-
-$daterangepicker-cell-border-radius: $daterangepicker-calendar-border-radius !default;
-$daterangepicker-cell-border-size: 1px !default;
-
-//
-// Dropdowns
-$daterangepicker-dropdown-z-index: $daterangepicker-z-index + 1 !default;
-
-//
-// Controls
-$daterangepicker-control-height: 30px !default;
-$daterangepicker-control-line-height: $daterangepicker-control-height !default;
-$daterangepicker-control-color: #555 !default;
-
-$daterangepicker-control-border-size: 1px !default;
-$daterangepicker-control-border-color: #ccc !default;
-$daterangepicker-control-border-radius: 4px !default;
-
-$daterangepicker-control-active-border-size: 1px !default;
-$daterangepicker-control-active-border-color: #08c !default;
-$daterangepicker-control-active-border-radius: $daterangepicker-control-border-radius !default;
-
-$daterangepicker-control-disabled-color: #ccc !default;
-
-//
-// Ranges
-$daterangepicker-ranges-color: #08c !default;
-$daterangepicker-ranges-bg-color: #f5f5f5 !default;
-
-$daterangepicker-ranges-border-size: 1px !default;
-$daterangepicker-ranges-border-color: $daterangepicker-ranges-bg-color !default;
-$daterangepicker-ranges-border-radius: $daterangepicker-border-radius !default;
-
-$daterangepicker-ranges-hover-color: #fff !default;
-$daterangepicker-ranges-hover-bg-color: $daterangepicker-ranges-color !default;
-$daterangepicker-ranges-hover-border-size: $daterangepicker-ranges-border-size !default;
-$daterangepicker-ranges-hover-border-color: $daterangepicker-ranges-hover-bg-color !default;
-$daterangepicker-ranges-hover-border-radius: $daterangepicker-border-radius !default;
-
-$daterangepicker-ranges-active-border-size: $daterangepicker-ranges-border-size !default;
-$daterangepicker-ranges-active-border-color: $daterangepicker-ranges-bg-color !default;
-$daterangepicker-ranges-active-border-radius: $daterangepicker-border-radius !default;
-
-//
-// STYLESHEETS
-//
-.#{$prefix-class} {
- position: absolute;
- color: $daterangepicker-color;
- background-color: $daterangepicker-bg-color;
- border-radius: $daterangepicker-border-radius;
- width: $daterangepicker-width;
- padding: $daterangepicker-padding;
- margin-top: $daterangepicker-border-size;
-
- // TODO: Should these be parameterized??
- top: 100px;
- left: 20px;
-
- $arrow-prefix-size: $arrow-size;
- $arrow-suffix-size: ($arrow-size - $daterangepicker-border-size);
-
- &:before, &:after {
- position: absolute;
- display: inline-block;
-
- border-bottom-color: rgba(0, 0, 0, 0.2);
- content: '';
- }
-
- &:before {
- top: -$arrow-prefix-size;
-
- border-right: $arrow-prefix-size solid transparent;
- border-left: $arrow-prefix-size solid transparent;
- border-bottom: $arrow-prefix-size solid $daterangepicker-border-color;
- }
-
- &:after {
- top: -$arrow-suffix-size;
-
- border-right: $arrow-suffix-size solid transparent;
- border-bottom: $arrow-suffix-size solid $daterangepicker-bg-color;
- border-left: $arrow-suffix-size solid transparent;
- }
-
- &.opensleft {
- &:before {
- // TODO: Make this relative to prefix size.
- right: $arrow-prefix-size + 2px;
- }
-
- &:after {
- // TODO: Make this relative to suffix size.
- right: $arrow-suffix-size + 4px;
- }
- }
-
- &.openscenter {
- &:before {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto;
- }
-
- &:after {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto;
- }
- }
-
- &.opensright {
- &:before {
- // TODO: Make this relative to prefix size.
- left: $arrow-prefix-size + 2px;
- }
-
- &:after {
- // TODO: Make this relative to suffix size.
- left: $arrow-suffix-size + 4px;
- }
- }
-
- &.dropup {
- margin-top: -5px;
-
- // NOTE: Note sure why these are special-cased.
- &:before {
- top: initial;
- bottom: -$arrow-prefix-size;
- border-bottom: initial;
- border-top: $arrow-prefix-size solid $daterangepicker-border-color;
- }
-
- &:after {
- top: initial;
- bottom:-$arrow-suffix-size;
- border-bottom: initial;
- border-top: $arrow-suffix-size solid $daterangepicker-bg-color;
- }
- }
-
- &.dropdown-menu {
- max-width: none;
- z-index: $daterangepicker-dropdown-z-index;
- }
-
- &.single {
- .ranges, .calendar {
- float: none;
- }
- }
-
- /* Calendars */
- &.show-calendar {
- .calendar {
- display: block;
- }
- }
-
- .calendar {
- display: none;
- max-width: $daterangepicker-width - ($daterangepicker-calendar-margin * 2);
- margin: $daterangepicker-calendar-margin;
-
- &.single {
- .calendar-table {
- border: none;
- }
- }
-
- th, td {
- white-space: nowrap;
- text-align: center;
-
- // TODO: Should this actually be hard-coded?
- min-width: 32px;
- }
- }
-
- .calendar-table {
- border: $daterangepicker-calendar-border-size solid $daterangepicker-calendar-border-color;
- padding: $daterangepicker-calendar-margin;
- border-radius: $daterangepicker-calendar-border-radius;
- background-color: $daterangepicker-calendar-bg-color;
- }
-
- table {
- width: 100%;
- margin: 0;
- }
-
- td, th {
- text-align: center;
- width: $daterangepicker-cell-width;
- height: $daterangepicker-cell-height;
- border-radius: $daterangepicker-cell-border-radius;
- border: $daterangepicker-cell-border-size solid $daterangepicker-cell-border-color;
- white-space: nowrap;
- cursor: pointer;
-
- &.available {
- &:hover {
- background-color: $daterangepicker-cell-hover-bg-color;
- border-color: $daterangepicker-cell-hover-border-color;
- color: $daterangepicker-cell-hover-color;
- }
- }
-
- &.week {
- font-size: 80%;
- color: #ccc;
- }
- }
-
- td {
- &.off {
- &, &.in-range, &.start-date, &.end-date {
- background-color: $daterangepicker-unselected-bg-color;
- border-color: $daterangepicker-unselected-border-color;
- color: $daterangepicker-unselected-color;
- }
- }
-
- //
- // Date Range
- &.in-range {
- background-color: $daterangepicker-in-range-bg-color;
- border-color: $daterangepicker-in-range-border-color;
- color: $daterangepicker-in-range-color;
-
- // TODO: Should this be static or should it be parameterized?
- border-radius: 0;
- }
-
- &.start-date {
- border-radius: $daterangepicker-cell-border-radius 0 0 $daterangepicker-cell-border-radius;
- }
-
- &.end-date {
- border-radius: 0 $daterangepicker-cell-border-radius $daterangepicker-cell-border-radius 0;
- }
-
- &.start-date.end-date {
- border-radius: $daterangepicker-cell-border-radius;
- }
-
- &.active {
- &, &:hover {
- background-color: $daterangepicker-active-bg-color;
- border-color: $daterangepicker-active-border-color;
- color: $daterangepicker-active-color;
- }
- }
- }
-
- th {
- &.month {
- width: auto;
- }
- }
-
- //
- // Disabled Controls
- //
- td, option {
- &.disabled {
- color: #999;
- cursor: not-allowed;
- text-decoration: line-through;
- }
- }
-
- select {
- &.monthselect, &.yearselect {
- font-size: 12px;
- padding: 1px;
- height: auto;
- margin: 0;
- cursor: default;
- }
-
- &.monthselect {
- margin-right: 2%;
- width: 56%;
- }
-
- &.yearselect {
- width: 40%;
- }
-
- &.hourselect, &.minuteselect, &.secondselect, &.ampmselect {
- width: 50px;
- margin-bottom: 0;
- }
- }
-
- //
- // Text Input Controls (above calendar)
- //
- .input-mini {
- border: $daterangepicker-control-border-size solid $daterangepicker-control-border-color;
- border-radius: $daterangepicker-control-border-radius;
- color: $daterangepicker-control-color;
- height: $daterangepicker-control-line-height;
- line-height: $daterangepicker-control-height;
- display: block;
- vertical-align: middle;
-
- // TODO: Should these all be static, too??
- margin: 0 0 5px 0;
- padding: 0 6px 0 28px;
- width: 100%;
-
- &.active {
- border: $daterangepicker-control-active-border-size solid $daterangepicker-control-active-border-color;
- border-radius: $daterangepicker-control-active-border-radius;
- }
- }
-
- .daterangepicker_input {
- position: relative;
-
- i {
- position: absolute;
-
- // NOTE: These appear to be eyeballed to me...
- left: 8px;
- top: 8px;
- }
- }
- &.rtl {
- .input-mini {
- padding-right: 28px;
- padding-left: 6px;
- }
- .daterangepicker_input i {
- left: auto;
- right: 8px;
- }
- }
-
- //
- // Time Picker
- //
- .calendar-time {
- text-align: center;
- margin: 5px auto;
- line-height: $daterangepicker-control-line-height;
- position: relative;
- padding-left: 28px;
-
- select {
- &.disabled {
- color: $daterangepicker-control-disabled-color;
- cursor: not-allowed;
- }
- }
- }
-}
-
-//
-// Predefined Ranges
-//
-
-.ranges {
- font-size: 11px;
- float: none;
- margin: 4px;
- text-align: left;
-
- ul {
- list-style: none;
- margin: 0 auto;
- padding: 0;
- width: 100%;
- }
-
- li {
- font-size: 13px;
- background-color: $daterangepicker-ranges-bg-color;
- border: $daterangepicker-ranges-border-size solid $daterangepicker-ranges-border-color;
- border-radius: $daterangepicker-ranges-border-radius;
- color: $daterangepicker-ranges-color;
- padding: 3px 12px;
- margin-bottom: 8px;
- cursor: pointer;
-
- &:hover {
- background-color: $daterangepicker-ranges-hover-bg-color;
- border: $daterangepicker-ranges-hover-border-size solid $daterangepicker-ranges-hover-border-color;
- color: $daterangepicker-ranges-hover-color;
- }
-
- &.active {
- background-color: $daterangepicker-ranges-hover-bg-color;
- border: $daterangepicker-ranges-hover-border-size solid $daterangepicker-ranges-hover-border-color;
- color: $daterangepicker-ranges-hover-color;
- }
- }
-}
-
-/* Larger Screen Styling */
-@media (min-width: 564px) {
- .#{$prefix-class} {
- width: auto;
-
- .ranges {
- ul {
- width: 160px;
- }
- }
-
- &.single {
- .ranges {
- ul {
- width: 100%;
- }
- }
-
- .calendar.left {
- clear: none;
- }
-
- &.ltr {
- .ranges, .calendar {
- float:left;
- }
- }
- &.rtl {
- .ranges, .calendar {
- float:right;
- }
- }
- }
-
- &.ltr {
- direction: ltr;
- text-align: left;
- .calendar{
- &.left {
- clear: left;
- margin-right: 0;
-
- .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
- }
- }
-
- &.right {
- margin-left: 0;
-
- .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
- }
- }
- }
-
- .left .daterangepicker_input {
- padding-right: 12px;
- }
-
- .calendar.left .calendar-table {
- padding-right: 12px;
- }
-
- .ranges, .calendar {
- float: left;
- }
- }
- &.rtl {
- direction: rtl;
- text-align: right;
- .calendar{
- &.left {
- clear: right;
- margin-left: 0;
-
- .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
- }
- }
-
- &.right {
- margin-right: 0;
-
- .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
- }
- }
- }
-
- .left .daterangepicker_input {
- padding-left: 12px;
- }
-
- .calendar.left .calendar-table {
- padding-left: 12px;
- }
-
- .ranges, .calendar {
- text-align: right;
- float: right;
- }
- }
- }
-}
-
-@media (min-width: 730px) {
- .#{$prefix-class} {
- .ranges {
- width: auto;
- }
- &.ltr {
- .ranges {
- float: left;
- }
- }
- &.rtl {
- .ranges {
- float: right;
- }
- }
-
- .calendar.left {
- clear: none !important;
- }
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/demo.html b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/demo.html
deleted file mode 100755
index 7633ee426..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/demo.html
+++ /dev/null
@@ -1,369 +0,0 @@
-
-
-
-
- A date range picker for Bootstrap
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Configuration Builder
-
-
-
-
-
-
-
Your Date Range Picker
-
-
-
-
-
-
Configuration
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/drp.png b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/drp.png
deleted file mode 100755
index 9eee1fa33..000000000
Binary files a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/drp.png and /dev/null differ
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/index.html b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/index.html
deleted file mode 100755
index 533c94edf..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/index.html
+++ /dev/null
@@ -1,210 +0,0 @@
-
-
-
-
- A date range picker for Bootstrap
-
-
-
-
-
-
-
-
-
Configuration Builder
-
-
-
-
-
-
-
Your Date Range Picker
-
-
-
-
-
-
Configuration
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/main.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/main.js
deleted file mode 100755
index 5c0f99a22..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/main.js
+++ /dev/null
@@ -1,141 +0,0 @@
-requirejs.config({
- "paths": {
- "jquery": "https://code.jquery.com/jquery-1.11.3.min",
- "moment": "../../moment",
- "daterangepicker": "../../daterangepicker"
- }
-});
-
-requirejs(['jquery', 'moment', 'daterangepicker'] , function ($, moment) {
-$(document).ready(function() {
-
- $('#config-text').keyup(function() {
- eval($(this).val());
- });
-
- $('.configurator input, .configurator select').change(function() {
- updateConfig();
- });
-
- $('.demo i').click(function() {
- $(this).parent().find('input').click();
- });
-
- $('#startDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment().subtract(6, 'days')
- });
-
- $('#endDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment()
- });
-
- updateConfig();
-
- function updateConfig() {
- var options = {};
-
- if ($('#singleDatePicker').is(':checked'))
- options.singleDatePicker = true;
-
- if ($('#showDropdowns').is(':checked'))
- options.showDropdowns = true;
-
- if ($('#showWeekNumbers').is(':checked'))
- options.showWeekNumbers = true;
-
- if ($('#showISOWeekNumbers').is(':checked'))
- options.showISOWeekNumbers = true;
-
- if ($('#timePicker').is(':checked'))
- options.timePicker = true;
-
- if ($('#timePicker24Hour').is(':checked'))
- options.timePicker24Hour = true;
-
- if ($('#timePickerIncrement').val().length && $('#timePickerIncrement').val() != 1)
- options.timePickerIncrement = parseInt($('#timePickerIncrement').val(), 10);
-
- if ($('#timePickerSeconds').is(':checked'))
- options.timePickerSeconds = true;
-
- if ($('#autoApply').is(':checked'))
- options.autoApply = true;
-
- if ($('#dateLimit').is(':checked'))
- options.dateLimit = { days: 7 };
-
- if ($('#ranges').is(':checked')) {
- options.ranges = {
- 'Today': [moment(), moment()],
- 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
- 'Last 7 Days': [moment().subtract(6, 'days'), moment()],
- 'Last 30 Days': [moment().subtract(29, 'days'), moment()],
- 'This Month': [moment().startOf('month'), moment().endOf('month')],
- 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
- };
- }
-
- if ($('#locale').is(':checked')) {
- options.locale = {
- format: 'MM/DD/YYYY HH:mm',
- separator: ' - ',
- applyLabel: 'Apply',
- cancelLabel: 'Cancel',
- fromLabel: 'From',
- toLabel: 'To',
- customRangeLabel: 'Custom',
- daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'],
- monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
- firstDay: 1
- };
- }
-
- if (!$('#linkedCalendars').is(':checked'))
- options.linkedCalendars = false;
-
- if (!$('#autoUpdateInput').is(':checked'))
- options.autoUpdateInput = false;
-
- if ($('#alwaysShowCalendars').is(':checked'))
- options.alwaysShowCalendars = true;
-
- if ($('#parentEl').val().length)
- options.parentEl = $('#parentEl').val();
-
- if ($('#startDate').val().length)
- options.startDate = $('#startDate').val();
-
- if ($('#endDate').val().length)
- options.endDate = $('#endDate').val();
-
- if ($('#minDate').val().length)
- options.minDate = $('#minDate').val();
-
- if ($('#maxDate').val().length)
- options.maxDate = $('#maxDate').val();
-
- if ($('#opens').val().length && $('#opens').val() != 'right')
- options.opens = $('#opens').val();
-
- if ($('#drops').val().length && $('#drops').val() != 'down')
- options.drops = $('#drops').val();
-
- if ($('#buttonClasses').val().length && $('#buttonClasses').val() != 'btn btn-sm')
- options.buttonClasses = $('#buttonClasses').val();
-
- if ($('#applyClass').val().length && $('#applyClass').val() != 'btn-success')
- options.applyClass = $('#applyClass').val();
-
- if ($('#cancelClass').val().length && $('#cancelClass').val() != 'btn-default')
- options.cancelClass = $('#cancelClass').val();
-
- $('#config-text').val("$('#demo').daterangepicker(" + JSON.stringify(options, null, ' ') + ", function(start, end, label) {\n console.log(\"New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')\");\n});");
-
- $('#config-demo').daterangepicker(options, function(start, end, label) { console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')'); });
-
- }
-
-});
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/require.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/require.js
deleted file mode 100755
index 857eb5b70..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/amd/require.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- RequireJS 2.2.0 Copyright jQuery Foundation and other contributors.
- Released under MIT license, http://github.com/requirejs/requirejs/LICENSE
-*/
-var requirejs,require,define;
-(function(ga){function ka(b,c,d,g){return g||""}function K(b){return"[object Function]"===Q.call(b)}function L(b){return"[object Array]"===Q.call(b)}function y(b,c){if(b){var d;for(d=0;dthis.depCount&&!this.defined){if(K(k)){if(this.events.error&&this.map.isDefine||g.onError!==
-ha)try{h=l.execCb(c,k,b,h)}catch(d){a=d}else h=l.execCb(c,k,b,h);this.map.isDefine&&void 0===h&&((b=this.module)?h=b.exports:this.usingExports&&(h=this.exports));if(a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",A(this.error=a)}else h=k;this.exports=h;if(this.map.isDefine&&!this.ignore&&(v[c]=h,g.onResourceLoad)){var f=[];y(this.depMaps,function(a){f.push(a.normalizedMap||a)});g.onResourceLoad(l,this.map,f)}C(c);
-this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}},callPlugin:function(){var a=this.map,b=a.id,d=q(a.prefix);this.depMaps.push(d);w(d,"defined",z(this,function(h){var k,f,d=e(fa,this.map.id),M=this.map.name,r=this.map.parentMap?this.map.parentMap.name:null,m=l.makeRequire(a.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(h.normalize&&(M=h.normalize(M,function(a){return c(a,r,!0)})||
-""),f=q(a.prefix+"!"+M,this.map.parentMap),w(f,"defined",z(this,function(a){this.map.normalizedMap=f;this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),h=e(t,f.id)){this.depMaps.push(f);if(this.events.error)h.on("error",z(this,function(a){this.emit("error",a)}));h.enable()}}else d?(this.map.url=l.nameToUrl(d),this.load()):(k=z(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),k.error=z(this,function(a){this.inited=!0;this.error=a;a.requireModules=[b];D(t,function(a){0===
-a.map.id.indexOf(b+"_unnormalized")&&C(a.map.id)});A(a)}),k.fromText=z(this,function(h,c){var d=a.name,f=q(d),M=S;c&&(h=c);M&&(S=!1);u(f);x(p.config,b)&&(p.config[d]=p.config[b]);try{g.exec(h)}catch(e){return A(F("fromtexteval","fromText eval for "+b+" failed: "+e,e,[b]))}M&&(S=!0);this.depMaps.push(f);l.completeLoad(d);m([d],k)}),h.load(a.name,m,k,p))}));l.enable(d,this);this.pluginMaps[d.id]=d},enable:function(){Z[this.map.id]=this;this.enabling=this.enabled=!0;y(this.depMaps,z(this,function(a,
-b){var c,h;if("string"===typeof a){a=q(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap);this.depMaps[b]=a;if(c=e(R,a.id)){this.depExports[b]=c(this);return}this.depCount+=1;w(a,"defined",z(this,function(a){this.undefed||(this.defineDep(b,a),this.check())}));this.errback?w(a,"error",z(this,this.errback)):this.events.error&&w(a,"error",z(this,function(a){this.emit("error",a)}))}c=a.id;h=t[c];x(R,c)||!h||h.enabled||l.enable(a,this)}));D(this.pluginMaps,z(this,function(a){var b=e(t,a.id);
-b&&!b.enabled&&l.enable(a,this)}));this.enabling=!1;this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]);c.push(b)},emit:function(a,b){y(this.events[a],function(a){a(b)});"error"===a&&delete this.events[a]}};l={config:p,contextName:b,registry:t,defined:v,urlFetched:W,defQueue:G,defQueueMap:{},Module:da,makeModuleMap:q,nextTick:g.nextTick,onError:A,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");if("string"===typeof a.urlArgs){var b=
-a.urlArgs;a.urlArgs=function(a,c){return(-1===c.indexOf("?")?"?":"&")+b}}var c=p.shim,h={paths:!0,bundles:!0,config:!0,map:!0};D(a,function(a,b){h[b]?(p[b]||(p[b]={}),Y(p[b],a,!0,!0)):p[b]=a});a.bundles&&D(a.bundles,function(a,b){y(a,function(a){a!==b&&(fa[a]=b)})});a.shim&&(D(a.shim,function(a,b){L(a)&&(a={deps:a});!a.exports&&!a.init||a.exportsFn||(a.exportsFn=l.makeShimExports(a));c[b]=a}),p.shim=c);a.packages&&y(a.packages,function(a){var b;a="string"===typeof a?{name:a}:a;b=a.name;a.location&&
-(p.paths[b]=a.location);p.pkgs[b]=a.name+"/"+(a.main||"main").replace(na,"").replace(U,"")});D(t,function(a,b){a.inited||a.map.unnormalized||(a.map=q(b,null,!0))});(a.deps||a.callback)&&l.require(a.deps||[],a.callback)},makeShimExports:function(a){return function(){var b;a.init&&(b=a.init.apply(ga,arguments));return b||a.exports&&ia(a.exports)}},makeRequire:function(a,n){function m(c,d,f){var e,r;n.enableBuildCallback&&d&&K(d)&&(d.__requireJsBuild=!0);if("string"===typeof c){if(K(d))return A(F("requireargs",
-"Invalid require call"),f);if(a&&x(R,c))return R[c](t[a.id]);if(g.get)return g.get(l,c,a,m);e=q(c,a,!1,!0);e=e.id;return x(v,e)?v[e]:A(F("notloaded",'Module name "'+e+'" has not been loaded yet for context: '+b+(a?"":". Use require([])")))}P();l.nextTick(function(){P();r=u(q(null,a));r.skipMap=n.skipMap;r.init(c,d,f,{enabled:!0});H()});return m}n=n||{};Y(m,{isBrowser:E,toUrl:function(b){var d,f=b.lastIndexOf("."),g=b.split("/")[0];-1!==f&&("."!==g&&".."!==g||1e.attachEvent.toString().indexOf("[native code")||ca?(e.addEventListener("load",b.onScriptLoad,!1),e.addEventListener("error",b.onScriptError,!1)):(S=!0,e.attachEvent("onreadystatechange",b.onScriptLoad));e.src=d;if(m.onNodeCreated)m.onNodeCreated(e,m,c,d);P=e;H?C.insertBefore(e,H):C.appendChild(e);P=null;return e}if(ja)try{setTimeout(function(){},
-0),importScripts(d),b.completeLoad(c)}catch(q){b.onError(F("importscripts","importScripts failed for "+c+" at "+d,q,[c]))}};E&&!w.skipDataMain&&X(document.getElementsByTagName("script"),function(b){C||(C=b.parentNode);if(O=b.getAttribute("data-main"))return u=O,w.baseUrl||-1!==u.indexOf("!")||(I=u.split("/"),u=I.pop(),T=I.length?I.join("/")+"/":"./",w.baseUrl=T),u=u.replace(U,""),g.jsExtRegExp.test(u)&&(u=O),w.deps=w.deps?w.deps.concat(u):[u],!0});define=function(b,c,d){var e,g;"string"!==typeof b&&
-(d=c,c=b,b=null);L(c)||(d=c,c=null);!c&&K(d)&&(c=[],d.length&&(d.toString().replace(qa,ka).replace(ra,function(b,d){c.push(d)}),c=(1===d.length?["require"]:["require","exports","module"]).concat(c)));S&&(e=P||pa())&&(b||(b=e.getAttribute("data-requiremodule")),g=J[e.getAttribute("data-requirecontext")]);g?(g.defQueue.push([b,c,d]),g.defQueueMap[b]=!0):V.push([b,c,d])};define.amd={jQuery:!0};g.exec=function(b){return eval(b)};g(w)}})(this);
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/README.md b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/README.md
deleted file mode 100755
index 123b093c5..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Browserify example
-
-Two steps need to be done for this to work
-
-In the project root
-
- npm install
-
-In this folder
-
- ../../node_modules/.bin/browserify main.js -o bundle.js
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/bundle.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/bundle.js
deleted file mode 100755
index e69de29bb..000000000
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/index.html b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/index.html
deleted file mode 100755
index bdce82e8e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/index.html
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
- A date range picker for Bootstrap
-
-
-
-
-
-
-
-
-
Configuration Builder
-
-
-
-
-
-
-
Your Date Range Picker
-
-
-
-
-
-
Configuration
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/main.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/main.js
deleted file mode 100755
index 30e92d494..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/example/browserify/main.js
+++ /dev/null
@@ -1,135 +0,0 @@
-require('../../daterangepicker.js');
-var $ = require('jquery'),
- moment = require('moment');
-
-$(document).ready(function() {
-
- $('#config-text').keyup(function() {
- eval($(this).val());
- });
-
- $('.configurator input, .configurator select').change(function() {
- updateConfig();
- });
-
- $('.demo i').click(function() {
- $(this).parent().find('input').click();
- });
-
- $('#startDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment().subtract(6, 'days')
- });
-
- $('#endDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment()
- });
-
- updateConfig();
-
- function updateConfig() {
- var options = {};
-
- if ($('#singleDatePicker').is(':checked'))
- options.singleDatePicker = true;
-
- if ($('#showDropdowns').is(':checked'))
- options.showDropdowns = true;
-
- if ($('#showWeekNumbers').is(':checked'))
- options.showWeekNumbers = true;
-
- if ($('#showISOWeekNumbers').is(':checked'))
- options.showISOWeekNumbers = true;
-
- if ($('#timePicker').is(':checked'))
- options.timePicker = true;
-
- if ($('#timePicker24Hour').is(':checked'))
- options.timePicker24Hour = true;
-
- if ($('#timePickerIncrement').val().length && $('#timePickerIncrement').val() != 1)
- options.timePickerIncrement = parseInt($('#timePickerIncrement').val(), 10);
-
- if ($('#timePickerSeconds').is(':checked'))
- options.timePickerSeconds = true;
-
- if ($('#autoApply').is(':checked'))
- options.autoApply = true;
-
- if ($('#dateLimit').is(':checked'))
- options.dateLimit = { days: 7 };
-
- if ($('#ranges').is(':checked')) {
- options.ranges = {
- 'Today': [moment(), moment()],
- 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
- 'Last 7 Days': [moment().subtract(6, 'days'), moment()],
- 'Last 30 Days': [moment().subtract(29, 'days'), moment()],
- 'This Month': [moment().startOf('month'), moment().endOf('month')],
- 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
- };
- }
-
- if ($('#locale').is(':checked')) {
- options.locale = {
- format: 'MM/DD/YYYY HH:mm',
- separator: ' - ',
- applyLabel: 'Apply',
- cancelLabel: 'Cancel',
- fromLabel: 'From',
- toLabel: 'To',
- customRangeLabel: 'Custom',
- daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'],
- monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
- firstDay: 1
- };
- }
-
- if (!$('#linkedCalendars').is(':checked'))
- options.linkedCalendars = false;
-
- if (!$('#autoUpdateInput').is(':checked'))
- options.autoUpdateInput = false;
-
- if ($('#alwaysShowCalendars').is(':checked'))
- options.alwaysShowCalendars = true;
-
- if ($('#parentEl').val().length)
- options.parentEl = $('#parentEl').val();
-
- if ($('#startDate').val().length)
- options.startDate = $('#startDate').val();
-
- if ($('#endDate').val().length)
- options.endDate = $('#endDate').val();
-
- if ($('#minDate').val().length)
- options.minDate = $('#minDate').val();
-
- if ($('#maxDate').val().length)
- options.maxDate = $('#maxDate').val();
-
- if ($('#opens').val().length && $('#opens').val() != 'right')
- options.opens = $('#opens').val();
-
- if ($('#drops').val().length && $('#drops').val() != 'down')
- options.drops = $('#drops').val();
-
- if ($('#buttonClasses').val().length && $('#buttonClasses').val() != 'btn btn-sm')
- options.buttonClasses = $('#buttonClasses').val();
-
- if ($('#applyClass').val().length && $('#applyClass').val() != 'btn-success')
- options.applyClass = $('#applyClass').val();
-
- if ($('#cancelClass').val().length && $('#cancelClass').val() != 'btn-default')
- options.cancelClass = $('#cancelClass').val();
-
- $('#config-text').val("$('#demo').daterangepicker(" + JSON.stringify(options, null, ' ') + ", function(start, end, label) {\n console.log(\"New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')\");\n});");
-
- $('#config-demo').daterangepicker(options, function(start, end, label) { console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')'); });
-
- }
-
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.js
deleted file mode 100755
index 3dbe8b449..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.js
+++ /dev/null
@@ -1,18 +0,0 @@
-Package.describe({
- name: 'dangrossman:bootstrap-daterangepicker',
- version: '2.1.27',
- summary: 'Date range picker component for Bootstrap',
- git: 'https://github.com/dangrossman/bootstrap-daterangepicker',
- documentation: 'README.md'
-});
-
-Package.onUse(function(api) {
- api.versionsFrom('METEOR@0.9.0.1');
-
- api.use('twbs:bootstrap@3.3.4', ["client"], {weak: true});
- api.use('momentjs:moment@2.10.3', ["client"]);
- api.use('jquery@1.11.3_2', ["client"]);
-
- api.addFiles('daterangepicker.js', ["client"]);
- api.addFiles('daterangepicker.css', ["client"]);
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.json b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.json
deleted file mode 100755
index 552bac647..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/package.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
- "name": "bootstrap-daterangepicker",
- "version": "2.1.27",
- "description": "Date range picker component for Bootstrap",
- "main": "daterangepicker.js",
- "style": "daterangepicker.css",
- "scripts": {
- "scss": "node-sass daterangepicker.scss > daterangepicker.css",
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/dangrossman/bootstrap-daterangepicker.git"
- },
- "author": {
- "name": "Dan Grossman",
- "email": "dan@dangrossman.info",
- "url": "http://www.dangrossman.info"
- },
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/dangrossman/bootstrap-daterangepicker/issues"
- },
- "homepage": "https://github.com/dangrossman/bootstrap-daterangepicker",
- "dependencies": {
- "jquery": ">=1.10",
- "moment": "^2.9.0"
- },
- "devDependencies": {
- "node-sass": "^3.4.2"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/index.html b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/index.html
deleted file mode 100755
index fb9c66c15..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/index.html
+++ /dev/null
@@ -1,836 +0,0 @@
-
-
-
-
- Date Range Picker for Bootstrap
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Date Range Picker
-
- A JavaScript component for choosing date ranges.
-
- Designed to work with the Bootstrap CSS framework.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Originally built for reporting at Improvely ,
- the Date Range Picker can be attached to any webpage element to pop up two calendars
- for selecting dates, times, or from predefined ranges like "Last 30 Days".
-
-
-
-
-
-
-
-
-
Usage
-
-
- Date Range Picker relies on Bootstrap , jQuery and Moment.js .
-
- Include the required scripts and stylesheet in your page:
-
-
-
-
-
Then attach the picker to the element you want to trigger it:
-
-
-
-
-
-
- You can customize Date Range Picker with options , and
- get notified when the user chooses new dates by providing a callback function.
-
-
-
-
-
-
-
-
-
Examples
-
-
-
-
Date Range Picker
-
-
- The Date Range Picker is attached to a text input. It will use the current
- value of the input to initialize, and update the input if new dates are chosen.
-
-
-
-
-
-
-
-
-
-
-
Date and Time
-
-
- The Date Range Picker can also be used to select times. Hour, minute and (optional)
- second dropdowns are added below the calendars. An option exists to set the increment
- count of the minutes dropdown to e.g. offer only 15-minute or 30-minute increments.
-
-
-
-
-
-
-
-
-
-
-
Single Date Picker
-
-
- The Date Range Picker can be turned into a single date picker widget with only
- one calendar. In this example, dropdowns to select a month and year have also
- been enabled at the top of the calendar to quickly jump to different months.
-
-
-
-
-
-
-
-
-
-
-
Predefined Ranges
-
-
- This example shows the option to predefine date ranges that
- the user can choose from a list.
-
-
-
-
-
-
-
-
-
-
-
Input Initially Empty
-
-
- If you're using a date range as a filter, you may want to attach a picker to an
- input but leave it empty by default. This example shows how to accomplish that
- using the autoUpdateInput
setting, and the apply
and
- cancel
events.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Configuration Generator
-
-
-
-
-
-
-
Your Date Range Picker
-
-
-
-
-
-
Configuration
-
-
-
-
-
-
-
-
-
-
-
-
-
Options
-
-
-
- startDate
(Date object, moment object or string) The start of the initially selected date range
-
-
- endDate
: (Date object, moment object or string) The end of the initially selected date range
-
-
- minDate
: (Date object, moment object or string) The earliest date a user may select
-
-
- maxDate
: (Date object, moment object or string) The latest date a user may select
-
-
- dateLimit
: (object) The maximum span between the selected start and end dates. Can have any property you can add to a moment object (i.e. days, months)
-
-
- showDropdowns
: (boolean) Show year and month select boxes above calendars to jump to a specific month and year
-
-
- showWeekNumbers
: (boolean) Show localized week numbers at the start of each week on the calendars
-
-
- showISOWeekNumbers
: (boolean) Show ISO week numbers at the start of each week on the calendars
-
-
- timePicker
: (boolean) Allow selection of dates with times, not just dates
-
-
- timePickerIncrement
: (number) Increment of the minutes selection list for times (i.e. 30 to allow only selection of times ending in 0 or 30)
-
-
- timePicker24Hour
: (boolean) Use 24-hour instead of 12-hour times, removing the AM/PM selection
-
-
- timePickerSeconds
: (boolean) Show seconds in the timePicker
-
-
- ranges
: (object) Set predefined date ranges the user can select from. Each key is the label for the range, and its value an array with two dates representing the bounds of the range
-
-
- showCustomRangeLabel
: (boolean) Displays an item labeled "Custom Range" at
- the end of the list of predefined ranges, when the ranges
option is used.
- This option will be highlighted whenever the current date range selection does not match
- one of the predefined ranges. Clicking it will display the calendars to select a new range.
-
-
- alwaysShowCalendars
: (boolean) Normally, if you use the ranges
- option to specify pre-defined date ranges, calendars for choosing a custom date range are not shown until the user clicks "Custom Range". When this option is set to true, the calendars for choosing a custom date range are always shown instead.
-
-
- opens
: (string: 'left'/'right'/'center') Whether the picker appears aligned to the left, to the right, or centered under the HTML element it's attached to
-
-
- drops
: (string: 'down' or 'up') Whether the picker appears below (default) or above the HTML element it's attached to
-
-
- buttonClasses
: (array) CSS class names that will be added to all buttons in the picker
-
-
- applyClass
: (string) CSS class string that will be added to the apply button
-
-
- cancelClass
: (string) CSS class string that will be added to the cancel button
-
-
- locale
: (object) Allows you to provide localized strings for buttons and labels, customize the date format, and change the first day of week for the calendars.
- Check off "locale (with example settings)" in the configuration generator to see how
- to customize these options.
-
-
- singleDatePicker
: (boolean) Show only a single calendar to choose one date, instead of a range picker with two calendars; the start and end dates provided to your callback will be the same single date chosen
-
-
- autoApply
: (boolean) Hide the apply and cancel buttons, and automatically apply a new date range as soon as two dates or a predefined range is selected
-
-
- linkedCalendars
: (boolean) When enabled, the two calendars displayed will always be for two sequential months (i.e. January and February), and both will be advanced when clicking the left or right arrows above the calendars. When disabled, the two calendars can be individually advanced and display any month/year.
-
-
- isInvalidDate
: (function) A function that is passed each date in the two
- calendars before they are displayed, and may return true or false to indicate whether
- that date should be available for selection or not.
-
-
- isCustomDate
: (function) A function that is passed each date in the two
- calendars before they are displayed, and may return a string or array of CSS class names
- to apply to that date's calendar cell.
-
-
- autoUpdateInput
: (boolean) Indicates whether the date range picker should
- automatically update the value of an <input>
element it's attached to
- at initialization and when the selected dates change.
-
-
- parentEl
: (string) jQuery selector of the parent element that the date range picker will be added to, if not provided this will be 'body'
-
-
-
-
-
-
-
-
Methods
-
-
- You can programmatically update the startDate
and endDate
- in the picker using the setStartDate
and setEndDate
methods.
- You can access the Date Range Picker object and its functions and properties through
- data properties of the element you attached it to.
-
-
-
-
-
-
-
-
- setStartDate(Date/moment/string)
: Sets the date range picker's currently selected start date to the provided date
-
-
- setEndDate(Date/moment/string)
: Sets the date range picker's currently selected end date to the provided date
-
-
-
-
Example usage:
-
-
-
-
-
-
-
-
Events
-
-
- Several events are triggered on the element you attach the picker to, which you can listen for.
-
-
-
-
- show.daterangepicker
: Triggered when the picker is shown
-
-
- hide.daterangepicker
: Triggered when the picker is hidden
-
-
- showCalendar.daterangepicker
: Triggered when the calendar(s) are shown
-
-
- hideCalendar.daterangepicker
: Triggered when the calendar(s) are hidden
-
-
- apply.daterangepicker
: Triggered when the apply button is clicked,
- or when a predefined range is clicked
-
-
- cancel.daterangepicker
: Triggered when the cancel button is clicked
-
-
-
-
- Some applications need a "clear" instead of a "cancel" functionality, which can be achieved by changing the button label and watching for the cancel event:
-
-
-
-
-
-
-
- While passing in a callback to the constructor is the easiest way to listen for changes in the selected date range, you can also do something every time the apply button is clicked even if the selection hasn't changed:
-
-
-
-
-
-
-
-
-
License
-
-
The MIT License (MIT)
-
-
Copyright (c) 2012-2017 Dan Grossman
-
-
- 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.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.css b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.css
deleted file mode 100755
index 74fbbdacb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.css
+++ /dev/null
@@ -1,127 +0,0 @@
-body {
- font-size: 15px;
- line-height: 1.6em;
- position: relative;
- margin: 0;
-}
-.container {
- width: 95%;
- max-width: 1260px;
-}
-p, pre {
- margin-bottom: 2em;
-}
-.main h2 {
- font-weight: bold;
- margin: 60px 0 20px 0;
-}
-.main h3 {
- margin: 60px 0 20px 0;
-}
-.main h4 {
- margin: 0 0 10px 0;
- font-weight: bold;
-}
-ul.nobullets {
- margin: 0;
- padding: 0;
- list-style-position: inside;
-}
-li {
- padding-bottom: 1em;
-}
-#sidebar {
- top: 20px;
- width: 300px;
-}
-#sidebar ul {
- margin-bottom: 5px;
-}
-#sidebar li {
- margin-bottom: 0;
- padding-bottom: 0;
-}
-#sidebar li ul {
- display: none;
-}
-#sidebar li.active ul {
- display: block;
-}
-#sidebar li li {
- padding: 4px 0;
-}
-input[type="text"] {
- padding: 6px;
- width: 100%;
- border-radius: 4px;
-}
-.navbar {
- text-align: left;
- margin: 0;
- border: 0;
-}
-.navbar-inverse {
- background: #ccc;
-}
-.navbar .container {
- padding: 0 20px;
-}
-.navbar-nav li a:link, .navbar-nav li a:visited {
- font-weight: bold;
- color: #fff;
- font-size: 16px;
-}
-.navbar-nav li {
- background: #fff;
-}
-.navbar-nav li a:hover {
- opacity: 0.8;
-}
-.navbar-nav li {
- padding: 0;
-}
-.navbar-inverse .navbar-text {
- margin: 18px 0 0 0;
- color: #eee;
-}
-#footer {
- background: #222;
- margin-top: 80px;
- padding: 30px;
- color: #fff;
- text-align: center;
-}
-#footer a:link, #footer a:visited {
- color: #fff;
- border-bottom: 1px dotted #fff;
-}
-#jumbo {
- background: #f5f5f5 linear-gradient(to bottom,#eee 0,#f5f5f5 100%);
- color: #000;
- padding: 30px 0;
- margin-bottom: 30px;
-}
-#jumbo .btn {
- border-radius: 0;
-}
-#config .demo { position: relative; }
-#config .demo i { position: absolute; bottom: 10px; right: 24px; top: auto; cursor: pointer; }
-
-#rightcol {
- margin-left: 330px;
-}
-
-#nav-spy {
- float: left;
- width: 300px;
-}
-
-@media (max-width: 980px) {
- #rightcol {
- margin-left: 0;
- }
- #nav-spy {
- float: none;
- position: relative;
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.js b/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.js
deleted file mode 100755
index 8ded2e9c4..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap-daterangepicker/website/website.js
+++ /dev/null
@@ -1,146 +0,0 @@
-$(document).ready(function() {
-
- $('#config-text').keyup(function() {
- eval($(this).val());
- });
-
- $('.configurator input, .configurator select').change(function() {
- updateConfig();
- });
-
- $('.demo i').click(function() {
- $(this).parent().find('input').click();
- });
-
- $('#startDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment().subtract(6, 'days')
- });
-
- $('#endDate').daterangepicker({
- singleDatePicker: true,
- startDate: moment()
- });
-
- updateConfig();
-
- function updateConfig() {
- var options = {};
-
- if ($('#singleDatePicker').is(':checked'))
- options.singleDatePicker = true;
-
- if ($('#showDropdowns').is(':checked'))
- options.showDropdowns = true;
-
- if ($('#showWeekNumbers').is(':checked'))
- options.showWeekNumbers = true;
-
- if ($('#showISOWeekNumbers').is(':checked'))
- options.showISOWeekNumbers = true;
-
- if ($('#timePicker').is(':checked'))
- options.timePicker = true;
-
- if ($('#timePicker24Hour').is(':checked'))
- options.timePicker24Hour = true;
-
- if ($('#timePickerIncrement').val().length && $('#timePickerIncrement').val() != 1)
- options.timePickerIncrement = parseInt($('#timePickerIncrement').val(), 10);
-
- if ($('#timePickerSeconds').is(':checked'))
- options.timePickerSeconds = true;
-
- if ($('#autoApply').is(':checked'))
- options.autoApply = true;
-
- if ($('#dateLimit').is(':checked'))
- options.dateLimit = { days: 7 };
-
- if ($('#ranges').is(':checked')) {
- options.ranges = {
- 'Today': [moment(), moment()],
- 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
- 'Last 7 Days': [moment().subtract(6, 'days'), moment()],
- 'Last 30 Days': [moment().subtract(29, 'days'), moment()],
- 'This Month': [moment().startOf('month'), moment().endOf('month')],
- 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
- };
- }
-
- if ($('#locale').is(':checked')) {
- options.locale = {
- format: 'MM/DD/YYYY',
- separator: ' - ',
- applyLabel: 'Apply',
- cancelLabel: 'Cancel',
- fromLabel: 'From',
- toLabel: 'To',
- customRangeLabel: 'Custom',
- weekLabel: 'W',
- daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'],
- monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
- firstDay: 1
- };
- }
-
- if (!$('#linkedCalendars').is(':checked'))
- options.linkedCalendars = false;
-
- if (!$('#autoUpdateInput').is(':checked'))
- options.autoUpdateInput = false;
-
- if (!$('#showCustomRangeLabel').is(':checked'))
- options.showCustomRangeLabel = false;
-
- if ($('#alwaysShowCalendars').is(':checked'))
- options.alwaysShowCalendars = true;
-
- if ($('#parentEl').val().length)
- options.parentEl = $('#parentEl').val();
-
- if ($('#startDate').val().length)
- options.startDate = $('#startDate').val();
-
- if ($('#endDate').val().length)
- options.endDate = $('#endDate').val();
-
- if ($('#minDate').val().length)
- options.minDate = $('#minDate').val();
-
- if ($('#maxDate').val().length)
- options.maxDate = $('#maxDate').val();
-
- if ($('#opens').val().length && $('#opens').val() != 'right')
- options.opens = $('#opens').val();
-
- if ($('#drops').val().length && $('#drops').val() != 'down')
- options.drops = $('#drops').val();
-
- if ($('#buttonClasses').val().length && $('#buttonClasses').val() != 'btn btn-sm')
- options.buttonClasses = $('#buttonClasses').val();
-
- if ($('#applyClass').val().length && $('#applyClass').val() != 'btn-success')
- options.applyClass = $('#applyClass').val();
-
- if ($('#cancelClass').val().length && $('#cancelClass').val() != 'btn-default')
- options.cancelClass = $('#cancelClass').val();
-
- $('#config-text').val("$('#demo').daterangepicker(" + JSON.stringify(options, null, ' ') + ", function(start, end, label) {\n console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')');\n});");
-
- $('#config-demo').daterangepicker(options, function(start, end, label) { console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')'); });
-
- }
-
- if ($(window).width() > 980) {
- $('#sidebar').affix({
- offset: {
- top: 300,
- bottom: function () {
- return (this.bottom = $('.footer').outerHeight(true))
- }
- }
- });
- }
- $('body').scrollspy({ target: '#nav-spy', offset: 20 });
-});
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/.bower.json b/front/lib/AdminLTE/bower_components/bootstrap/.bower.json
deleted file mode 100755
index 8b87a2e4e..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/.bower.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "name": "bootstrap",
- "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
- "keywords": [
- "css",
- "js",
- "less",
- "mobile-first",
- "responsive",
- "front-end",
- "framework",
- "web"
- ],
- "homepage": "https://getbootstrap.com/",
- "license": "MIT",
- "moduleType": "globals",
- "main": [
- "less/bootstrap.less",
- "dist/js/bootstrap.js"
- ],
- "ignore": [
- "/.*",
- "_config.yml",
- "CNAME",
- "composer.json",
- "CONTRIBUTING.md",
- "docs",
- "js/tests",
- "test-infra"
- ],
- "dependencies": {
- "jquery": "1.9.1 - 3"
- },
- "version": "3.4.1",
- "_release": "3.4.1",
- "_resolution": {
- "type": "version",
- "tag": "v3.4.1",
- "commit": "68b0d231a13201eb14acd3dc84e51543d16e5f7e"
- },
- "_source": "https://github.com/twbs/bootstrap.git",
- "_target": "^3.4",
- "_originalSource": "bootstrap"
-}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/CHANGELOG.md b/front/lib/AdminLTE/bower_components/bootstrap/CHANGELOG.md
deleted file mode 100755
index 416b64bdb..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/CHANGELOG.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Bootstrap uses [GitHub's Releases feature](https://blog.github.com/2013-07-02-release-your-software/) for its changelogs.
-
-See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap.
-
-Release announcement posts on [the official Bootstrap blog](https://blog.getbootstrap.com/) contain summaries of the most noteworthy changes made in each release.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/Gemfile b/front/lib/AdminLTE/bower_components/bootstrap/Gemfile
deleted file mode 100755
index c71222021..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/Gemfile
+++ /dev/null
@@ -1,8 +0,0 @@
-source 'https://rubygems.org'
-
-group :development, :test do
- gem 'jekyll', '~> 3.8.5'
- gem 'jekyll-redirect-from', '~> 0.14.0'
- gem 'jekyll-sitemap', '~> 1.2.0'
- gem 'wdm', '~> 0.1.1', :install_if => Gem.win_platform?
-end
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/Gemfile.lock b/front/lib/AdminLTE/bower_components/bootstrap/Gemfile.lock
deleted file mode 100755
index 175fe6a78..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/Gemfile.lock
+++ /dev/null
@@ -1,74 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- addressable (2.6.0)
- public_suffix (>= 2.0.2, < 4.0)
- colorator (1.1.0)
- concurrent-ruby (1.1.4)
- em-websocket (0.5.1)
- eventmachine (>= 0.12.9)
- http_parser.rb (~> 0.6.0)
- eventmachine (1.2.7)
- eventmachine (1.2.7-x64-mingw32)
- ffi (1.10.0)
- ffi (1.10.0-x64-mingw32)
- forwardable-extended (2.6.0)
- http_parser.rb (0.6.0)
- i18n (0.9.5)
- concurrent-ruby (~> 1.0)
- jekyll (3.8.5)
- addressable (~> 2.4)
- colorator (~> 1.0)
- em-websocket (~> 0.5)
- i18n (~> 0.7)
- jekyll-sass-converter (~> 1.0)
- jekyll-watch (~> 2.0)
- kramdown (~> 1.14)
- liquid (~> 4.0)
- mercenary (~> 0.3.3)
- pathutil (~> 0.9)
- rouge (>= 1.7, < 4)
- safe_yaml (~> 1.0)
- jekyll-redirect-from (0.14.0)
- jekyll (~> 3.3)
- jekyll-sass-converter (1.5.2)
- sass (~> 3.4)
- jekyll-sitemap (1.2.0)
- jekyll (~> 3.3)
- jekyll-watch (2.1.2)
- listen (~> 3.0)
- kramdown (1.17.0)
- liquid (4.0.1)
- listen (3.1.5)
- rb-fsevent (~> 0.9, >= 0.9.4)
- rb-inotify (~> 0.9, >= 0.9.7)
- ruby_dep (~> 1.2)
- mercenary (0.3.6)
- pathutil (0.16.2)
- forwardable-extended (~> 2.6)
- public_suffix (3.0.3)
- rb-fsevent (0.10.3)
- rb-inotify (0.10.0)
- ffi (~> 1.0)
- rouge (3.3.0)
- ruby_dep (1.5.0)
- safe_yaml (1.0.4)
- sass (3.7.3)
- sass-listen (~> 4.0.0)
- sass-listen (4.0.0)
- rb-fsevent (~> 0.9, >= 0.9.4)
- rb-inotify (~> 0.9, >= 0.9.7)
- wdm (0.1.1)
-
-PLATFORMS
- ruby
- x64-mingw32
-
-DEPENDENCIES
- jekyll (~> 3.8.5)
- jekyll-redirect-from (~> 0.14.0)
- jekyll-sitemap (~> 1.2.0)
- wdm (~> 0.1.1)
-
-BUNDLED WITH
- 1.17.3
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/Gruntfile.js b/front/lib/AdminLTE/bower_components/bootstrap/Gruntfile.js
deleted file mode 100755
index 05d88c287..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/Gruntfile.js
+++ /dev/null
@@ -1,430 +0,0 @@
-/*!
- * Bootstrap's Gruntfile
- * https://getbootstrap.com/
- * Copyright 2013-2019 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- */
-
-module.exports = function (grunt) {
- 'use strict';
-
- // Force use of Unix newlines
- grunt.util.linefeed = '\n';
-
- RegExp.quote = function (string) {
- return string.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&');
- };
-
- var fs = require('fs');
- var path = require('path');
- var generateGlyphiconsData = require('./grunt/bs-glyphicons-data-generator.js');
- var BsLessdocParser = require('./grunt/bs-lessdoc-parser.js');
- var getLessVarsData = function () {
- var filePath = path.join(__dirname, 'less/variables.less');
- var fileContent = fs.readFileSync(filePath, { encoding: 'utf8' });
- var parser = new BsLessdocParser(fileContent);
- return { sections: parser.parseFile() };
- };
- var generateRawFiles = require('./grunt/bs-raw-files-generator.js');
- var generateCommonJSModule = require('./grunt/bs-commonjs-generator.js');
- var configBridge = grunt.file.readJSON('./grunt/configBridge.json', { encoding: 'utf8' });
-
- Object.keys(configBridge.paths).forEach(function (key) {
- configBridge.paths[key].forEach(function (val, i, arr) {
- arr[i] = path.join('./docs/assets', val);
- });
- });
-
- // Project configuration.
- grunt.initConfig({
-
- // Metadata.
- pkg: grunt.file.readJSON('package.json'),
- banner: '/*!\n' +
- ' * Bootstrap v<%= pkg.version %> (<%= pkg.homepage %>)\n' +
- ' * Copyright 2011-<%= grunt.template.today("yyyy") %> <%= pkg.author %>\n' +
- ' * Licensed under the <%= pkg.license %> license\n' +
- ' */\n',
- jqueryCheck: configBridge.config.jqueryCheck.join('\n'),
- jqueryVersionCheck: configBridge.config.jqueryVersionCheck.join('\n'),
-
- // Task configuration.
- clean: {
- dist: 'dist',
- docs: 'docs/dist'
- },
-
- jshint: {
- options: {
- jshintrc: 'js/.jshintrc'
- },
- grunt: {
- options: {
- jshintrc: 'grunt/.jshintrc'
- },
- src: ['Gruntfile.js', 'package.js', 'grunt/*.js']
- },
- core: {
- src: 'js/*.js'
- },
- test: {
- options: {
- jshintrc: 'js/tests/unit/.jshintrc'
- },
- src: 'js/tests/unit/*.js'
- },
- assets: {
- src: ['docs/assets/js/src/*.js', 'docs/assets/js/*.js', '!docs/assets/js/*.min.js']
- }
- },
-
- jscs: {
- options: {
- config: 'js/.jscsrc'
- },
- grunt: {
- src: '<%= jshint.grunt.src %>'
- },
- core: {
- src: '<%= jshint.core.src %>'
- },
- test: {
- src: '<%= jshint.test.src %>'
- },
- assets: {
- options: {
- requireCamelCaseOrUpperCaseIdentifiers: null
- },
- src: '<%= jshint.assets.src %>'
- }
- },
-
- concat: {
- options: {
- banner: '<%= banner %>\n<%= jqueryCheck %>\n<%= jqueryVersionCheck %>',
- stripBanners: false
- },
- core: {
- src: [
- 'js/transition.js',
- 'js/alert.js',
- 'js/button.js',
- 'js/carousel.js',
- 'js/collapse.js',
- 'js/dropdown.js',
- 'js/modal.js',
- 'js/tooltip.js',
- 'js/popover.js',
- 'js/scrollspy.js',
- 'js/tab.js',
- 'js/affix.js'
- ],
- dest: 'dist/js/<%= pkg.name %>.js'
- }
- },
-
- uglify: {
- options: {
- compress: true,
- mangle: true,
- ie8: true,
- output: {
- comments: /^!|@preserve|@license|@cc_on/i
- }
- },
- core: {
- src: '<%= concat.core.dest %>',
- dest: 'dist/js/<%= pkg.name %>.min.js'
- },
- customize: {
- src: configBridge.paths.customizerJs,
- dest: 'docs/assets/js/customize.min.js'
- },
- docs: {
- src: configBridge.paths.docsJs,
- dest: 'docs/assets/js/docs.min.js'
- }
- },
-
- less: {
- options: {
- ieCompat: true,
- strictMath: true,
- sourceMap: true,
- outputSourceFiles: true
- },
- core: {
- options: {
- sourceMapURL: '<%= pkg.name %>.css.map',
- sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
- },
- src: 'less/bootstrap.less',
- dest: 'dist/css/<%= pkg.name %>.css'
- },
- theme: {
- options: {
- sourceMapURL: '<%= pkg.name %>-theme.css.map',
- sourceMapFilename: 'dist/css/<%= pkg.name %>-theme.css.map'
- },
- src: 'less/theme.less',
- dest: 'dist/css/<%= pkg.name %>-theme.css'
- },
- docs: {
- options: {
- sourceMapURL: 'docs.css.map',
- sourceMapFilename: 'docs/assets/css/docs.css.map'
- },
- src: 'docs/assets/less/docs.less',
- dest: 'docs/assets/css/docs.css'
- },
- docsIe: {
- options: {
- sourceMap: false
- },
- src: 'docs/assets/less/ie10-viewport-bug-workaround.less',
- dest: 'docs/assets/css/ie10-viewport-bug-workaround.css'
- }
- },
-
- postcss: {
- options: {
- map: {
- inline: false,
- sourcesContent: true
- },
- processors: [
- require('autoprefixer')(configBridge.config.autoprefixer)
- ]
- },
- core: {
- src: 'dist/css/<%= pkg.name %>.css'
- },
- theme: {
- src: 'dist/css/<%= pkg.name %>-theme.css'
- },
- docs: {
- src: 'docs/assets/css/docs.css'
- },
- examples: {
- options: {
- map: false
- },
- expand: true,
- cwd: 'docs/examples/',
- src: ['**/*.css'],
- dest: 'docs/examples/'
- }
- },
-
- stylelint: {
- options: {
- configFile: 'grunt/.stylelintrc',
- reportNeedlessDisables: false
- },
- dist: [
- 'less/**/*.less'
- ],
- docs: [
- 'docs/assets/less/**/*.less'
- ],
- examples: [
- 'docs/examples/**/*.css'
- ]
- },
-
- cssmin: {
- options: {
- compatibility: 'ie8',
- sourceMap: true,
- sourceMapInlineSources: true,
- level: {
- 1: {
- specialComments: 'all'
- }
- }
- },
- core: {
- src: 'dist/css/<%= pkg.name %>.css',
- dest: 'dist/css/<%= pkg.name %>.min.css'
- },
- theme: {
- src: 'dist/css/<%= pkg.name %>-theme.css',
- dest: 'dist/css/<%= pkg.name %>-theme.min.css'
- },
- docs: {
- src: 'docs/assets/css/docs.css',
- dest: 'docs/assets/css/docs.min.css'
- }
- },
-
- copy: {
- fonts: {
- expand: true,
- src: 'fonts/**',
- dest: 'dist/'
- },
- docs: {
- expand: true,
- cwd: 'dist/',
- src: [
- '**/*'
- ],
- dest: 'docs/dist/'
- }
- },
-
- connect: {
- server: {
- options: {
- port: 3000,
- base: '.'
- }
- }
- },
-
- jekyll: {
- options: {
- bundleExec: true,
- config: '_config.yml',
- incremental: false
- },
- docs: {},
- github: {
- options: {
- raw: 'github: true'
- }
- }
- },
-
- pug: {
- options: {
- pretty: true,
- data: getLessVarsData
- },
- customizerVars: {
- src: 'docs/_pug/customizer-variables.pug',
- dest: 'docs/_includes/customizer-variables.html'
- },
- customizerNav: {
- src: 'docs/_pug/customizer-nav.pug',
- dest: 'docs/_includes/nav/customize.html'
- }
- },
-
- htmllint: {
- options: {
- ignore: [
- 'Element "img" is missing required attribute "src".'
- ],
- noLangDetect: true
- },
- src: ['_gh_pages/**/*.html', 'js/tests/**/*.html']
- },
-
- watch: {
- src: {
- files: '<%= jshint.core.src %>',
- tasks: ['jshint:core', 'exec:karma', 'concat']
- },
- test: {
- files: '<%= jshint.test.src %>',
- tasks: ['jshint:test', 'exec:karma']
- },
- less: {
- files: 'less/**/*.less',
- tasks: ['less', 'copy']
- },
- docs: {
- files: 'docs/assets/less/**/*.less',
- tasks: ['less']
- }
- },
-
- exec: {
- browserstack: {
- command: 'cross-env BROWSER=true karma start grunt/karma.conf.js'
- },
- karma: {
- command: 'karma start grunt/karma.conf.js'
- }
- }
- });
-
-
- // These plugins provide necessary tasks.
- require('load-grunt-tasks')(grunt, { scope: 'devDependencies' });
- require('time-grunt')(grunt);
-
- // Docs HTML validation task
- grunt.registerTask('validate-html', ['jekyll:docs', 'htmllint']);
-
- var runSubset = function (subset) {
- return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset;
- };
- var isUndefOrNonZero = function (val) {
- return typeof val === 'undefined' || val !== '0';
- };
-
- // Test task.
- var testSubtasks = [];
- // Skip core tests if running a different subset of the test suite
- if (runSubset('core')) {
- testSubtasks = testSubtasks.concat(['dist-css', 'dist-js', 'stylelint:dist', 'test-js', 'docs']);
- }
- // Skip HTML validation if running a different subset of the test suite
- if (runSubset('validate-html') &&
- // Skip HTML5 validator on Travis when [skip validator] is in the commit message
- isUndefOrNonZero(process.env.TWBS_DO_VALIDATOR)) {
- testSubtasks.push('validate-html');
- }
- // Only run BrowserStack tests if there's a BrowserStack access key
- if (typeof process.env.BROWSER_STACK_USERNAME !== 'undefined' &&
- // Skip BrowserStack if running a different subset of the test suite
- runSubset('browserstack') &&
- // Skip BrowserStack on Travis when [skip browserstack] is in the commit message
- isUndefOrNonZero(process.env.TWBS_DO_BROWSERSTACK)) {
- testSubtasks.push('exec:browserstack');
- }
-
- grunt.registerTask('test', testSubtasks);
- grunt.registerTask('test-js', ['jshint:core', 'jshint:test', 'jshint:grunt', 'jscs:core', 'jscs:test', 'jscs:grunt', 'exec:karma']);
-
- // JS distribution task.
- grunt.registerTask('dist-js', ['concat', 'uglify:core', 'commonjs']);
-
- // CSS distribution task.
- grunt.registerTask('dist-css', ['less:core', 'less:theme', 'postcss:core', 'postcss:theme', 'cssmin:core', 'cssmin:theme']);
-
- // Full distribution task.
- grunt.registerTask('dist', ['clean:dist', 'dist-css', 'copy:fonts', 'dist-js']);
-
- // Default task.
- grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']);
-
- grunt.registerTask('build-glyphicons-data', function () {
- generateGlyphiconsData.call(this, grunt);
- });
-
- // task for building customizer
- grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']);
- grunt.registerTask('build-customizer-html', 'pug');
- grunt.registerTask('build-raw-files', 'Add scripts/less files to customizer.', function () {
- var banner = grunt.template.process('<%= banner %>');
- generateRawFiles(grunt, banner);
- });
-
- grunt.registerTask('commonjs', 'Generate CommonJS entrypoint module in dist dir.', function () {
- var srcFiles = grunt.config.get('concat.core.src');
- var destFilepath = 'dist/js/npm.js';
- generateCommonJSModule(grunt, srcFiles, destFilepath);
- });
-
- // Docs task.
- grunt.registerTask('docs-css', ['less:docs', 'less:docsIe', 'postcss:docs', 'postcss:examples', 'cssmin:docs']);
- grunt.registerTask('lint-docs-css', ['stylelint:docs', 'stylelint:examples']);
- grunt.registerTask('docs-js', ['uglify:docs', 'uglify:customize']);
- grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']);
- grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-glyphicons-data', 'build-customizer']);
-
- grunt.registerTask('prep-release', ['dist', 'docs', 'jekyll:github']);
-};
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/ISSUE_TEMPLATE.md b/front/lib/AdminLTE/bower_components/bootstrap/ISSUE_TEMPLATE.md
deleted file mode 100755
index d7732a792..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,22 +0,0 @@
-Before opening an issue:
-
-- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
-- [Validate](https://validator.w3.org/nu/) and [lint](https://github.com/twbs/bootlint#in-the-browser) any HTML to avoid common problems
-- Prepare a [reduced test case](https://css-tricks.com/reduced-test-cases/) for any bugs
-- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
-
-When asking general "how to" questions:
-
-- Please do not open an issue here
-- Instead, ask for help on [StackOverflow, IRC, or Slack](https://github.com/twbs/bootstrap/blob/master/README.md#community)
-
-When reporting a bug, include:
-
-- Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
-- Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
-- Reduced test cases and potential fixes using [JS Bin](https://jsbin.com/)
-
-When suggesting a feature, include:
-
-- As much detail as possible for what we should add and why it's important to Bootstrap
-- Relevant links to prior art, screenshots, or live demos whenever possible
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/LICENSE b/front/lib/AdminLTE/bower_components/bootstrap/LICENSE
deleted file mode 100755
index e2640928b..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2011-2019 Twitter, Inc.
-
-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.
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/README.md b/front/lib/AdminLTE/bower_components/bootstrap/README.md
deleted file mode 100755
index f8b77ee8f..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/README.md
+++ /dev/null
@@ -1,149 +0,0 @@
-# [Bootstrap](https://getbootstrap.com/)
-
-[![Slack](https://bootstrap-slack.herokuapp.com/badge.svg)](https://bootstrap-slack.herokuapp.com/)
-![Bower version](https://img.shields.io/bower/v/bootstrap.svg)
-[![npm version](https://img.shields.io/npm/v/bootstrap.svg)](https://www.npmjs.com/package/bootstrap)
-[![Build Status](https://img.shields.io/travis/twbs/bootstrap/master.svg)](https://travis-ci.org/twbs/bootstrap)
-[![devDependency Status](https://img.shields.io/david/dev/twbs/bootstrap.svg)](https://david-dm.org/twbs/bootstrap#info=devDependencies)
-[![NuGet](https://img.shields.io/nuget/v/bootstrap.svg)](https://www.nuget.org/packages/Bootstrap)
-
-Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/orgs/twbs/people) with the massive support and involvement of the community.
-
-To get started, check out !
-
-
-## Table of contents
-
-* [Quick start](#quick-start)
-* [Bugs and feature requests](#bugs-and-feature-requests)
-* [Documentation](#documentation)
-* [Contributing](#contributing)
-* [Community](#community)
-* [Versioning](#versioning)
-* [Creators](#creators)
-* [Thanks](#thanks)
-* [Copyright and license](#copyright-and-license)
-
-
-## Quick start
-
-Several quick start options are available:
-
-* [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.4.1.zip).
-* Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
-* Install with [Bower](https://bower.io/): `bower install bootstrap`.
-* Install with [npm](https://www.npmjs.com/): `npm install bootstrap@3`.
-* Install with [Meteor](https://www.meteor.com/): `meteor add twbs:bootstrap`.
-* Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap`.
-
-Read the [Getting started page](https://getbootstrap.com/docs/3.4/getting-started/) for information on the framework contents, templates and examples, and more.
-
-### What's included
-
-Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations. You'll see something like this:
-
-```
-bootstrap/
-├── css/
-│ ├── bootstrap.css
-│ ├── bootstrap.css.map
-│ ├── bootstrap.min.css
-│ ├── bootstrap.min.css.map
-│ ├── bootstrap-theme.css
-│ ├── bootstrap-theme.css.map
-│ ├── bootstrap-theme.min.css
-│ └── bootstrap-theme.min.css.map
-├── js/
-│ ├── bootstrap.js
-│ └── bootstrap.min.js
-└── fonts/
- ├── glyphicons-halflings-regular.eot
- ├── glyphicons-halflings-regular.svg
- ├── glyphicons-halflings-regular.ttf
- ├── glyphicons-halflings-regular.woff
- └── glyphicons-halflings-regular.woff2
-```
-
-We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.
-
-
-## Bugs and feature requests
-
-Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new).
-
-Note that **feature requests must target [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev),** because Bootstrap v3 is now in maintenance mode and is closed off to new features. This is so that we can focus our efforts on Bootstrap v4.
-
-
-## Documentation
-
-Bootstrap's documentation, included in this repo in the root directory, is built with [Jekyll](https://jekyllrb.com/) and publicly hosted on GitHub Pages at . The docs may also be run locally.
-
-### Running documentation locally
-
-1. If necessary, [install Jekyll](https://jekyllrb.com/docs/installation/) and other Ruby dependencies with `bundle install`.
- **Note for Windows users:** Read [this guide](https://jekyllrb.com/docs/installation/windows/) to get Jekyll up and running without problems.
-2. From the root `/bootstrap` directory, run `bundle exec jekyll serve` in the command line.
-4. Open `http://localhost:9001` in your browser, and voilà .
-
-Learn more about using Jekyll by reading its [documentation](https://jekyllrb.com/docs/).
-
-### Documentation for previous releases
-
-Documentation for v2.3.2 has been made available for the time being at while folks transition to Bootstrap 3.
-
-[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
-
-
-## Contributing
-
-Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
-
-Moreover, if your pull request contains JavaScript patches or features, you must include [relevant unit tests](https://github.com/twbs/bootstrap/tree/master/js/tests). All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo).
-
-**Bootstrap v3 is now closed off to new features.** It has gone into maintenance mode so that we can focus our efforts on [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev), the future of the framework. Pull requests which add new features (rather than fix bugs) should target [Bootstrap v4 (the `v4-dev` git branch)](https://github.com/twbs/bootstrap/tree/v4-dev) instead.
-
-Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at .
-
-
-## Community
-
-Get updates on Bootstrap's development and chat with the project maintainers and community members.
-
-* Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
-* Read and subscribe to [The Official Bootstrap Blog](https://blog.getbootstrap.com/).
-* Join [the official Slack room](https://bootstrap-slack.herokuapp.com/).
-* Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
-* Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
-* Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/search?q=keywords:bootstrap) or similar delivery mechanisms for maximum discoverability.
-
-
-## Versioning
-
-For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](https://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
-
-See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap. Release announcement posts on [the official Bootstrap blog](https://blog.getbootstrap.com/) contain summaries of the most noteworthy changes made in each release.
-
-
-## Thanks
-
-
-
-Thanks to [BrowserStack](https://www.browserstack.com/) for providing the infrastructure that allows us to test in real browsers!
-
-
-## Creators
-
-**Mark Otto**
-
-*
-*
-
-**Jacob Thornton**
-
-*
-*
-
-
-## Copyright and license
-
-Code and documentation copyright 2011-2019 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/bower.json b/front/lib/AdminLTE/bower_components/bootstrap/bower.json
deleted file mode 100755
index 379d65f4a..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/bower.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "name": "bootstrap",
- "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
- "keywords": [
- "css",
- "js",
- "less",
- "mobile-first",
- "responsive",
- "front-end",
- "framework",
- "web"
- ],
- "homepage": "https://getbootstrap.com/",
- "license": "MIT",
- "moduleType": "globals",
- "main": [
- "less/bootstrap.less",
- "dist/js/bootstrap.js"
- ],
- "ignore": [
- "/.*",
- "_config.yml",
- "CNAME",
- "composer.json",
- "CONTRIBUTING.md",
- "docs",
- "js/tests",
- "test-infra"
- ],
- "dependencies": {
- "jquery": "1.9.1 - 3"
- }
-}
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css
deleted file mode 100755
index ea33f76a7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css
+++ /dev/null
@@ -1,587 +0,0 @@
-/*!
- * Bootstrap v3.4.1 (https://getbootstrap.com/)
- * Copyright 2011-2019 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- */
-.btn-default,
-.btn-primary,
-.btn-success,
-.btn-info,
-.btn-warning,
-.btn-danger {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-.btn-default:active,
-.btn-primary:active,
-.btn-success:active,
-.btn-info:active,
-.btn-warning:active,
-.btn-danger:active,
-.btn-default.active,
-.btn-primary.active,
-.btn-success.active,
-.btn-info.active,
-.btn-warning.active,
-.btn-danger.active {
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-.btn-default.disabled,
-.btn-primary.disabled,
-.btn-success.disabled,
-.btn-info.disabled,
-.btn-warning.disabled,
-.btn-danger.disabled,
-.btn-default[disabled],
-.btn-primary[disabled],
-.btn-success[disabled],
-.btn-info[disabled],
-.btn-warning[disabled],
-.btn-danger[disabled],
-fieldset[disabled] .btn-default,
-fieldset[disabled] .btn-primary,
-fieldset[disabled] .btn-success,
-fieldset[disabled] .btn-info,
-fieldset[disabled] .btn-warning,
-fieldset[disabled] .btn-danger {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.btn-default .badge,
-.btn-primary .badge,
-.btn-success .badge,
-.btn-info .badge,
-.btn-warning .badge,
-.btn-danger .badge {
- text-shadow: none;
-}
-.btn:active,
-.btn.active {
- background-image: none;
-}
-.btn-default {
- background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
- background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
- background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #dbdbdb;
- text-shadow: 0 1px 0 #fff;
- border-color: #ccc;
-}
-.btn-default:hover,
-.btn-default:focus {
- background-color: #e0e0e0;
- background-position: 0 -15px;
-}
-.btn-default:active,
-.btn-default.active {
- background-color: #e0e0e0;
- border-color: #dbdbdb;
-}
-.btn-default.disabled,
-.btn-default[disabled],
-fieldset[disabled] .btn-default,
-.btn-default.disabled:hover,
-.btn-default[disabled]:hover,
-fieldset[disabled] .btn-default:hover,
-.btn-default.disabled:focus,
-.btn-default[disabled]:focus,
-fieldset[disabled] .btn-default:focus,
-.btn-default.disabled.focus,
-.btn-default[disabled].focus,
-fieldset[disabled] .btn-default.focus,
-.btn-default.disabled:active,
-.btn-default[disabled]:active,
-fieldset[disabled] .btn-default:active,
-.btn-default.disabled.active,
-.btn-default[disabled].active,
-fieldset[disabled] .btn-default.active {
- background-color: #e0e0e0;
- background-image: none;
-}
-.btn-primary {
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88));
- background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #245580;
-}
-.btn-primary:hover,
-.btn-primary:focus {
- background-color: #265a88;
- background-position: 0 -15px;
-}
-.btn-primary:active,
-.btn-primary.active {
- background-color: #265a88;
- border-color: #245580;
-}
-.btn-primary.disabled,
-.btn-primary[disabled],
-fieldset[disabled] .btn-primary,
-.btn-primary.disabled:hover,
-.btn-primary[disabled]:hover,
-fieldset[disabled] .btn-primary:hover,
-.btn-primary.disabled:focus,
-.btn-primary[disabled]:focus,
-fieldset[disabled] .btn-primary:focus,
-.btn-primary.disabled.focus,
-.btn-primary[disabled].focus,
-fieldset[disabled] .btn-primary.focus,
-.btn-primary.disabled:active,
-.btn-primary[disabled]:active,
-fieldset[disabled] .btn-primary:active,
-.btn-primary.disabled.active,
-.btn-primary[disabled].active,
-fieldset[disabled] .btn-primary.active {
- background-color: #265a88;
- background-image: none;
-}
-.btn-success {
- background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
- background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
- background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #3e8f3e;
-}
-.btn-success:hover,
-.btn-success:focus {
- background-color: #419641;
- background-position: 0 -15px;
-}
-.btn-success:active,
-.btn-success.active {
- background-color: #419641;
- border-color: #3e8f3e;
-}
-.btn-success.disabled,
-.btn-success[disabled],
-fieldset[disabled] .btn-success,
-.btn-success.disabled:hover,
-.btn-success[disabled]:hover,
-fieldset[disabled] .btn-success:hover,
-.btn-success.disabled:focus,
-.btn-success[disabled]:focus,
-fieldset[disabled] .btn-success:focus,
-.btn-success.disabled.focus,
-.btn-success[disabled].focus,
-fieldset[disabled] .btn-success.focus,
-.btn-success.disabled:active,
-.btn-success[disabled]:active,
-fieldset[disabled] .btn-success:active,
-.btn-success.disabled.active,
-.btn-success[disabled].active,
-fieldset[disabled] .btn-success.active {
- background-color: #419641;
- background-image: none;
-}
-.btn-info {
- background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
- background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
- background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #28a4c9;
-}
-.btn-info:hover,
-.btn-info:focus {
- background-color: #2aabd2;
- background-position: 0 -15px;
-}
-.btn-info:active,
-.btn-info.active {
- background-color: #2aabd2;
- border-color: #28a4c9;
-}
-.btn-info.disabled,
-.btn-info[disabled],
-fieldset[disabled] .btn-info,
-.btn-info.disabled:hover,
-.btn-info[disabled]:hover,
-fieldset[disabled] .btn-info:hover,
-.btn-info.disabled:focus,
-.btn-info[disabled]:focus,
-fieldset[disabled] .btn-info:focus,
-.btn-info.disabled.focus,
-.btn-info[disabled].focus,
-fieldset[disabled] .btn-info.focus,
-.btn-info.disabled:active,
-.btn-info[disabled]:active,
-fieldset[disabled] .btn-info:active,
-.btn-info.disabled.active,
-.btn-info[disabled].active,
-fieldset[disabled] .btn-info.active {
- background-color: #2aabd2;
- background-image: none;
-}
-.btn-warning {
- background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
- background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
- background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #e38d13;
-}
-.btn-warning:hover,
-.btn-warning:focus {
- background-color: #eb9316;
- background-position: 0 -15px;
-}
-.btn-warning:active,
-.btn-warning.active {
- background-color: #eb9316;
- border-color: #e38d13;
-}
-.btn-warning.disabled,
-.btn-warning[disabled],
-fieldset[disabled] .btn-warning,
-.btn-warning.disabled:hover,
-.btn-warning[disabled]:hover,
-fieldset[disabled] .btn-warning:hover,
-.btn-warning.disabled:focus,
-.btn-warning[disabled]:focus,
-fieldset[disabled] .btn-warning:focus,
-.btn-warning.disabled.focus,
-.btn-warning[disabled].focus,
-fieldset[disabled] .btn-warning.focus,
-.btn-warning.disabled:active,
-.btn-warning[disabled]:active,
-fieldset[disabled] .btn-warning:active,
-.btn-warning.disabled.active,
-.btn-warning[disabled].active,
-fieldset[disabled] .btn-warning.active {
- background-color: #eb9316;
- background-image: none;
-}
-.btn-danger {
- background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
- background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
- background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- background-repeat: repeat-x;
- border-color: #b92c28;
-}
-.btn-danger:hover,
-.btn-danger:focus {
- background-color: #c12e2a;
- background-position: 0 -15px;
-}
-.btn-danger:active,
-.btn-danger.active {
- background-color: #c12e2a;
- border-color: #b92c28;
-}
-.btn-danger.disabled,
-.btn-danger[disabled],
-fieldset[disabled] .btn-danger,
-.btn-danger.disabled:hover,
-.btn-danger[disabled]:hover,
-fieldset[disabled] .btn-danger:hover,
-.btn-danger.disabled:focus,
-.btn-danger[disabled]:focus,
-fieldset[disabled] .btn-danger:focus,
-.btn-danger.disabled.focus,
-.btn-danger[disabled].focus,
-fieldset[disabled] .btn-danger.focus,
-.btn-danger.disabled:active,
-.btn-danger[disabled]:active,
-fieldset[disabled] .btn-danger:active,
-.btn-danger.disabled.active,
-.btn-danger[disabled].active,
-fieldset[disabled] .btn-danger.active {
- background-color: #c12e2a;
- background-image: none;
-}
-.thumbnail,
-.img-thumbnail {
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
-}
-.dropdown-menu > li > a:hover,
-.dropdown-menu > li > a:focus {
- background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
- background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
- background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
- background-repeat: repeat-x;
- background-color: #e8e8e8;
-}
-.dropdown-menu > .active > a,
-.dropdown-menu > .active > a:hover,
-.dropdown-menu > .active > a:focus {
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
- background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
- background-repeat: repeat-x;
- background-color: #2e6da4;
-}
-.navbar-default {
- background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
- background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f8f8f8));
- background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
-}
-.navbar-default .navbar-nav > .open > a,
-.navbar-default .navbar-nav > .active > a {
- background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
- background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2));
- background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
- background-repeat: repeat-x;
- -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
-}
-.navbar-brand,
-.navbar-nav > li > a {
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
-}
-.navbar-inverse {
- background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
- background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
- background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
- border-radius: 4px;
-}
-.navbar-inverse .navbar-nav > .open > a,
-.navbar-inverse .navbar-nav > .active > a {
- background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);
- background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f));
- background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
- background-repeat: repeat-x;
- -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
- box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
-}
-.navbar-inverse .navbar-brand,
-.navbar-inverse .navbar-nav > li > a {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-.navbar-static-top,
-.navbar-fixed-top,
-.navbar-fixed-bottom {
- border-radius: 0;
-}
-@media (max-width: 767px) {
- .navbar .navbar-nav .open .dropdown-menu > .active > a,
- .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
- .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
- color: #fff;
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
- background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
- background-repeat: repeat-x;
- }
-}
-.alert {
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-.alert-success {
- background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
- background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
- background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
- background-repeat: repeat-x;
- border-color: #b2dba1;
-}
-.alert-info {
- background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
- background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));
- background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
- background-repeat: repeat-x;
- border-color: #9acfea;
-}
-.alert-warning {
- background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
- background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));
- background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
- background-repeat: repeat-x;
- border-color: #f5e79e;
-}
-.alert-danger {
- background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
- background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
- background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
- background-repeat: repeat-x;
- border-color: #dca7a7;
-}
-.progress {
- background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
- background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
- background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar {
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090));
- background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar-success {
- background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
- background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
- background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar-info {
- background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
- background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
- background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar-warning {
- background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
- background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
- background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar-danger {
- background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
- background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
- background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
- background-repeat: repeat-x;
-}
-.progress-bar-striped {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-.list-group {
- border-radius: 4px;
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
-}
-.list-group-item.active,
-.list-group-item.active:hover,
-.list-group-item.active:focus {
- text-shadow: 0 -1px 0 #286090;
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a));
- background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);
- background-repeat: repeat-x;
- border-color: #2b669a;
-}
-.list-group-item.active .badge,
-.list-group-item.active:hover .badge,
-.list-group-item.active:focus .badge {
- text-shadow: none;
-}
-.panel {
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-.panel-default > .panel-heading {
- background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
- background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
- background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
- background-repeat: repeat-x;
-}
-.panel-primary > .panel-heading {
- background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
- background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
- background-repeat: repeat-x;
-}
-.panel-success > .panel-heading {
- background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
- background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
- background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
- background-repeat: repeat-x;
-}
-.panel-info > .panel-heading {
- background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
- background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
- background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
- background-repeat: repeat-x;
-}
-.panel-warning > .panel-heading {
- background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
- background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
- background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
- background-repeat: repeat-x;
-}
-.panel-danger > .panel-heading {
- background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
- background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
- background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
- background-repeat: repeat-x;
-}
-.well {
- background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
- background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
- background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
- background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
- background-repeat: repeat-x;
- border-color: #dcdcdc;
- -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
-}
-/*# sourceMappingURL=bootstrap-theme.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css.map b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css.map
deleted file mode 100755
index 949d09738..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n background-repeat: repeat-x;\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n background-repeat: repeat-x;\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n background-repeat: repeat-x;\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","// stylelint-disable selector-no-qualifying-type, selector-max-compound-selectors\n\n/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default {\n .btn-styles(@btn-default-bg);\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0, 0, 0, .075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0, 0, 0, .075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, .25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0, 0, 0, .25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, .2);\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0, 0, 0, .075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0, 0, 0, .05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);\n .box-shadow(@shadow);\n}\n","// stylelint-disable indentation, property-no-vendor-prefix, selector-no-vendor-prefix\n\n// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n word-wrap: break-word;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// stylelint-disable value-no-vendor-prefix, selector-max-id\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255, 255, 255, .15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css
deleted file mode 100755
index 2a69f48c7..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css
+++ /dev/null
@@ -1,6 +0,0 @@
-/*!
- * Bootstrap v3.4.1 (https://getbootstrap.com/)
- * Copyright 2011-2019 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;text-shadow:0 1px 0 #fff;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x;background-color:#e8e8e8}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x;background-color:#2e6da4}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}
-/*# sourceMappingURL=bootstrap-theme.min.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css.map b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css.map
deleted file mode 100755
index 5d75106e0..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap-theme.min.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["bootstrap-theme.css","dist/css/bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n background-repeat: repeat-x;\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n background-repeat: repeat-x;\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n background-repeat: repeat-x;\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88));\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f8f8f8));\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2));\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f));\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n background-repeat: repeat-x;\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n background-repeat: repeat-x;\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n background-repeat: repeat-x;\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090));\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n background-repeat: repeat-x;\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a));\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n background-repeat: repeat-x;\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n background-repeat: repeat-x;\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n background-repeat: repeat-x;\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n background-repeat: repeat-x;\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","// stylelint-disable selector-no-qualifying-type, selector-max-compound-selectors\n\n/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default {\n .btn-styles(@btn-default-bg);\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0, 0, 0, .075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0, 0, 0, .075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, .25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0, 0, 0, .25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, .2);\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0, 0, 0, .075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0, 0, 0, .05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);\n .box-shadow(@shadow);\n}\n","// stylelint-disable indentation, property-no-vendor-prefix, selector-no-vendor-prefix\n\n// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n word-wrap: break-word;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// stylelint-disable value-no-vendor-prefix, selector-max-id\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255, 255, 255, .15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css
deleted file mode 100755
index fcab41554..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css
+++ /dev/null
@@ -1,6834 +0,0 @@
-/*!
- * Bootstrap v3.4.1 (https://getbootstrap.com/)
- * Copyright 2011-2019 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- */
-/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
-html {
- font-family: sans-serif;
- -ms-text-size-adjust: 100%;
- -webkit-text-size-adjust: 100%;
-}
-body {
- margin: 0;
-}
-article,
-aside,
-details,
-figcaption,
-figure,
-footer,
-header,
-hgroup,
-main,
-menu,
-nav,
-section,
-summary {
- display: block;
-}
-audio,
-canvas,
-progress,
-video {
- display: inline-block;
- vertical-align: baseline;
-}
-audio:not([controls]) {
- display: none;
- height: 0;
-}
-[hidden],
-template {
- display: none;
-}
-a {
- background-color: transparent;
-}
-a:active,
-a:hover {
- outline: 0;
-}
-abbr[title] {
- border-bottom: none;
- text-decoration: underline;
- -webkit-text-decoration: underline dotted;
- -moz-text-decoration: underline dotted;
- text-decoration: underline dotted;
-}
-b,
-strong {
- font-weight: bold;
-}
-dfn {
- font-style: italic;
-}
-h1 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-mark {
- background: #ff0;
- color: #000;
-}
-small {
- font-size: 80%;
-}
-sub,
-sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
-}
-sup {
- top: -0.5em;
-}
-sub {
- bottom: -0.25em;
-}
-img {
- border: 0;
-}
-svg:not(:root) {
- overflow: hidden;
-}
-figure {
- margin: 1em 40px;
-}
-hr {
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
- height: 0;
-}
-pre {
- overflow: auto;
-}
-code,
-kbd,
-pre,
-samp {
- font-family: monospace, monospace;
- font-size: 1em;
-}
-button,
-input,
-optgroup,
-select,
-textarea {
- color: inherit;
- font: inherit;
- margin: 0;
-}
-button {
- overflow: visible;
-}
-button,
-select {
- text-transform: none;
-}
-button,
-html input[type="button"],
-input[type="reset"],
-input[type="submit"] {
- -webkit-appearance: button;
- cursor: pointer;
-}
-button[disabled],
-html input[disabled] {
- cursor: default;
-}
-button::-moz-focus-inner,
-input::-moz-focus-inner {
- border: 0;
- padding: 0;
-}
-input {
- line-height: normal;
-}
-input[type="checkbox"],
-input[type="radio"] {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- padding: 0;
-}
-input[type="number"]::-webkit-inner-spin-button,
-input[type="number"]::-webkit-outer-spin-button {
- height: auto;
-}
-input[type="search"] {
- -webkit-appearance: textfield;
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
-}
-input[type="search"]::-webkit-search-cancel-button,
-input[type="search"]::-webkit-search-decoration {
- -webkit-appearance: none;
-}
-fieldset {
- border: 1px solid #c0c0c0;
- margin: 0 2px;
- padding: 0.35em 0.625em 0.75em;
-}
-legend {
- border: 0;
- padding: 0;
-}
-textarea {
- overflow: auto;
-}
-optgroup {
- font-weight: bold;
-}
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-td,
-th {
- padding: 0;
-}
-/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
-@media print {
- *,
- *:before,
- *:after {
- color: #000 !important;
- text-shadow: none !important;
- background: transparent !important;
- -webkit-box-shadow: none !important;
- box-shadow: none !important;
- }
- a,
- a:visited {
- text-decoration: underline;
- }
- a[href]:after {
- content: " (" attr(href) ")";
- }
- abbr[title]:after {
- content: " (" attr(title) ")";
- }
- a[href^="#"]:after,
- a[href^="javascript:"]:after {
- content: "";
- }
- pre,
- blockquote {
- border: 1px solid #999;
- page-break-inside: avoid;
- }
- thead {
- display: table-header-group;
- }
- tr,
- img {
- page-break-inside: avoid;
- }
- img {
- max-width: 100% !important;
- }
- p,
- h2,
- h3 {
- orphans: 3;
- widows: 3;
- }
- h2,
- h3 {
- page-break-after: avoid;
- }
- .navbar {
- display: none;
- }
- .btn > .caret,
- .dropup > .btn > .caret {
- border-top-color: #000 !important;
- }
- .label {
- border: 1px solid #000;
- }
- .table {
- border-collapse: collapse !important;
- }
- .table td,
- .table th {
- background-color: #fff !important;
- }
- .table-bordered th,
- .table-bordered td {
- border: 1px solid #ddd !important;
- }
-}
-@font-face {
- font-family: "Glyphicons Halflings";
- src: url("../fonts/glyphicons-halflings-regular.eot");
- src: url("../fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg");
-}
-.glyphicon {
- position: relative;
- top: 1px;
- display: inline-block;
- font-family: "Glyphicons Halflings";
- font-style: normal;
- font-weight: 400;
- line-height: 1;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-.glyphicon-asterisk:before {
- content: "\002a";
-}
-.glyphicon-plus:before {
- content: "\002b";
-}
-.glyphicon-euro:before,
-.glyphicon-eur:before {
- content: "\20ac";
-}
-.glyphicon-minus:before {
- content: "\2212";
-}
-.glyphicon-cloud:before {
- content: "\2601";
-}
-.glyphicon-envelope:before {
- content: "\2709";
-}
-.glyphicon-pencil:before {
- content: "\270f";
-}
-.glyphicon-glass:before {
- content: "\e001";
-}
-.glyphicon-music:before {
- content: "\e002";
-}
-.glyphicon-search:before {
- content: "\e003";
-}
-.glyphicon-heart:before {
- content: "\e005";
-}
-.glyphicon-star:before {
- content: "\e006";
-}
-.glyphicon-star-empty:before {
- content: "\e007";
-}
-.glyphicon-user:before {
- content: "\e008";
-}
-.glyphicon-film:before {
- content: "\e009";
-}
-.glyphicon-th-large:before {
- content: "\e010";
-}
-.glyphicon-th:before {
- content: "\e011";
-}
-.glyphicon-th-list:before {
- content: "\e012";
-}
-.glyphicon-ok:before {
- content: "\e013";
-}
-.glyphicon-remove:before {
- content: "\e014";
-}
-.glyphicon-zoom-in:before {
- content: "\e015";
-}
-.glyphicon-zoom-out:before {
- content: "\e016";
-}
-.glyphicon-off:before {
- content: "\e017";
-}
-.glyphicon-signal:before {
- content: "\e018";
-}
-.glyphicon-cog:before {
- content: "\e019";
-}
-.glyphicon-trash:before {
- content: "\e020";
-}
-.glyphicon-home:before {
- content: "\e021";
-}
-.glyphicon-file:before {
- content: "\e022";
-}
-.glyphicon-time:before {
- content: "\e023";
-}
-.glyphicon-road:before {
- content: "\e024";
-}
-.glyphicon-download-alt:before {
- content: "\e025";
-}
-.glyphicon-download:before {
- content: "\e026";
-}
-.glyphicon-upload:before {
- content: "\e027";
-}
-.glyphicon-inbox:before {
- content: "\e028";
-}
-.glyphicon-play-circle:before {
- content: "\e029";
-}
-.glyphicon-repeat:before {
- content: "\e030";
-}
-.glyphicon-refresh:before {
- content: "\e031";
-}
-.glyphicon-list-alt:before {
- content: "\e032";
-}
-.glyphicon-lock:before {
- content: "\e033";
-}
-.glyphicon-flag:before {
- content: "\e034";
-}
-.glyphicon-headphones:before {
- content: "\e035";
-}
-.glyphicon-volume-off:before {
- content: "\e036";
-}
-.glyphicon-volume-down:before {
- content: "\e037";
-}
-.glyphicon-volume-up:before {
- content: "\e038";
-}
-.glyphicon-qrcode:before {
- content: "\e039";
-}
-.glyphicon-barcode:before {
- content: "\e040";
-}
-.glyphicon-tag:before {
- content: "\e041";
-}
-.glyphicon-tags:before {
- content: "\e042";
-}
-.glyphicon-book:before {
- content: "\e043";
-}
-.glyphicon-bookmark:before {
- content: "\e044";
-}
-.glyphicon-print:before {
- content: "\e045";
-}
-.glyphicon-camera:before {
- content: "\e046";
-}
-.glyphicon-font:before {
- content: "\e047";
-}
-.glyphicon-bold:before {
- content: "\e048";
-}
-.glyphicon-italic:before {
- content: "\e049";
-}
-.glyphicon-text-height:before {
- content: "\e050";
-}
-.glyphicon-text-width:before {
- content: "\e051";
-}
-.glyphicon-align-left:before {
- content: "\e052";
-}
-.glyphicon-align-center:before {
- content: "\e053";
-}
-.glyphicon-align-right:before {
- content: "\e054";
-}
-.glyphicon-align-justify:before {
- content: "\e055";
-}
-.glyphicon-list:before {
- content: "\e056";
-}
-.glyphicon-indent-left:before {
- content: "\e057";
-}
-.glyphicon-indent-right:before {
- content: "\e058";
-}
-.glyphicon-facetime-video:before {
- content: "\e059";
-}
-.glyphicon-picture:before {
- content: "\e060";
-}
-.glyphicon-map-marker:before {
- content: "\e062";
-}
-.glyphicon-adjust:before {
- content: "\e063";
-}
-.glyphicon-tint:before {
- content: "\e064";
-}
-.glyphicon-edit:before {
- content: "\e065";
-}
-.glyphicon-share:before {
- content: "\e066";
-}
-.glyphicon-check:before {
- content: "\e067";
-}
-.glyphicon-move:before {
- content: "\e068";
-}
-.glyphicon-step-backward:before {
- content: "\e069";
-}
-.glyphicon-fast-backward:before {
- content: "\e070";
-}
-.glyphicon-backward:before {
- content: "\e071";
-}
-.glyphicon-play:before {
- content: "\e072";
-}
-.glyphicon-pause:before {
- content: "\e073";
-}
-.glyphicon-stop:before {
- content: "\e074";
-}
-.glyphicon-forward:before {
- content: "\e075";
-}
-.glyphicon-fast-forward:before {
- content: "\e076";
-}
-.glyphicon-step-forward:before {
- content: "\e077";
-}
-.glyphicon-eject:before {
- content: "\e078";
-}
-.glyphicon-chevron-left:before {
- content: "\e079";
-}
-.glyphicon-chevron-right:before {
- content: "\e080";
-}
-.glyphicon-plus-sign:before {
- content: "\e081";
-}
-.glyphicon-minus-sign:before {
- content: "\e082";
-}
-.glyphicon-remove-sign:before {
- content: "\e083";
-}
-.glyphicon-ok-sign:before {
- content: "\e084";
-}
-.glyphicon-question-sign:before {
- content: "\e085";
-}
-.glyphicon-info-sign:before {
- content: "\e086";
-}
-.glyphicon-screenshot:before {
- content: "\e087";
-}
-.glyphicon-remove-circle:before {
- content: "\e088";
-}
-.glyphicon-ok-circle:before {
- content: "\e089";
-}
-.glyphicon-ban-circle:before {
- content: "\e090";
-}
-.glyphicon-arrow-left:before {
- content: "\e091";
-}
-.glyphicon-arrow-right:before {
- content: "\e092";
-}
-.glyphicon-arrow-up:before {
- content: "\e093";
-}
-.glyphicon-arrow-down:before {
- content: "\e094";
-}
-.glyphicon-share-alt:before {
- content: "\e095";
-}
-.glyphicon-resize-full:before {
- content: "\e096";
-}
-.glyphicon-resize-small:before {
- content: "\e097";
-}
-.glyphicon-exclamation-sign:before {
- content: "\e101";
-}
-.glyphicon-gift:before {
- content: "\e102";
-}
-.glyphicon-leaf:before {
- content: "\e103";
-}
-.glyphicon-fire:before {
- content: "\e104";
-}
-.glyphicon-eye-open:before {
- content: "\e105";
-}
-.glyphicon-eye-close:before {
- content: "\e106";
-}
-.glyphicon-warning-sign:before {
- content: "\e107";
-}
-.glyphicon-plane:before {
- content: "\e108";
-}
-.glyphicon-calendar:before {
- content: "\e109";
-}
-.glyphicon-random:before {
- content: "\e110";
-}
-.glyphicon-comment:before {
- content: "\e111";
-}
-.glyphicon-magnet:before {
- content: "\e112";
-}
-.glyphicon-chevron-up:before {
- content: "\e113";
-}
-.glyphicon-chevron-down:before {
- content: "\e114";
-}
-.glyphicon-retweet:before {
- content: "\e115";
-}
-.glyphicon-shopping-cart:before {
- content: "\e116";
-}
-.glyphicon-folder-close:before {
- content: "\e117";
-}
-.glyphicon-folder-open:before {
- content: "\e118";
-}
-.glyphicon-resize-vertical:before {
- content: "\e119";
-}
-.glyphicon-resize-horizontal:before {
- content: "\e120";
-}
-.glyphicon-hdd:before {
- content: "\e121";
-}
-.glyphicon-bullhorn:before {
- content: "\e122";
-}
-.glyphicon-bell:before {
- content: "\e123";
-}
-.glyphicon-certificate:before {
- content: "\e124";
-}
-.glyphicon-thumbs-up:before {
- content: "\e125";
-}
-.glyphicon-thumbs-down:before {
- content: "\e126";
-}
-.glyphicon-hand-right:before {
- content: "\e127";
-}
-.glyphicon-hand-left:before {
- content: "\e128";
-}
-.glyphicon-hand-up:before {
- content: "\e129";
-}
-.glyphicon-hand-down:before {
- content: "\e130";
-}
-.glyphicon-circle-arrow-right:before {
- content: "\e131";
-}
-.glyphicon-circle-arrow-left:before {
- content: "\e132";
-}
-.glyphicon-circle-arrow-up:before {
- content: "\e133";
-}
-.glyphicon-circle-arrow-down:before {
- content: "\e134";
-}
-.glyphicon-globe:before {
- content: "\e135";
-}
-.glyphicon-wrench:before {
- content: "\e136";
-}
-.glyphicon-tasks:before {
- content: "\e137";
-}
-.glyphicon-filter:before {
- content: "\e138";
-}
-.glyphicon-briefcase:before {
- content: "\e139";
-}
-.glyphicon-fullscreen:before {
- content: "\e140";
-}
-.glyphicon-dashboard:before {
- content: "\e141";
-}
-.glyphicon-paperclip:before {
- content: "\e142";
-}
-.glyphicon-heart-empty:before {
- content: "\e143";
-}
-.glyphicon-link:before {
- content: "\e144";
-}
-.glyphicon-phone:before {
- content: "\e145";
-}
-.glyphicon-pushpin:before {
- content: "\e146";
-}
-.glyphicon-usd:before {
- content: "\e148";
-}
-.glyphicon-gbp:before {
- content: "\e149";
-}
-.glyphicon-sort:before {
- content: "\e150";
-}
-.glyphicon-sort-by-alphabet:before {
- content: "\e151";
-}
-.glyphicon-sort-by-alphabet-alt:before {
- content: "\e152";
-}
-.glyphicon-sort-by-order:before {
- content: "\e153";
-}
-.glyphicon-sort-by-order-alt:before {
- content: "\e154";
-}
-.glyphicon-sort-by-attributes:before {
- content: "\e155";
-}
-.glyphicon-sort-by-attributes-alt:before {
- content: "\e156";
-}
-.glyphicon-unchecked:before {
- content: "\e157";
-}
-.glyphicon-expand:before {
- content: "\e158";
-}
-.glyphicon-collapse-down:before {
- content: "\e159";
-}
-.glyphicon-collapse-up:before {
- content: "\e160";
-}
-.glyphicon-log-in:before {
- content: "\e161";
-}
-.glyphicon-flash:before {
- content: "\e162";
-}
-.glyphicon-log-out:before {
- content: "\e163";
-}
-.glyphicon-new-window:before {
- content: "\e164";
-}
-.glyphicon-record:before {
- content: "\e165";
-}
-.glyphicon-save:before {
- content: "\e166";
-}
-.glyphicon-open:before {
- content: "\e167";
-}
-.glyphicon-saved:before {
- content: "\e168";
-}
-.glyphicon-import:before {
- content: "\e169";
-}
-.glyphicon-export:before {
- content: "\e170";
-}
-.glyphicon-send:before {
- content: "\e171";
-}
-.glyphicon-floppy-disk:before {
- content: "\e172";
-}
-.glyphicon-floppy-saved:before {
- content: "\e173";
-}
-.glyphicon-floppy-remove:before {
- content: "\e174";
-}
-.glyphicon-floppy-save:before {
- content: "\e175";
-}
-.glyphicon-floppy-open:before {
- content: "\e176";
-}
-.glyphicon-credit-card:before {
- content: "\e177";
-}
-.glyphicon-transfer:before {
- content: "\e178";
-}
-.glyphicon-cutlery:before {
- content: "\e179";
-}
-.glyphicon-header:before {
- content: "\e180";
-}
-.glyphicon-compressed:before {
- content: "\e181";
-}
-.glyphicon-earphone:before {
- content: "\e182";
-}
-.glyphicon-phone-alt:before {
- content: "\e183";
-}
-.glyphicon-tower:before {
- content: "\e184";
-}
-.glyphicon-stats:before {
- content: "\e185";
-}
-.glyphicon-sd-video:before {
- content: "\e186";
-}
-.glyphicon-hd-video:before {
- content: "\e187";
-}
-.glyphicon-subtitles:before {
- content: "\e188";
-}
-.glyphicon-sound-stereo:before {
- content: "\e189";
-}
-.glyphicon-sound-dolby:before {
- content: "\e190";
-}
-.glyphicon-sound-5-1:before {
- content: "\e191";
-}
-.glyphicon-sound-6-1:before {
- content: "\e192";
-}
-.glyphicon-sound-7-1:before {
- content: "\e193";
-}
-.glyphicon-copyright-mark:before {
- content: "\e194";
-}
-.glyphicon-registration-mark:before {
- content: "\e195";
-}
-.glyphicon-cloud-download:before {
- content: "\e197";
-}
-.glyphicon-cloud-upload:before {
- content: "\e198";
-}
-.glyphicon-tree-conifer:before {
- content: "\e199";
-}
-.glyphicon-tree-deciduous:before {
- content: "\e200";
-}
-.glyphicon-cd:before {
- content: "\e201";
-}
-.glyphicon-save-file:before {
- content: "\e202";
-}
-.glyphicon-open-file:before {
- content: "\e203";
-}
-.glyphicon-level-up:before {
- content: "\e204";
-}
-.glyphicon-copy:before {
- content: "\e205";
-}
-.glyphicon-paste:before {
- content: "\e206";
-}
-.glyphicon-alert:before {
- content: "\e209";
-}
-.glyphicon-equalizer:before {
- content: "\e210";
-}
-.glyphicon-king:before {
- content: "\e211";
-}
-.glyphicon-queen:before {
- content: "\e212";
-}
-.glyphicon-pawn:before {
- content: "\e213";
-}
-.glyphicon-bishop:before {
- content: "\e214";
-}
-.glyphicon-knight:before {
- content: "\e215";
-}
-.glyphicon-baby-formula:before {
- content: "\e216";
-}
-.glyphicon-tent:before {
- content: "\26fa";
-}
-.glyphicon-blackboard:before {
- content: "\e218";
-}
-.glyphicon-bed:before {
- content: "\e219";
-}
-.glyphicon-apple:before {
- content: "\f8ff";
-}
-.glyphicon-erase:before {
- content: "\e221";
-}
-.glyphicon-hourglass:before {
- content: "\231b";
-}
-.glyphicon-lamp:before {
- content: "\e223";
-}
-.glyphicon-duplicate:before {
- content: "\e224";
-}
-.glyphicon-piggy-bank:before {
- content: "\e225";
-}
-.glyphicon-scissors:before {
- content: "\e226";
-}
-.glyphicon-bitcoin:before {
- content: "\e227";
-}
-.glyphicon-btc:before {
- content: "\e227";
-}
-.glyphicon-xbt:before {
- content: "\e227";
-}
-.glyphicon-yen:before {
- content: "\00a5";
-}
-.glyphicon-jpy:before {
- content: "\00a5";
-}
-.glyphicon-ruble:before {
- content: "\20bd";
-}
-.glyphicon-rub:before {
- content: "\20bd";
-}
-.glyphicon-scale:before {
- content: "\e230";
-}
-.glyphicon-ice-lolly:before {
- content: "\e231";
-}
-.glyphicon-ice-lolly-tasted:before {
- content: "\e232";
-}
-.glyphicon-education:before {
- content: "\e233";
-}
-.glyphicon-option-horizontal:before {
- content: "\e234";
-}
-.glyphicon-option-vertical:before {
- content: "\e235";
-}
-.glyphicon-menu-hamburger:before {
- content: "\e236";
-}
-.glyphicon-modal-window:before {
- content: "\e237";
-}
-.glyphicon-oil:before {
- content: "\e238";
-}
-.glyphicon-grain:before {
- content: "\e239";
-}
-.glyphicon-sunglasses:before {
- content: "\e240";
-}
-.glyphicon-text-size:before {
- content: "\e241";
-}
-.glyphicon-text-color:before {
- content: "\e242";
-}
-.glyphicon-text-background:before {
- content: "\e243";
-}
-.glyphicon-object-align-top:before {
- content: "\e244";
-}
-.glyphicon-object-align-bottom:before {
- content: "\e245";
-}
-.glyphicon-object-align-horizontal:before {
- content: "\e246";
-}
-.glyphicon-object-align-left:before {
- content: "\e247";
-}
-.glyphicon-object-align-vertical:before {
- content: "\e248";
-}
-.glyphicon-object-align-right:before {
- content: "\e249";
-}
-.glyphicon-triangle-right:before {
- content: "\e250";
-}
-.glyphicon-triangle-left:before {
- content: "\e251";
-}
-.glyphicon-triangle-bottom:before {
- content: "\e252";
-}
-.glyphicon-triangle-top:before {
- content: "\e253";
-}
-.glyphicon-console:before {
- content: "\e254";
-}
-.glyphicon-superscript:before {
- content: "\e255";
-}
-.glyphicon-subscript:before {
- content: "\e256";
-}
-.glyphicon-menu-left:before {
- content: "\e257";
-}
-.glyphicon-menu-right:before {
- content: "\e258";
-}
-.glyphicon-menu-down:before {
- content: "\e259";
-}
-.glyphicon-menu-up:before {
- content: "\e260";
-}
-* {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-*:before,
-*:after {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-html {
- font-size: 10px;
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-}
-body {
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-size: 14px;
- line-height: 1.42857143;
- color: #333333;
- background-color: #fff;
-}
-input,
-button,
-select,
-textarea {
- font-family: inherit;
- font-size: inherit;
- line-height: inherit;
-}
-a {
- color: #337ab7;
- text-decoration: none;
-}
-a:hover,
-a:focus {
- color: #23527c;
- text-decoration: underline;
-}
-a:focus {
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-figure {
- margin: 0;
-}
-img {
- vertical-align: middle;
-}
-.img-responsive,
-.thumbnail > img,
-.thumbnail a > img,
-.carousel-inner > .item > img,
-.carousel-inner > .item > a > img {
- display: block;
- max-width: 100%;
- height: auto;
-}
-.img-rounded {
- border-radius: 6px;
-}
-.img-thumbnail {
- padding: 4px;
- line-height: 1.42857143;
- background-color: #fff;
- border: 1px solid #ddd;
- border-radius: 4px;
- -webkit-transition: all 0.2s ease-in-out;
- -o-transition: all 0.2s ease-in-out;
- transition: all 0.2s ease-in-out;
- display: inline-block;
- max-width: 100%;
- height: auto;
-}
-.img-circle {
- border-radius: 50%;
-}
-hr {
- margin-top: 20px;
- margin-bottom: 20px;
- border: 0;
- border-top: 1px solid #eeeeee;
-}
-.sr-only {
- position: absolute;
- width: 1px;
- height: 1px;
- padding: 0;
- margin: -1px;
- overflow: hidden;
- clip: rect(0, 0, 0, 0);
- border: 0;
-}
-.sr-only-focusable:active,
-.sr-only-focusable:focus {
- position: static;
- width: auto;
- height: auto;
- margin: 0;
- overflow: visible;
- clip: auto;
-}
-[role="button"] {
- cursor: pointer;
-}
-h1,
-h2,
-h3,
-h4,
-h5,
-h6,
-.h1,
-.h2,
-.h3,
-.h4,
-.h5,
-.h6 {
- font-family: inherit;
- font-weight: 500;
- line-height: 1.1;
- color: inherit;
-}
-h1 small,
-h2 small,
-h3 small,
-h4 small,
-h5 small,
-h6 small,
-.h1 small,
-.h2 small,
-.h3 small,
-.h4 small,
-.h5 small,
-.h6 small,
-h1 .small,
-h2 .small,
-h3 .small,
-h4 .small,
-h5 .small,
-h6 .small,
-.h1 .small,
-.h2 .small,
-.h3 .small,
-.h4 .small,
-.h5 .small,
-.h6 .small {
- font-weight: 400;
- line-height: 1;
- color: #777777;
-}
-h1,
-.h1,
-h2,
-.h2,
-h3,
-.h3 {
- margin-top: 20px;
- margin-bottom: 10px;
-}
-h1 small,
-.h1 small,
-h2 small,
-.h2 small,
-h3 small,
-.h3 small,
-h1 .small,
-.h1 .small,
-h2 .small,
-.h2 .small,
-h3 .small,
-.h3 .small {
- font-size: 65%;
-}
-h4,
-.h4,
-h5,
-.h5,
-h6,
-.h6 {
- margin-top: 10px;
- margin-bottom: 10px;
-}
-h4 small,
-.h4 small,
-h5 small,
-.h5 small,
-h6 small,
-.h6 small,
-h4 .small,
-.h4 .small,
-h5 .small,
-.h5 .small,
-h6 .small,
-.h6 .small {
- font-size: 75%;
-}
-h1,
-.h1 {
- font-size: 36px;
-}
-h2,
-.h2 {
- font-size: 30px;
-}
-h3,
-.h3 {
- font-size: 24px;
-}
-h4,
-.h4 {
- font-size: 18px;
-}
-h5,
-.h5 {
- font-size: 14px;
-}
-h6,
-.h6 {
- font-size: 12px;
-}
-p {
- margin: 0 0 10px;
-}
-.lead {
- margin-bottom: 20px;
- font-size: 16px;
- font-weight: 300;
- line-height: 1.4;
-}
-@media (min-width: 768px) {
- .lead {
- font-size: 21px;
- }
-}
-small,
-.small {
- font-size: 85%;
-}
-mark,
-.mark {
- padding: 0.2em;
- background-color: #fcf8e3;
-}
-.text-left {
- text-align: left;
-}
-.text-right {
- text-align: right;
-}
-.text-center {
- text-align: center;
-}
-.text-justify {
- text-align: justify;
-}
-.text-nowrap {
- white-space: nowrap;
-}
-.text-lowercase {
- text-transform: lowercase;
-}
-.text-uppercase {
- text-transform: uppercase;
-}
-.text-capitalize {
- text-transform: capitalize;
-}
-.text-muted {
- color: #777777;
-}
-.text-primary {
- color: #337ab7;
-}
-a.text-primary:hover,
-a.text-primary:focus {
- color: #286090;
-}
-.text-success {
- color: #3c763d;
-}
-a.text-success:hover,
-a.text-success:focus {
- color: #2b542c;
-}
-.text-info {
- color: #31708f;
-}
-a.text-info:hover,
-a.text-info:focus {
- color: #245269;
-}
-.text-warning {
- color: #8a6d3b;
-}
-a.text-warning:hover,
-a.text-warning:focus {
- color: #66512c;
-}
-.text-danger {
- color: #a94442;
-}
-a.text-danger:hover,
-a.text-danger:focus {
- color: #843534;
-}
-.bg-primary {
- color: #fff;
- background-color: #337ab7;
-}
-a.bg-primary:hover,
-a.bg-primary:focus {
- background-color: #286090;
-}
-.bg-success {
- background-color: #dff0d8;
-}
-a.bg-success:hover,
-a.bg-success:focus {
- background-color: #c1e2b3;
-}
-.bg-info {
- background-color: #d9edf7;
-}
-a.bg-info:hover,
-a.bg-info:focus {
- background-color: #afd9ee;
-}
-.bg-warning {
- background-color: #fcf8e3;
-}
-a.bg-warning:hover,
-a.bg-warning:focus {
- background-color: #f7ecb5;
-}
-.bg-danger {
- background-color: #f2dede;
-}
-a.bg-danger:hover,
-a.bg-danger:focus {
- background-color: #e4b9b9;
-}
-.page-header {
- padding-bottom: 9px;
- margin: 40px 0 20px;
- border-bottom: 1px solid #eeeeee;
-}
-ul,
-ol {
- margin-top: 0;
- margin-bottom: 10px;
-}
-ul ul,
-ol ul,
-ul ol,
-ol ol {
- margin-bottom: 0;
-}
-.list-unstyled {
- padding-left: 0;
- list-style: none;
-}
-.list-inline {
- padding-left: 0;
- list-style: none;
- margin-left: -5px;
-}
-.list-inline > li {
- display: inline-block;
- padding-right: 5px;
- padding-left: 5px;
-}
-dl {
- margin-top: 0;
- margin-bottom: 20px;
-}
-dt,
-dd {
- line-height: 1.42857143;
-}
-dt {
- font-weight: 700;
-}
-dd {
- margin-left: 0;
-}
-@media (min-width: 768px) {
- .dl-horizontal dt {
- float: left;
- width: 160px;
- clear: left;
- text-align: right;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- }
- .dl-horizontal dd {
- margin-left: 180px;
- }
-}
-abbr[title],
-abbr[data-original-title] {
- cursor: help;
-}
-.initialism {
- font-size: 90%;
- text-transform: uppercase;
-}
-blockquote {
- padding: 10px 20px;
- margin: 0 0 20px;
- font-size: 17.5px;
- border-left: 5px solid #eeeeee;
-}
-blockquote p:last-child,
-blockquote ul:last-child,
-blockquote ol:last-child {
- margin-bottom: 0;
-}
-blockquote footer,
-blockquote small,
-blockquote .small {
- display: block;
- font-size: 80%;
- line-height: 1.42857143;
- color: #777777;
-}
-blockquote footer:before,
-blockquote small:before,
-blockquote .small:before {
- content: "\2014 \00A0";
-}
-.blockquote-reverse,
-blockquote.pull-right {
- padding-right: 15px;
- padding-left: 0;
- text-align: right;
- border-right: 5px solid #eeeeee;
- border-left: 0;
-}
-.blockquote-reverse footer:before,
-blockquote.pull-right footer:before,
-.blockquote-reverse small:before,
-blockquote.pull-right small:before,
-.blockquote-reverse .small:before,
-blockquote.pull-right .small:before {
- content: "";
-}
-.blockquote-reverse footer:after,
-blockquote.pull-right footer:after,
-.blockquote-reverse small:after,
-blockquote.pull-right small:after,
-.blockquote-reverse .small:after,
-blockquote.pull-right .small:after {
- content: "\00A0 \2014";
-}
-address {
- margin-bottom: 20px;
- font-style: normal;
- line-height: 1.42857143;
-}
-code,
-kbd,
-pre,
-samp {
- font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
-}
-code {
- padding: 2px 4px;
- font-size: 90%;
- color: #c7254e;
- background-color: #f9f2f4;
- border-radius: 4px;
-}
-kbd {
- padding: 2px 4px;
- font-size: 90%;
- color: #fff;
- background-color: #333;
- border-radius: 3px;
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-kbd kbd {
- padding: 0;
- font-size: 100%;
- font-weight: 700;
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-pre {
- display: block;
- padding: 9.5px;
- margin: 0 0 10px;
- font-size: 13px;
- line-height: 1.42857143;
- color: #333333;
- word-break: break-all;
- word-wrap: break-word;
- background-color: #f5f5f5;
- border: 1px solid #ccc;
- border-radius: 4px;
-}
-pre code {
- padding: 0;
- font-size: inherit;
- color: inherit;
- white-space: pre-wrap;
- background-color: transparent;
- border-radius: 0;
-}
-.pre-scrollable {
- max-height: 340px;
- overflow-y: scroll;
-}
-.container {
- padding-right: 15px;
- padding-left: 15px;
- margin-right: auto;
- margin-left: auto;
-}
-@media (min-width: 768px) {
- .container {
- width: 750px;
- }
-}
-@media (min-width: 992px) {
- .container {
- width: 970px;
- }
-}
-@media (min-width: 1200px) {
- .container {
- width: 1170px;
- }
-}
-.container-fluid {
- padding-right: 15px;
- padding-left: 15px;
- margin-right: auto;
- margin-left: auto;
-}
-.row {
- margin-right: -15px;
- margin-left: -15px;
-}
-.row-no-gutters {
- margin-right: 0;
- margin-left: 0;
-}
-.row-no-gutters [class*="col-"] {
- padding-right: 0;
- padding-left: 0;
-}
-.col-xs-1,
-.col-sm-1,
-.col-md-1,
-.col-lg-1,
-.col-xs-2,
-.col-sm-2,
-.col-md-2,
-.col-lg-2,
-.col-xs-3,
-.col-sm-3,
-.col-md-3,
-.col-lg-3,
-.col-xs-4,
-.col-sm-4,
-.col-md-4,
-.col-lg-4,
-.col-xs-5,
-.col-sm-5,
-.col-md-5,
-.col-lg-5,
-.col-xs-6,
-.col-sm-6,
-.col-md-6,
-.col-lg-6,
-.col-xs-7,
-.col-sm-7,
-.col-md-7,
-.col-lg-7,
-.col-xs-8,
-.col-sm-8,
-.col-md-8,
-.col-lg-8,
-.col-xs-9,
-.col-sm-9,
-.col-md-9,
-.col-lg-9,
-.col-xs-10,
-.col-sm-10,
-.col-md-10,
-.col-lg-10,
-.col-xs-11,
-.col-sm-11,
-.col-md-11,
-.col-lg-11,
-.col-xs-12,
-.col-sm-12,
-.col-md-12,
-.col-lg-12 {
- position: relative;
- min-height: 1px;
- padding-right: 15px;
- padding-left: 15px;
-}
-.col-xs-1,
-.col-xs-2,
-.col-xs-3,
-.col-xs-4,
-.col-xs-5,
-.col-xs-6,
-.col-xs-7,
-.col-xs-8,
-.col-xs-9,
-.col-xs-10,
-.col-xs-11,
-.col-xs-12 {
- float: left;
-}
-.col-xs-12 {
- width: 100%;
-}
-.col-xs-11 {
- width: 91.66666667%;
-}
-.col-xs-10 {
- width: 83.33333333%;
-}
-.col-xs-9 {
- width: 75%;
-}
-.col-xs-8 {
- width: 66.66666667%;
-}
-.col-xs-7 {
- width: 58.33333333%;
-}
-.col-xs-6 {
- width: 50%;
-}
-.col-xs-5 {
- width: 41.66666667%;
-}
-.col-xs-4 {
- width: 33.33333333%;
-}
-.col-xs-3 {
- width: 25%;
-}
-.col-xs-2 {
- width: 16.66666667%;
-}
-.col-xs-1 {
- width: 8.33333333%;
-}
-.col-xs-pull-12 {
- right: 100%;
-}
-.col-xs-pull-11 {
- right: 91.66666667%;
-}
-.col-xs-pull-10 {
- right: 83.33333333%;
-}
-.col-xs-pull-9 {
- right: 75%;
-}
-.col-xs-pull-8 {
- right: 66.66666667%;
-}
-.col-xs-pull-7 {
- right: 58.33333333%;
-}
-.col-xs-pull-6 {
- right: 50%;
-}
-.col-xs-pull-5 {
- right: 41.66666667%;
-}
-.col-xs-pull-4 {
- right: 33.33333333%;
-}
-.col-xs-pull-3 {
- right: 25%;
-}
-.col-xs-pull-2 {
- right: 16.66666667%;
-}
-.col-xs-pull-1 {
- right: 8.33333333%;
-}
-.col-xs-pull-0 {
- right: auto;
-}
-.col-xs-push-12 {
- left: 100%;
-}
-.col-xs-push-11 {
- left: 91.66666667%;
-}
-.col-xs-push-10 {
- left: 83.33333333%;
-}
-.col-xs-push-9 {
- left: 75%;
-}
-.col-xs-push-8 {
- left: 66.66666667%;
-}
-.col-xs-push-7 {
- left: 58.33333333%;
-}
-.col-xs-push-6 {
- left: 50%;
-}
-.col-xs-push-5 {
- left: 41.66666667%;
-}
-.col-xs-push-4 {
- left: 33.33333333%;
-}
-.col-xs-push-3 {
- left: 25%;
-}
-.col-xs-push-2 {
- left: 16.66666667%;
-}
-.col-xs-push-1 {
- left: 8.33333333%;
-}
-.col-xs-push-0 {
- left: auto;
-}
-.col-xs-offset-12 {
- margin-left: 100%;
-}
-.col-xs-offset-11 {
- margin-left: 91.66666667%;
-}
-.col-xs-offset-10 {
- margin-left: 83.33333333%;
-}
-.col-xs-offset-9 {
- margin-left: 75%;
-}
-.col-xs-offset-8 {
- margin-left: 66.66666667%;
-}
-.col-xs-offset-7 {
- margin-left: 58.33333333%;
-}
-.col-xs-offset-6 {
- margin-left: 50%;
-}
-.col-xs-offset-5 {
- margin-left: 41.66666667%;
-}
-.col-xs-offset-4 {
- margin-left: 33.33333333%;
-}
-.col-xs-offset-3 {
- margin-left: 25%;
-}
-.col-xs-offset-2 {
- margin-left: 16.66666667%;
-}
-.col-xs-offset-1 {
- margin-left: 8.33333333%;
-}
-.col-xs-offset-0 {
- margin-left: 0%;
-}
-@media (min-width: 768px) {
- .col-sm-1,
- .col-sm-2,
- .col-sm-3,
- .col-sm-4,
- .col-sm-5,
- .col-sm-6,
- .col-sm-7,
- .col-sm-8,
- .col-sm-9,
- .col-sm-10,
- .col-sm-11,
- .col-sm-12 {
- float: left;
- }
- .col-sm-12 {
- width: 100%;
- }
- .col-sm-11 {
- width: 91.66666667%;
- }
- .col-sm-10 {
- width: 83.33333333%;
- }
- .col-sm-9 {
- width: 75%;
- }
- .col-sm-8 {
- width: 66.66666667%;
- }
- .col-sm-7 {
- width: 58.33333333%;
- }
- .col-sm-6 {
- width: 50%;
- }
- .col-sm-5 {
- width: 41.66666667%;
- }
- .col-sm-4 {
- width: 33.33333333%;
- }
- .col-sm-3 {
- width: 25%;
- }
- .col-sm-2 {
- width: 16.66666667%;
- }
- .col-sm-1 {
- width: 8.33333333%;
- }
- .col-sm-pull-12 {
- right: 100%;
- }
- .col-sm-pull-11 {
- right: 91.66666667%;
- }
- .col-sm-pull-10 {
- right: 83.33333333%;
- }
- .col-sm-pull-9 {
- right: 75%;
- }
- .col-sm-pull-8 {
- right: 66.66666667%;
- }
- .col-sm-pull-7 {
- right: 58.33333333%;
- }
- .col-sm-pull-6 {
- right: 50%;
- }
- .col-sm-pull-5 {
- right: 41.66666667%;
- }
- .col-sm-pull-4 {
- right: 33.33333333%;
- }
- .col-sm-pull-3 {
- right: 25%;
- }
- .col-sm-pull-2 {
- right: 16.66666667%;
- }
- .col-sm-pull-1 {
- right: 8.33333333%;
- }
- .col-sm-pull-0 {
- right: auto;
- }
- .col-sm-push-12 {
- left: 100%;
- }
- .col-sm-push-11 {
- left: 91.66666667%;
- }
- .col-sm-push-10 {
- left: 83.33333333%;
- }
- .col-sm-push-9 {
- left: 75%;
- }
- .col-sm-push-8 {
- left: 66.66666667%;
- }
- .col-sm-push-7 {
- left: 58.33333333%;
- }
- .col-sm-push-6 {
- left: 50%;
- }
- .col-sm-push-5 {
- left: 41.66666667%;
- }
- .col-sm-push-4 {
- left: 33.33333333%;
- }
- .col-sm-push-3 {
- left: 25%;
- }
- .col-sm-push-2 {
- left: 16.66666667%;
- }
- .col-sm-push-1 {
- left: 8.33333333%;
- }
- .col-sm-push-0 {
- left: auto;
- }
- .col-sm-offset-12 {
- margin-left: 100%;
- }
- .col-sm-offset-11 {
- margin-left: 91.66666667%;
- }
- .col-sm-offset-10 {
- margin-left: 83.33333333%;
- }
- .col-sm-offset-9 {
- margin-left: 75%;
- }
- .col-sm-offset-8 {
- margin-left: 66.66666667%;
- }
- .col-sm-offset-7 {
- margin-left: 58.33333333%;
- }
- .col-sm-offset-6 {
- margin-left: 50%;
- }
- .col-sm-offset-5 {
- margin-left: 41.66666667%;
- }
- .col-sm-offset-4 {
- margin-left: 33.33333333%;
- }
- .col-sm-offset-3 {
- margin-left: 25%;
- }
- .col-sm-offset-2 {
- margin-left: 16.66666667%;
- }
- .col-sm-offset-1 {
- margin-left: 8.33333333%;
- }
- .col-sm-offset-0 {
- margin-left: 0%;
- }
-}
-@media (min-width: 992px) {
- .col-md-1,
- .col-md-2,
- .col-md-3,
- .col-md-4,
- .col-md-5,
- .col-md-6,
- .col-md-7,
- .col-md-8,
- .col-md-9,
- .col-md-10,
- .col-md-11,
- .col-md-12 {
- float: left;
- }
- .col-md-12 {
- width: 100%;
- }
- .col-md-11 {
- width: 91.66666667%;
- }
- .col-md-10 {
- width: 83.33333333%;
- }
- .col-md-9 {
- width: 75%;
- }
- .col-md-8 {
- width: 66.66666667%;
- }
- .col-md-7 {
- width: 58.33333333%;
- }
- .col-md-6 {
- width: 50%;
- }
- .col-md-5 {
- width: 41.66666667%;
- }
- .col-md-4 {
- width: 33.33333333%;
- }
- .col-md-3 {
- width: 25%;
- }
- .col-md-2 {
- width: 16.66666667%;
- }
- .col-md-1 {
- width: 8.33333333%;
- }
- .col-md-pull-12 {
- right: 100%;
- }
- .col-md-pull-11 {
- right: 91.66666667%;
- }
- .col-md-pull-10 {
- right: 83.33333333%;
- }
- .col-md-pull-9 {
- right: 75%;
- }
- .col-md-pull-8 {
- right: 66.66666667%;
- }
- .col-md-pull-7 {
- right: 58.33333333%;
- }
- .col-md-pull-6 {
- right: 50%;
- }
- .col-md-pull-5 {
- right: 41.66666667%;
- }
- .col-md-pull-4 {
- right: 33.33333333%;
- }
- .col-md-pull-3 {
- right: 25%;
- }
- .col-md-pull-2 {
- right: 16.66666667%;
- }
- .col-md-pull-1 {
- right: 8.33333333%;
- }
- .col-md-pull-0 {
- right: auto;
- }
- .col-md-push-12 {
- left: 100%;
- }
- .col-md-push-11 {
- left: 91.66666667%;
- }
- .col-md-push-10 {
- left: 83.33333333%;
- }
- .col-md-push-9 {
- left: 75%;
- }
- .col-md-push-8 {
- left: 66.66666667%;
- }
- .col-md-push-7 {
- left: 58.33333333%;
- }
- .col-md-push-6 {
- left: 50%;
- }
- .col-md-push-5 {
- left: 41.66666667%;
- }
- .col-md-push-4 {
- left: 33.33333333%;
- }
- .col-md-push-3 {
- left: 25%;
- }
- .col-md-push-2 {
- left: 16.66666667%;
- }
- .col-md-push-1 {
- left: 8.33333333%;
- }
- .col-md-push-0 {
- left: auto;
- }
- .col-md-offset-12 {
- margin-left: 100%;
- }
- .col-md-offset-11 {
- margin-left: 91.66666667%;
- }
- .col-md-offset-10 {
- margin-left: 83.33333333%;
- }
- .col-md-offset-9 {
- margin-left: 75%;
- }
- .col-md-offset-8 {
- margin-left: 66.66666667%;
- }
- .col-md-offset-7 {
- margin-left: 58.33333333%;
- }
- .col-md-offset-6 {
- margin-left: 50%;
- }
- .col-md-offset-5 {
- margin-left: 41.66666667%;
- }
- .col-md-offset-4 {
- margin-left: 33.33333333%;
- }
- .col-md-offset-3 {
- margin-left: 25%;
- }
- .col-md-offset-2 {
- margin-left: 16.66666667%;
- }
- .col-md-offset-1 {
- margin-left: 8.33333333%;
- }
- .col-md-offset-0 {
- margin-left: 0%;
- }
-}
-@media (min-width: 1200px) {
- .col-lg-1,
- .col-lg-2,
- .col-lg-3,
- .col-lg-4,
- .col-lg-5,
- .col-lg-6,
- .col-lg-7,
- .col-lg-8,
- .col-lg-9,
- .col-lg-10,
- .col-lg-11,
- .col-lg-12 {
- float: left;
- }
- .col-lg-12 {
- width: 100%;
- }
- .col-lg-11 {
- width: 91.66666667%;
- }
- .col-lg-10 {
- width: 83.33333333%;
- }
- .col-lg-9 {
- width: 75%;
- }
- .col-lg-8 {
- width: 66.66666667%;
- }
- .col-lg-7 {
- width: 58.33333333%;
- }
- .col-lg-6 {
- width: 50%;
- }
- .col-lg-5 {
- width: 41.66666667%;
- }
- .col-lg-4 {
- width: 33.33333333%;
- }
- .col-lg-3 {
- width: 25%;
- }
- .col-lg-2 {
- width: 16.66666667%;
- }
- .col-lg-1 {
- width: 8.33333333%;
- }
- .col-lg-pull-12 {
- right: 100%;
- }
- .col-lg-pull-11 {
- right: 91.66666667%;
- }
- .col-lg-pull-10 {
- right: 83.33333333%;
- }
- .col-lg-pull-9 {
- right: 75%;
- }
- .col-lg-pull-8 {
- right: 66.66666667%;
- }
- .col-lg-pull-7 {
- right: 58.33333333%;
- }
- .col-lg-pull-6 {
- right: 50%;
- }
- .col-lg-pull-5 {
- right: 41.66666667%;
- }
- .col-lg-pull-4 {
- right: 33.33333333%;
- }
- .col-lg-pull-3 {
- right: 25%;
- }
- .col-lg-pull-2 {
- right: 16.66666667%;
- }
- .col-lg-pull-1 {
- right: 8.33333333%;
- }
- .col-lg-pull-0 {
- right: auto;
- }
- .col-lg-push-12 {
- left: 100%;
- }
- .col-lg-push-11 {
- left: 91.66666667%;
- }
- .col-lg-push-10 {
- left: 83.33333333%;
- }
- .col-lg-push-9 {
- left: 75%;
- }
- .col-lg-push-8 {
- left: 66.66666667%;
- }
- .col-lg-push-7 {
- left: 58.33333333%;
- }
- .col-lg-push-6 {
- left: 50%;
- }
- .col-lg-push-5 {
- left: 41.66666667%;
- }
- .col-lg-push-4 {
- left: 33.33333333%;
- }
- .col-lg-push-3 {
- left: 25%;
- }
- .col-lg-push-2 {
- left: 16.66666667%;
- }
- .col-lg-push-1 {
- left: 8.33333333%;
- }
- .col-lg-push-0 {
- left: auto;
- }
- .col-lg-offset-12 {
- margin-left: 100%;
- }
- .col-lg-offset-11 {
- margin-left: 91.66666667%;
- }
- .col-lg-offset-10 {
- margin-left: 83.33333333%;
- }
- .col-lg-offset-9 {
- margin-left: 75%;
- }
- .col-lg-offset-8 {
- margin-left: 66.66666667%;
- }
- .col-lg-offset-7 {
- margin-left: 58.33333333%;
- }
- .col-lg-offset-6 {
- margin-left: 50%;
- }
- .col-lg-offset-5 {
- margin-left: 41.66666667%;
- }
- .col-lg-offset-4 {
- margin-left: 33.33333333%;
- }
- .col-lg-offset-3 {
- margin-left: 25%;
- }
- .col-lg-offset-2 {
- margin-left: 16.66666667%;
- }
- .col-lg-offset-1 {
- margin-left: 8.33333333%;
- }
- .col-lg-offset-0 {
- margin-left: 0%;
- }
-}
-table {
- background-color: transparent;
-}
-table col[class*="col-"] {
- position: static;
- display: table-column;
- float: none;
-}
-table td[class*="col-"],
-table th[class*="col-"] {
- position: static;
- display: table-cell;
- float: none;
-}
-caption {
- padding-top: 8px;
- padding-bottom: 8px;
- color: #777777;
- text-align: left;
-}
-th {
- text-align: left;
-}
-.table {
- width: 100%;
- max-width: 100%;
- margin-bottom: 20px;
-}
-.table > thead > tr > th,
-.table > tbody > tr > th,
-.table > tfoot > tr > th,
-.table > thead > tr > td,
-.table > tbody > tr > td,
-.table > tfoot > tr > td {
- padding: 8px;
- line-height: 1.42857143;
- vertical-align: top;
- border-top: 1px solid #ddd;
-}
-.table > thead > tr > th {
- vertical-align: bottom;
- border-bottom: 2px solid #ddd;
-}
-.table > caption + thead > tr:first-child > th,
-.table > colgroup + thead > tr:first-child > th,
-.table > thead:first-child > tr:first-child > th,
-.table > caption + thead > tr:first-child > td,
-.table > colgroup + thead > tr:first-child > td,
-.table > thead:first-child > tr:first-child > td {
- border-top: 0;
-}
-.table > tbody + tbody {
- border-top: 2px solid #ddd;
-}
-.table .table {
- background-color: #fff;
-}
-.table-condensed > thead > tr > th,
-.table-condensed > tbody > tr > th,
-.table-condensed > tfoot > tr > th,
-.table-condensed > thead > tr > td,
-.table-condensed > tbody > tr > td,
-.table-condensed > tfoot > tr > td {
- padding: 5px;
-}
-.table-bordered {
- border: 1px solid #ddd;
-}
-.table-bordered > thead > tr > th,
-.table-bordered > tbody > tr > th,
-.table-bordered > tfoot > tr > th,
-.table-bordered > thead > tr > td,
-.table-bordered > tbody > tr > td,
-.table-bordered > tfoot > tr > td {
- border: 1px solid #ddd;
-}
-.table-bordered > thead > tr > th,
-.table-bordered > thead > tr > td {
- border-bottom-width: 2px;
-}
-.table-striped > tbody > tr:nth-of-type(odd) {
- background-color: #f9f9f9;
-}
-.table-hover > tbody > tr:hover {
- background-color: #f5f5f5;
-}
-.table > thead > tr > td.active,
-.table > tbody > tr > td.active,
-.table > tfoot > tr > td.active,
-.table > thead > tr > th.active,
-.table > tbody > tr > th.active,
-.table > tfoot > tr > th.active,
-.table > thead > tr.active > td,
-.table > tbody > tr.active > td,
-.table > tfoot > tr.active > td,
-.table > thead > tr.active > th,
-.table > tbody > tr.active > th,
-.table > tfoot > tr.active > th {
- background-color: #f5f5f5;
-}
-.table-hover > tbody > tr > td.active:hover,
-.table-hover > tbody > tr > th.active:hover,
-.table-hover > tbody > tr.active:hover > td,
-.table-hover > tbody > tr:hover > .active,
-.table-hover > tbody > tr.active:hover > th {
- background-color: #e8e8e8;
-}
-.table > thead > tr > td.success,
-.table > tbody > tr > td.success,
-.table > tfoot > tr > td.success,
-.table > thead > tr > th.success,
-.table > tbody > tr > th.success,
-.table > tfoot > tr > th.success,
-.table > thead > tr.success > td,
-.table > tbody > tr.success > td,
-.table > tfoot > tr.success > td,
-.table > thead > tr.success > th,
-.table > tbody > tr.success > th,
-.table > tfoot > tr.success > th {
- background-color: #dff0d8;
-}
-.table-hover > tbody > tr > td.success:hover,
-.table-hover > tbody > tr > th.success:hover,
-.table-hover > tbody > tr.success:hover > td,
-.table-hover > tbody > tr:hover > .success,
-.table-hover > tbody > tr.success:hover > th {
- background-color: #d0e9c6;
-}
-.table > thead > tr > td.info,
-.table > tbody > tr > td.info,
-.table > tfoot > tr > td.info,
-.table > thead > tr > th.info,
-.table > tbody > tr > th.info,
-.table > tfoot > tr > th.info,
-.table > thead > tr.info > td,
-.table > tbody > tr.info > td,
-.table > tfoot > tr.info > td,
-.table > thead > tr.info > th,
-.table > tbody > tr.info > th,
-.table > tfoot > tr.info > th {
- background-color: #d9edf7;
-}
-.table-hover > tbody > tr > td.info:hover,
-.table-hover > tbody > tr > th.info:hover,
-.table-hover > tbody > tr.info:hover > td,
-.table-hover > tbody > tr:hover > .info,
-.table-hover > tbody > tr.info:hover > th {
- background-color: #c4e3f3;
-}
-.table > thead > tr > td.warning,
-.table > tbody > tr > td.warning,
-.table > tfoot > tr > td.warning,
-.table > thead > tr > th.warning,
-.table > tbody > tr > th.warning,
-.table > tfoot > tr > th.warning,
-.table > thead > tr.warning > td,
-.table > tbody > tr.warning > td,
-.table > tfoot > tr.warning > td,
-.table > thead > tr.warning > th,
-.table > tbody > tr.warning > th,
-.table > tfoot > tr.warning > th {
- background-color: #fcf8e3;
-}
-.table-hover > tbody > tr > td.warning:hover,
-.table-hover > tbody > tr > th.warning:hover,
-.table-hover > tbody > tr.warning:hover > td,
-.table-hover > tbody > tr:hover > .warning,
-.table-hover > tbody > tr.warning:hover > th {
- background-color: #faf2cc;
-}
-.table > thead > tr > td.danger,
-.table > tbody > tr > td.danger,
-.table > tfoot > tr > td.danger,
-.table > thead > tr > th.danger,
-.table > tbody > tr > th.danger,
-.table > tfoot > tr > th.danger,
-.table > thead > tr.danger > td,
-.table > tbody > tr.danger > td,
-.table > tfoot > tr.danger > td,
-.table > thead > tr.danger > th,
-.table > tbody > tr.danger > th,
-.table > tfoot > tr.danger > th {
- background-color: #f2dede;
-}
-.table-hover > tbody > tr > td.danger:hover,
-.table-hover > tbody > tr > th.danger:hover,
-.table-hover > tbody > tr.danger:hover > td,
-.table-hover > tbody > tr:hover > .danger,
-.table-hover > tbody > tr.danger:hover > th {
- background-color: #ebcccc;
-}
-.table-responsive {
- min-height: 0.01%;
- overflow-x: auto;
-}
-@media screen and (max-width: 767px) {
- .table-responsive {
- width: 100%;
- margin-bottom: 15px;
- overflow-y: hidden;
- -ms-overflow-style: -ms-autohiding-scrollbar;
- border: 1px solid #ddd;
- }
- .table-responsive > .table {
- margin-bottom: 0;
- }
- .table-responsive > .table > thead > tr > th,
- .table-responsive > .table > tbody > tr > th,
- .table-responsive > .table > tfoot > tr > th,
- .table-responsive > .table > thead > tr > td,
- .table-responsive > .table > tbody > tr > td,
- .table-responsive > .table > tfoot > tr > td {
- white-space: nowrap;
- }
- .table-responsive > .table-bordered {
- border: 0;
- }
- .table-responsive > .table-bordered > thead > tr > th:first-child,
- .table-responsive > .table-bordered > tbody > tr > th:first-child,
- .table-responsive > .table-bordered > tfoot > tr > th:first-child,
- .table-responsive > .table-bordered > thead > tr > td:first-child,
- .table-responsive > .table-bordered > tbody > tr > td:first-child,
- .table-responsive > .table-bordered > tfoot > tr > td:first-child {
- border-left: 0;
- }
- .table-responsive > .table-bordered > thead > tr > th:last-child,
- .table-responsive > .table-bordered > tbody > tr > th:last-child,
- .table-responsive > .table-bordered > tfoot > tr > th:last-child,
- .table-responsive > .table-bordered > thead > tr > td:last-child,
- .table-responsive > .table-bordered > tbody > tr > td:last-child,
- .table-responsive > .table-bordered > tfoot > tr > td:last-child {
- border-right: 0;
- }
- .table-responsive > .table-bordered > tbody > tr:last-child > th,
- .table-responsive > .table-bordered > tfoot > tr:last-child > th,
- .table-responsive > .table-bordered > tbody > tr:last-child > td,
- .table-responsive > .table-bordered > tfoot > tr:last-child > td {
- border-bottom: 0;
- }
-}
-fieldset {
- min-width: 0;
- padding: 0;
- margin: 0;
- border: 0;
-}
-legend {
- display: block;
- width: 100%;
- padding: 0;
- margin-bottom: 20px;
- font-size: 21px;
- line-height: inherit;
- color: #333333;
- border: 0;
- border-bottom: 1px solid #e5e5e5;
-}
-label {
- display: inline-block;
- max-width: 100%;
- margin-bottom: 5px;
- font-weight: 700;
-}
-input[type="search"] {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
-}
-input[type="radio"],
-input[type="checkbox"] {
- margin: 4px 0 0;
- margin-top: 1px \9;
- line-height: normal;
-}
-input[type="radio"][disabled],
-input[type="checkbox"][disabled],
-input[type="radio"].disabled,
-input[type="checkbox"].disabled,
-fieldset[disabled] input[type="radio"],
-fieldset[disabled] input[type="checkbox"] {
- cursor: not-allowed;
-}
-input[type="file"] {
- display: block;
-}
-input[type="range"] {
- display: block;
- width: 100%;
-}
-select[multiple],
-select[size] {
- height: auto;
-}
-input[type="file"]:focus,
-input[type="radio"]:focus,
-input[type="checkbox"]:focus {
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-output {
- display: block;
- padding-top: 7px;
- font-size: 14px;
- line-height: 1.42857143;
- color: #555555;
-}
-.form-control {
- display: block;
- width: 100%;
- height: 34px;
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857143;
- color: #555555;
- background-color: #fff;
- background-image: none;
- border: 1px solid #ccc;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
- -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
- -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
- transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
- transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
- transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-}
-.form-control:focus {
- border-color: #66afe9;
- outline: 0;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);
-}
-.form-control::-moz-placeholder {
- color: #999;
- opacity: 1;
-}
-.form-control:-ms-input-placeholder {
- color: #999;
-}
-.form-control::-webkit-input-placeholder {
- color: #999;
-}
-.form-control::-ms-expand {
- background-color: transparent;
- border: 0;
-}
-.form-control[disabled],
-.form-control[readonly],
-fieldset[disabled] .form-control {
- background-color: #eeeeee;
- opacity: 1;
-}
-.form-control[disabled],
-fieldset[disabled] .form-control {
- cursor: not-allowed;
-}
-textarea.form-control {
- height: auto;
-}
-@media screen and (-webkit-min-device-pixel-ratio: 0) {
- input[type="date"].form-control,
- input[type="time"].form-control,
- input[type="datetime-local"].form-control,
- input[type="month"].form-control {
- line-height: 34px;
- }
- input[type="date"].input-sm,
- input[type="time"].input-sm,
- input[type="datetime-local"].input-sm,
- input[type="month"].input-sm,
- .input-group-sm input[type="date"],
- .input-group-sm input[type="time"],
- .input-group-sm input[type="datetime-local"],
- .input-group-sm input[type="month"] {
- line-height: 30px;
- }
- input[type="date"].input-lg,
- input[type="time"].input-lg,
- input[type="datetime-local"].input-lg,
- input[type="month"].input-lg,
- .input-group-lg input[type="date"],
- .input-group-lg input[type="time"],
- .input-group-lg input[type="datetime-local"],
- .input-group-lg input[type="month"] {
- line-height: 46px;
- }
-}
-.form-group {
- margin-bottom: 15px;
-}
-.radio,
-.checkbox {
- position: relative;
- display: block;
- margin-top: 10px;
- margin-bottom: 10px;
-}
-.radio.disabled label,
-.checkbox.disabled label,
-fieldset[disabled] .radio label,
-fieldset[disabled] .checkbox label {
- cursor: not-allowed;
-}
-.radio label,
-.checkbox label {
- min-height: 20px;
- padding-left: 20px;
- margin-bottom: 0;
- font-weight: 400;
- cursor: pointer;
-}
-.radio input[type="radio"],
-.radio-inline input[type="radio"],
-.checkbox input[type="checkbox"],
-.checkbox-inline input[type="checkbox"] {
- position: absolute;
- margin-top: 4px \9;
- margin-left: -20px;
-}
-.radio + .radio,
-.checkbox + .checkbox {
- margin-top: -5px;
-}
-.radio-inline,
-.checkbox-inline {
- position: relative;
- display: inline-block;
- padding-left: 20px;
- margin-bottom: 0;
- font-weight: 400;
- vertical-align: middle;
- cursor: pointer;
-}
-.radio-inline.disabled,
-.checkbox-inline.disabled,
-fieldset[disabled] .radio-inline,
-fieldset[disabled] .checkbox-inline {
- cursor: not-allowed;
-}
-.radio-inline + .radio-inline,
-.checkbox-inline + .checkbox-inline {
- margin-top: 0;
- margin-left: 10px;
-}
-.form-control-static {
- min-height: 34px;
- padding-top: 7px;
- padding-bottom: 7px;
- margin-bottom: 0;
-}
-.form-control-static.input-lg,
-.form-control-static.input-sm {
- padding-right: 0;
- padding-left: 0;
-}
-.input-sm {
- height: 30px;
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-select.input-sm {
- height: 30px;
- line-height: 30px;
-}
-textarea.input-sm,
-select[multiple].input-sm {
- height: auto;
-}
-.form-group-sm .form-control {
- height: 30px;
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-.form-group-sm select.form-control {
- height: 30px;
- line-height: 30px;
-}
-.form-group-sm textarea.form-control,
-.form-group-sm select[multiple].form-control {
- height: auto;
-}
-.form-group-sm .form-control-static {
- height: 30px;
- min-height: 32px;
- padding: 6px 10px;
- font-size: 12px;
- line-height: 1.5;
-}
-.input-lg {
- height: 46px;
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.3333333;
- border-radius: 6px;
-}
-select.input-lg {
- height: 46px;
- line-height: 46px;
-}
-textarea.input-lg,
-select[multiple].input-lg {
- height: auto;
-}
-.form-group-lg .form-control {
- height: 46px;
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.3333333;
- border-radius: 6px;
-}
-.form-group-lg select.form-control {
- height: 46px;
- line-height: 46px;
-}
-.form-group-lg textarea.form-control,
-.form-group-lg select[multiple].form-control {
- height: auto;
-}
-.form-group-lg .form-control-static {
- height: 46px;
- min-height: 38px;
- padding: 11px 16px;
- font-size: 18px;
- line-height: 1.3333333;
-}
-.has-feedback {
- position: relative;
-}
-.has-feedback .form-control {
- padding-right: 42.5px;
-}
-.form-control-feedback {
- position: absolute;
- top: 0;
- right: 0;
- z-index: 2;
- display: block;
- width: 34px;
- height: 34px;
- line-height: 34px;
- text-align: center;
- pointer-events: none;
-}
-.input-lg + .form-control-feedback,
-.input-group-lg + .form-control-feedback,
-.form-group-lg .form-control + .form-control-feedback {
- width: 46px;
- height: 46px;
- line-height: 46px;
-}
-.input-sm + .form-control-feedback,
-.input-group-sm + .form-control-feedback,
-.form-group-sm .form-control + .form-control-feedback {
- width: 30px;
- height: 30px;
- line-height: 30px;
-}
-.has-success .help-block,
-.has-success .control-label,
-.has-success .radio,
-.has-success .checkbox,
-.has-success .radio-inline,
-.has-success .checkbox-inline,
-.has-success.radio label,
-.has-success.checkbox label,
-.has-success.radio-inline label,
-.has-success.checkbox-inline label {
- color: #3c763d;
-}
-.has-success .form-control {
- border-color: #3c763d;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-.has-success .form-control:focus {
- border-color: #2b542c;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
-}
-.has-success .input-group-addon {
- color: #3c763d;
- background-color: #dff0d8;
- border-color: #3c763d;
-}
-.has-success .form-control-feedback {
- color: #3c763d;
-}
-.has-warning .help-block,
-.has-warning .control-label,
-.has-warning .radio,
-.has-warning .checkbox,
-.has-warning .radio-inline,
-.has-warning .checkbox-inline,
-.has-warning.radio label,
-.has-warning.checkbox label,
-.has-warning.radio-inline label,
-.has-warning.checkbox-inline label {
- color: #8a6d3b;
-}
-.has-warning .form-control {
- border-color: #8a6d3b;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-.has-warning .form-control:focus {
- border-color: #66512c;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
-}
-.has-warning .input-group-addon {
- color: #8a6d3b;
- background-color: #fcf8e3;
- border-color: #8a6d3b;
-}
-.has-warning .form-control-feedback {
- color: #8a6d3b;
-}
-.has-error .help-block,
-.has-error .control-label,
-.has-error .radio,
-.has-error .checkbox,
-.has-error .radio-inline,
-.has-error .checkbox-inline,
-.has-error.radio label,
-.has-error.checkbox label,
-.has-error.radio-inline label,
-.has-error.checkbox-inline label {
- color: #a94442;
-}
-.has-error .form-control {
- border-color: #a94442;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-.has-error .form-control:focus {
- border-color: #843534;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
-}
-.has-error .input-group-addon {
- color: #a94442;
- background-color: #f2dede;
- border-color: #a94442;
-}
-.has-error .form-control-feedback {
- color: #a94442;
-}
-.has-feedback label ~ .form-control-feedback {
- top: 25px;
-}
-.has-feedback label.sr-only ~ .form-control-feedback {
- top: 0;
-}
-.help-block {
- display: block;
- margin-top: 5px;
- margin-bottom: 10px;
- color: #737373;
-}
-@media (min-width: 768px) {
- .form-inline .form-group {
- display: inline-block;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .form-inline .form-control {
- display: inline-block;
- width: auto;
- vertical-align: middle;
- }
- .form-inline .form-control-static {
- display: inline-block;
- }
- .form-inline .input-group {
- display: inline-table;
- vertical-align: middle;
- }
- .form-inline .input-group .input-group-addon,
- .form-inline .input-group .input-group-btn,
- .form-inline .input-group .form-control {
- width: auto;
- }
- .form-inline .input-group > .form-control {
- width: 100%;
- }
- .form-inline .control-label {
- margin-bottom: 0;
- vertical-align: middle;
- }
- .form-inline .radio,
- .form-inline .checkbox {
- display: inline-block;
- margin-top: 0;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .form-inline .radio label,
- .form-inline .checkbox label {
- padding-left: 0;
- }
- .form-inline .radio input[type="radio"],
- .form-inline .checkbox input[type="checkbox"] {
- position: relative;
- margin-left: 0;
- }
- .form-inline .has-feedback .form-control-feedback {
- top: 0;
- }
-}
-.form-horizontal .radio,
-.form-horizontal .checkbox,
-.form-horizontal .radio-inline,
-.form-horizontal .checkbox-inline {
- padding-top: 7px;
- margin-top: 0;
- margin-bottom: 0;
-}
-.form-horizontal .radio,
-.form-horizontal .checkbox {
- min-height: 27px;
-}
-.form-horizontal .form-group {
- margin-right: -15px;
- margin-left: -15px;
-}
-@media (min-width: 768px) {
- .form-horizontal .control-label {
- padding-top: 7px;
- margin-bottom: 0;
- text-align: right;
- }
-}
-.form-horizontal .has-feedback .form-control-feedback {
- right: 15px;
-}
-@media (min-width: 768px) {
- .form-horizontal .form-group-lg .control-label {
- padding-top: 11px;
- font-size: 18px;
- }
-}
-@media (min-width: 768px) {
- .form-horizontal .form-group-sm .control-label {
- padding-top: 6px;
- font-size: 12px;
- }
-}
-.btn {
- display: inline-block;
- margin-bottom: 0;
- font-weight: normal;
- text-align: center;
- white-space: nowrap;
- vertical-align: middle;
- -ms-touch-action: manipulation;
- touch-action: manipulation;
- cursor: pointer;
- background-image: none;
- border: 1px solid transparent;
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857143;
- border-radius: 4px;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.btn:focus,
-.btn:active:focus,
-.btn.active:focus,
-.btn.focus,
-.btn:active.focus,
-.btn.active.focus {
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-.btn:hover,
-.btn:focus,
-.btn.focus {
- color: #333;
- text-decoration: none;
-}
-.btn:active,
-.btn.active {
- background-image: none;
- outline: 0;
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-.btn.disabled,
-.btn[disabled],
-fieldset[disabled] .btn {
- cursor: not-allowed;
- filter: alpha(opacity=65);
- opacity: 0.65;
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-a.btn.disabled,
-fieldset[disabled] a.btn {
- pointer-events: none;
-}
-.btn-default {
- color: #333;
- background-color: #fff;
- border-color: #ccc;
-}
-.btn-default:focus,
-.btn-default.focus {
- color: #333;
- background-color: #e6e6e6;
- border-color: #8c8c8c;
-}
-.btn-default:hover {
- color: #333;
- background-color: #e6e6e6;
- border-color: #adadad;
-}
-.btn-default:active,
-.btn-default.active,
-.open > .dropdown-toggle.btn-default {
- color: #333;
- background-color: #e6e6e6;
- background-image: none;
- border-color: #adadad;
-}
-.btn-default:active:hover,
-.btn-default.active:hover,
-.open > .dropdown-toggle.btn-default:hover,
-.btn-default:active:focus,
-.btn-default.active:focus,
-.open > .dropdown-toggle.btn-default:focus,
-.btn-default:active.focus,
-.btn-default.active.focus,
-.open > .dropdown-toggle.btn-default.focus {
- color: #333;
- background-color: #d4d4d4;
- border-color: #8c8c8c;
-}
-.btn-default.disabled:hover,
-.btn-default[disabled]:hover,
-fieldset[disabled] .btn-default:hover,
-.btn-default.disabled:focus,
-.btn-default[disabled]:focus,
-fieldset[disabled] .btn-default:focus,
-.btn-default.disabled.focus,
-.btn-default[disabled].focus,
-fieldset[disabled] .btn-default.focus {
- background-color: #fff;
- border-color: #ccc;
-}
-.btn-default .badge {
- color: #fff;
- background-color: #333;
-}
-.btn-primary {
- color: #fff;
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.btn-primary:focus,
-.btn-primary.focus {
- color: #fff;
- background-color: #286090;
- border-color: #122b40;
-}
-.btn-primary:hover {
- color: #fff;
- background-color: #286090;
- border-color: #204d74;
-}
-.btn-primary:active,
-.btn-primary.active,
-.open > .dropdown-toggle.btn-primary {
- color: #fff;
- background-color: #286090;
- background-image: none;
- border-color: #204d74;
-}
-.btn-primary:active:hover,
-.btn-primary.active:hover,
-.open > .dropdown-toggle.btn-primary:hover,
-.btn-primary:active:focus,
-.btn-primary.active:focus,
-.open > .dropdown-toggle.btn-primary:focus,
-.btn-primary:active.focus,
-.btn-primary.active.focus,
-.open > .dropdown-toggle.btn-primary.focus {
- color: #fff;
- background-color: #204d74;
- border-color: #122b40;
-}
-.btn-primary.disabled:hover,
-.btn-primary[disabled]:hover,
-fieldset[disabled] .btn-primary:hover,
-.btn-primary.disabled:focus,
-.btn-primary[disabled]:focus,
-fieldset[disabled] .btn-primary:focus,
-.btn-primary.disabled.focus,
-.btn-primary[disabled].focus,
-fieldset[disabled] .btn-primary.focus {
- background-color: #337ab7;
- border-color: #2e6da4;
-}
-.btn-primary .badge {
- color: #337ab7;
- background-color: #fff;
-}
-.btn-success {
- color: #fff;
- background-color: #5cb85c;
- border-color: #4cae4c;
-}
-.btn-success:focus,
-.btn-success.focus {
- color: #fff;
- background-color: #449d44;
- border-color: #255625;
-}
-.btn-success:hover {
- color: #fff;
- background-color: #449d44;
- border-color: #398439;
-}
-.btn-success:active,
-.btn-success.active,
-.open > .dropdown-toggle.btn-success {
- color: #fff;
- background-color: #449d44;
- background-image: none;
- border-color: #398439;
-}
-.btn-success:active:hover,
-.btn-success.active:hover,
-.open > .dropdown-toggle.btn-success:hover,
-.btn-success:active:focus,
-.btn-success.active:focus,
-.open > .dropdown-toggle.btn-success:focus,
-.btn-success:active.focus,
-.btn-success.active.focus,
-.open > .dropdown-toggle.btn-success.focus {
- color: #fff;
- background-color: #398439;
- border-color: #255625;
-}
-.btn-success.disabled:hover,
-.btn-success[disabled]:hover,
-fieldset[disabled] .btn-success:hover,
-.btn-success.disabled:focus,
-.btn-success[disabled]:focus,
-fieldset[disabled] .btn-success:focus,
-.btn-success.disabled.focus,
-.btn-success[disabled].focus,
-fieldset[disabled] .btn-success.focus {
- background-color: #5cb85c;
- border-color: #4cae4c;
-}
-.btn-success .badge {
- color: #5cb85c;
- background-color: #fff;
-}
-.btn-info {
- color: #fff;
- background-color: #5bc0de;
- border-color: #46b8da;
-}
-.btn-info:focus,
-.btn-info.focus {
- color: #fff;
- background-color: #31b0d5;
- border-color: #1b6d85;
-}
-.btn-info:hover {
- color: #fff;
- background-color: #31b0d5;
- border-color: #269abc;
-}
-.btn-info:active,
-.btn-info.active,
-.open > .dropdown-toggle.btn-info {
- color: #fff;
- background-color: #31b0d5;
- background-image: none;
- border-color: #269abc;
-}
-.btn-info:active:hover,
-.btn-info.active:hover,
-.open > .dropdown-toggle.btn-info:hover,
-.btn-info:active:focus,
-.btn-info.active:focus,
-.open > .dropdown-toggle.btn-info:focus,
-.btn-info:active.focus,
-.btn-info.active.focus,
-.open > .dropdown-toggle.btn-info.focus {
- color: #fff;
- background-color: #269abc;
- border-color: #1b6d85;
-}
-.btn-info.disabled:hover,
-.btn-info[disabled]:hover,
-fieldset[disabled] .btn-info:hover,
-.btn-info.disabled:focus,
-.btn-info[disabled]:focus,
-fieldset[disabled] .btn-info:focus,
-.btn-info.disabled.focus,
-.btn-info[disabled].focus,
-fieldset[disabled] .btn-info.focus {
- background-color: #5bc0de;
- border-color: #46b8da;
-}
-.btn-info .badge {
- color: #5bc0de;
- background-color: #fff;
-}
-.btn-warning {
- color: #fff;
- background-color: #f0ad4e;
- border-color: #eea236;
-}
-.btn-warning:focus,
-.btn-warning.focus {
- color: #fff;
- background-color: #ec971f;
- border-color: #985f0d;
-}
-.btn-warning:hover {
- color: #fff;
- background-color: #ec971f;
- border-color: #d58512;
-}
-.btn-warning:active,
-.btn-warning.active,
-.open > .dropdown-toggle.btn-warning {
- color: #fff;
- background-color: #ec971f;
- background-image: none;
- border-color: #d58512;
-}
-.btn-warning:active:hover,
-.btn-warning.active:hover,
-.open > .dropdown-toggle.btn-warning:hover,
-.btn-warning:active:focus,
-.btn-warning.active:focus,
-.open > .dropdown-toggle.btn-warning:focus,
-.btn-warning:active.focus,
-.btn-warning.active.focus,
-.open > .dropdown-toggle.btn-warning.focus {
- color: #fff;
- background-color: #d58512;
- border-color: #985f0d;
-}
-.btn-warning.disabled:hover,
-.btn-warning[disabled]:hover,
-fieldset[disabled] .btn-warning:hover,
-.btn-warning.disabled:focus,
-.btn-warning[disabled]:focus,
-fieldset[disabled] .btn-warning:focus,
-.btn-warning.disabled.focus,
-.btn-warning[disabled].focus,
-fieldset[disabled] .btn-warning.focus {
- background-color: #f0ad4e;
- border-color: #eea236;
-}
-.btn-warning .badge {
- color: #f0ad4e;
- background-color: #fff;
-}
-.btn-danger {
- color: #fff;
- background-color: #d9534f;
- border-color: #d43f3a;
-}
-.btn-danger:focus,
-.btn-danger.focus {
- color: #fff;
- background-color: #c9302c;
- border-color: #761c19;
-}
-.btn-danger:hover {
- color: #fff;
- background-color: #c9302c;
- border-color: #ac2925;
-}
-.btn-danger:active,
-.btn-danger.active,
-.open > .dropdown-toggle.btn-danger {
- color: #fff;
- background-color: #c9302c;
- background-image: none;
- border-color: #ac2925;
-}
-.btn-danger:active:hover,
-.btn-danger.active:hover,
-.open > .dropdown-toggle.btn-danger:hover,
-.btn-danger:active:focus,
-.btn-danger.active:focus,
-.open > .dropdown-toggle.btn-danger:focus,
-.btn-danger:active.focus,
-.btn-danger.active.focus,
-.open > .dropdown-toggle.btn-danger.focus {
- color: #fff;
- background-color: #ac2925;
- border-color: #761c19;
-}
-.btn-danger.disabled:hover,
-.btn-danger[disabled]:hover,
-fieldset[disabled] .btn-danger:hover,
-.btn-danger.disabled:focus,
-.btn-danger[disabled]:focus,
-fieldset[disabled] .btn-danger:focus,
-.btn-danger.disabled.focus,
-.btn-danger[disabled].focus,
-fieldset[disabled] .btn-danger.focus {
- background-color: #d9534f;
- border-color: #d43f3a;
-}
-.btn-danger .badge {
- color: #d9534f;
- background-color: #fff;
-}
-.btn-link {
- font-weight: 400;
- color: #337ab7;
- border-radius: 0;
-}
-.btn-link,
-.btn-link:active,
-.btn-link.active,
-.btn-link[disabled],
-fieldset[disabled] .btn-link {
- background-color: transparent;
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.btn-link,
-.btn-link:hover,
-.btn-link:focus,
-.btn-link:active {
- border-color: transparent;
-}
-.btn-link:hover,
-.btn-link:focus {
- color: #23527c;
- text-decoration: underline;
- background-color: transparent;
-}
-.btn-link[disabled]:hover,
-fieldset[disabled] .btn-link:hover,
-.btn-link[disabled]:focus,
-fieldset[disabled] .btn-link:focus {
- color: #777777;
- text-decoration: none;
-}
-.btn-lg,
-.btn-group-lg > .btn {
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.3333333;
- border-radius: 6px;
-}
-.btn-sm,
-.btn-group-sm > .btn {
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-.btn-xs,
-.btn-group-xs > .btn {
- padding: 1px 5px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-.btn-block {
- display: block;
- width: 100%;
-}
-.btn-block + .btn-block {
- margin-top: 5px;
-}
-input[type="submit"].btn-block,
-input[type="reset"].btn-block,
-input[type="button"].btn-block {
- width: 100%;
-}
-.fade {
- opacity: 0;
- -webkit-transition: opacity 0.15s linear;
- -o-transition: opacity 0.15s linear;
- transition: opacity 0.15s linear;
-}
-.fade.in {
- opacity: 1;
-}
-.collapse {
- display: none;
-}
-.collapse.in {
- display: block;
-}
-tr.collapse.in {
- display: table-row;
-}
-tbody.collapse.in {
- display: table-row-group;
-}
-.collapsing {
- position: relative;
- height: 0;
- overflow: hidden;
- -webkit-transition-property: height, visibility;
- -o-transition-property: height, visibility;
- transition-property: height, visibility;
- -webkit-transition-duration: 0.35s;
- -o-transition-duration: 0.35s;
- transition-duration: 0.35s;
- -webkit-transition-timing-function: ease;
- -o-transition-timing-function: ease;
- transition-timing-function: ease;
-}
-.caret {
- display: inline-block;
- width: 0;
- height: 0;
- margin-left: 2px;
- vertical-align: middle;
- border-top: 4px dashed;
- border-top: 4px solid \9;
- border-right: 4px solid transparent;
- border-left: 4px solid transparent;
-}
-.dropup,
-.dropdown {
- position: relative;
-}
-.dropdown-toggle:focus {
- outline: 0;
-}
-.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: 1000;
- display: none;
- float: left;
- min-width: 160px;
- padding: 5px 0;
- margin: 2px 0 0;
- font-size: 14px;
- text-align: left;
- list-style: none;
- background-color: #fff;
- background-clip: padding-box;
- border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, 0.15);
- border-radius: 4px;
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
-}
-.dropdown-menu.pull-right {
- right: 0;
- left: auto;
-}
-.dropdown-menu .divider {
- height: 1px;
- margin: 9px 0;
- overflow: hidden;
- background-color: #e5e5e5;
-}
-.dropdown-menu > li > a {
- display: block;
- padding: 3px 20px;
- clear: both;
- font-weight: 400;
- line-height: 1.42857143;
- color: #333333;
- white-space: nowrap;
-}
-.dropdown-menu > li > a:hover,
-.dropdown-menu > li > a:focus {
- color: #262626;
- text-decoration: none;
- background-color: #f5f5f5;
-}
-.dropdown-menu > .active > a,
-.dropdown-menu > .active > a:hover,
-.dropdown-menu > .active > a:focus {
- color: #fff;
- text-decoration: none;
- background-color: #337ab7;
- outline: 0;
-}
-.dropdown-menu > .disabled > a,
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- color: #777777;
-}
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- text-decoration: none;
- cursor: not-allowed;
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.open > .dropdown-menu {
- display: block;
-}
-.open > a {
- outline: 0;
-}
-.dropdown-menu-right {
- right: 0;
- left: auto;
-}
-.dropdown-menu-left {
- right: auto;
- left: 0;
-}
-.dropdown-header {
- display: block;
- padding: 3px 20px;
- font-size: 12px;
- line-height: 1.42857143;
- color: #777777;
- white-space: nowrap;
-}
-.dropdown-backdrop {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 990;
-}
-.pull-right > .dropdown-menu {
- right: 0;
- left: auto;
-}
-.dropup .caret,
-.navbar-fixed-bottom .dropdown .caret {
- content: "";
- border-top: 0;
- border-bottom: 4px dashed;
- border-bottom: 4px solid \9;
-}
-.dropup .dropdown-menu,
-.navbar-fixed-bottom .dropdown .dropdown-menu {
- top: auto;
- bottom: 100%;
- margin-bottom: 2px;
-}
-@media (min-width: 768px) {
- .navbar-right .dropdown-menu {
- right: 0;
- left: auto;
- }
- .navbar-right .dropdown-menu-left {
- right: auto;
- left: 0;
- }
-}
-.btn-group,
-.btn-group-vertical {
- position: relative;
- display: inline-block;
- vertical-align: middle;
-}
-.btn-group > .btn,
-.btn-group-vertical > .btn {
- position: relative;
- float: left;
-}
-.btn-group > .btn:hover,
-.btn-group-vertical > .btn:hover,
-.btn-group > .btn:focus,
-.btn-group-vertical > .btn:focus,
-.btn-group > .btn:active,
-.btn-group-vertical > .btn:active,
-.btn-group > .btn.active,
-.btn-group-vertical > .btn.active {
- z-index: 2;
-}
-.btn-group .btn + .btn,
-.btn-group .btn + .btn-group,
-.btn-group .btn-group + .btn,
-.btn-group .btn-group + .btn-group {
- margin-left: -1px;
-}
-.btn-toolbar {
- margin-left: -5px;
-}
-.btn-toolbar .btn,
-.btn-toolbar .btn-group,
-.btn-toolbar .input-group {
- float: left;
-}
-.btn-toolbar > .btn,
-.btn-toolbar > .btn-group,
-.btn-toolbar > .input-group {
- margin-left: 5px;
-}
-.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
- border-radius: 0;
-}
-.btn-group > .btn:first-child {
- margin-left: 0;
-}
-.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-.btn-group > .btn:last-child:not(:first-child),
-.btn-group > .dropdown-toggle:not(:first-child) {
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
-}
-.btn-group > .btn-group {
- float: left;
-}
-.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
- border-radius: 0;
-}
-.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
-.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
-}
-.btn-group .dropdown-toggle:active,
-.btn-group.open .dropdown-toggle {
- outline: 0;
-}
-.btn-group > .btn + .dropdown-toggle {
- padding-right: 8px;
- padding-left: 8px;
-}
-.btn-group > .btn-lg + .dropdown-toggle {
- padding-right: 12px;
- padding-left: 12px;
-}
-.btn-group.open .dropdown-toggle {
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-.btn-group.open .dropdown-toggle.btn-link {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.btn .caret {
- margin-left: 0;
-}
-.btn-lg .caret {
- border-width: 5px 5px 0;
- border-bottom-width: 0;
-}
-.dropup .btn-lg .caret {
- border-width: 0 5px 5px;
-}
-.btn-group-vertical > .btn,
-.btn-group-vertical > .btn-group,
-.btn-group-vertical > .btn-group > .btn {
- display: block;
- float: none;
- width: 100%;
- max-width: 100%;
-}
-.btn-group-vertical > .btn-group > .btn {
- float: none;
-}
-.btn-group-vertical > .btn + .btn,
-.btn-group-vertical > .btn + .btn-group,
-.btn-group-vertical > .btn-group + .btn,
-.btn-group-vertical > .btn-group + .btn-group {
- margin-top: -1px;
- margin-left: 0;
-}
-.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
- border-radius: 0;
-}
-.btn-group-vertical > .btn:first-child:not(:last-child) {
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-.btn-group-vertical > .btn:last-child:not(:first-child) {
- border-top-left-radius: 0;
- border-top-right-radius: 0;
- border-bottom-right-radius: 4px;
- border-bottom-left-radius: 4px;
-}
-.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
- border-radius: 0;
-}
-.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
-.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
- border-top-left-radius: 0;
- border-top-right-radius: 0;
-}
-.btn-group-justified {
- display: table;
- width: 100%;
- table-layout: fixed;
- border-collapse: separate;
-}
-.btn-group-justified > .btn,
-.btn-group-justified > .btn-group {
- display: table-cell;
- float: none;
- width: 1%;
-}
-.btn-group-justified > .btn-group .btn {
- width: 100%;
-}
-.btn-group-justified > .btn-group .dropdown-menu {
- left: auto;
-}
-[data-toggle="buttons"] > .btn input[type="radio"],
-[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
-[data-toggle="buttons"] > .btn input[type="checkbox"],
-[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
- position: absolute;
- clip: rect(0, 0, 0, 0);
- pointer-events: none;
-}
-.input-group {
- position: relative;
- display: table;
- border-collapse: separate;
-}
-.input-group[class*="col-"] {
- float: none;
- padding-right: 0;
- padding-left: 0;
-}
-.input-group .form-control {
- position: relative;
- z-index: 2;
- float: left;
- width: 100%;
- margin-bottom: 0;
-}
-.input-group .form-control:focus {
- z-index: 3;
-}
-.input-group-lg > .form-control,
-.input-group-lg > .input-group-addon,
-.input-group-lg > .input-group-btn > .btn {
- height: 46px;
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.3333333;
- border-radius: 6px;
-}
-select.input-group-lg > .form-control,
-select.input-group-lg > .input-group-addon,
-select.input-group-lg > .input-group-btn > .btn {
- height: 46px;
- line-height: 46px;
-}
-textarea.input-group-lg > .form-control,
-textarea.input-group-lg > .input-group-addon,
-textarea.input-group-lg > .input-group-btn > .btn,
-select[multiple].input-group-lg > .form-control,
-select[multiple].input-group-lg > .input-group-addon,
-select[multiple].input-group-lg > .input-group-btn > .btn {
- height: auto;
-}
-.input-group-sm > .form-control,
-.input-group-sm > .input-group-addon,
-.input-group-sm > .input-group-btn > .btn {
- height: 30px;
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-select.input-group-sm > .form-control,
-select.input-group-sm > .input-group-addon,
-select.input-group-sm > .input-group-btn > .btn {
- height: 30px;
- line-height: 30px;
-}
-textarea.input-group-sm > .form-control,
-textarea.input-group-sm > .input-group-addon,
-textarea.input-group-sm > .input-group-btn > .btn,
-select[multiple].input-group-sm > .form-control,
-select[multiple].input-group-sm > .input-group-addon,
-select[multiple].input-group-sm > .input-group-btn > .btn {
- height: auto;
-}
-.input-group-addon,
-.input-group-btn,
-.input-group .form-control {
- display: table-cell;
-}
-.input-group-addon:not(:first-child):not(:last-child),
-.input-group-btn:not(:first-child):not(:last-child),
-.input-group .form-control:not(:first-child):not(:last-child) {
- border-radius: 0;
-}
-.input-group-addon,
-.input-group-btn {
- width: 1%;
- white-space: nowrap;
- vertical-align: middle;
-}
-.input-group-addon {
- padding: 6px 12px;
- font-size: 14px;
- font-weight: 400;
- line-height: 1;
- color: #555555;
- text-align: center;
- background-color: #eeeeee;
- border: 1px solid #ccc;
- border-radius: 4px;
-}
-.input-group-addon.input-sm {
- padding: 5px 10px;
- font-size: 12px;
- border-radius: 3px;
-}
-.input-group-addon.input-lg {
- padding: 10px 16px;
- font-size: 18px;
- border-radius: 6px;
-}
-.input-group-addon input[type="radio"],
-.input-group-addon input[type="checkbox"] {
- margin-top: 0;
-}
-.input-group .form-control:first-child,
-.input-group-addon:first-child,
-.input-group-btn:first-child > .btn,
-.input-group-btn:first-child > .btn-group > .btn,
-.input-group-btn:first-child > .dropdown-toggle,
-.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
-.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-.input-group-addon:first-child {
- border-right: 0;
-}
-.input-group .form-control:last-child,
-.input-group-addon:last-child,
-.input-group-btn:last-child > .btn,
-.input-group-btn:last-child > .btn-group > .btn,
-.input-group-btn:last-child > .dropdown-toggle,
-.input-group-btn:first-child > .btn:not(:first-child),
-.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
-}
-.input-group-addon:last-child {
- border-left: 0;
-}
-.input-group-btn {
- position: relative;
- font-size: 0;
- white-space: nowrap;
-}
-.input-group-btn > .btn {
- position: relative;
-}
-.input-group-btn > .btn + .btn {
- margin-left: -1px;
-}
-.input-group-btn > .btn:hover,
-.input-group-btn > .btn:focus,
-.input-group-btn > .btn:active {
- z-index: 2;
-}
-.input-group-btn:first-child > .btn,
-.input-group-btn:first-child > .btn-group {
- margin-right: -1px;
-}
-.input-group-btn:last-child > .btn,
-.input-group-btn:last-child > .btn-group {
- z-index: 2;
- margin-left: -1px;
-}
-.nav {
- padding-left: 0;
- margin-bottom: 0;
- list-style: none;
-}
-.nav > li {
- position: relative;
- display: block;
-}
-.nav > li > a {
- position: relative;
- display: block;
- padding: 10px 15px;
-}
-.nav > li > a:hover,
-.nav > li > a:focus {
- text-decoration: none;
- background-color: #eeeeee;
-}
-.nav > li.disabled > a {
- color: #777777;
-}
-.nav > li.disabled > a:hover,
-.nav > li.disabled > a:focus {
- color: #777777;
- text-decoration: none;
- cursor: not-allowed;
- background-color: transparent;
-}
-.nav .open > a,
-.nav .open > a:hover,
-.nav .open > a:focus {
- background-color: #eeeeee;
- border-color: #337ab7;
-}
-.nav .nav-divider {
- height: 1px;
- margin: 9px 0;
- overflow: hidden;
- background-color: #e5e5e5;
-}
-.nav > li > a > img {
- max-width: none;
-}
-.nav-tabs {
- border-bottom: 1px solid #ddd;
-}
-.nav-tabs > li {
- float: left;
- margin-bottom: -1px;
-}
-.nav-tabs > li > a {
- margin-right: 2px;
- line-height: 1.42857143;
- border: 1px solid transparent;
- border-radius: 4px 4px 0 0;
-}
-.nav-tabs > li > a:hover {
- border-color: #eeeeee #eeeeee #ddd;
-}
-.nav-tabs > li.active > a,
-.nav-tabs > li.active > a:hover,
-.nav-tabs > li.active > a:focus {
- color: #555555;
- cursor: default;
- background-color: #fff;
- border: 1px solid #ddd;
- border-bottom-color: transparent;
-}
-.nav-tabs.nav-justified {
- width: 100%;
- border-bottom: 0;
-}
-.nav-tabs.nav-justified > li {
- float: none;
-}
-.nav-tabs.nav-justified > li > a {
- margin-bottom: 5px;
- text-align: center;
-}
-.nav-tabs.nav-justified > .dropdown .dropdown-menu {
- top: auto;
- left: auto;
-}
-@media (min-width: 768px) {
- .nav-tabs.nav-justified > li {
- display: table-cell;
- width: 1%;
- }
- .nav-tabs.nav-justified > li > a {
- margin-bottom: 0;
- }
-}
-.nav-tabs.nav-justified > li > a {
- margin-right: 0;
- border-radius: 4px;
-}
-.nav-tabs.nav-justified > .active > a,
-.nav-tabs.nav-justified > .active > a:hover,
-.nav-tabs.nav-justified > .active > a:focus {
- border: 1px solid #ddd;
-}
-@media (min-width: 768px) {
- .nav-tabs.nav-justified > li > a {
- border-bottom: 1px solid #ddd;
- border-radius: 4px 4px 0 0;
- }
- .nav-tabs.nav-justified > .active > a,
- .nav-tabs.nav-justified > .active > a:hover,
- .nav-tabs.nav-justified > .active > a:focus {
- border-bottom-color: #fff;
- }
-}
-.nav-pills > li {
- float: left;
-}
-.nav-pills > li > a {
- border-radius: 4px;
-}
-.nav-pills > li + li {
- margin-left: 2px;
-}
-.nav-pills > li.active > a,
-.nav-pills > li.active > a:hover,
-.nav-pills > li.active > a:focus {
- color: #fff;
- background-color: #337ab7;
-}
-.nav-stacked > li {
- float: none;
-}
-.nav-stacked > li + li {
- margin-top: 2px;
- margin-left: 0;
-}
-.nav-justified {
- width: 100%;
-}
-.nav-justified > li {
- float: none;
-}
-.nav-justified > li > a {
- margin-bottom: 5px;
- text-align: center;
-}
-.nav-justified > .dropdown .dropdown-menu {
- top: auto;
- left: auto;
-}
-@media (min-width: 768px) {
- .nav-justified > li {
- display: table-cell;
- width: 1%;
- }
- .nav-justified > li > a {
- margin-bottom: 0;
- }
-}
-.nav-tabs-justified {
- border-bottom: 0;
-}
-.nav-tabs-justified > li > a {
- margin-right: 0;
- border-radius: 4px;
-}
-.nav-tabs-justified > .active > a,
-.nav-tabs-justified > .active > a:hover,
-.nav-tabs-justified > .active > a:focus {
- border: 1px solid #ddd;
-}
-@media (min-width: 768px) {
- .nav-tabs-justified > li > a {
- border-bottom: 1px solid #ddd;
- border-radius: 4px 4px 0 0;
- }
- .nav-tabs-justified > .active > a,
- .nav-tabs-justified > .active > a:hover,
- .nav-tabs-justified > .active > a:focus {
- border-bottom-color: #fff;
- }
-}
-.tab-content > .tab-pane {
- display: none;
-}
-.tab-content > .active {
- display: block;
-}
-.nav-tabs .dropdown-menu {
- margin-top: -1px;
- border-top-left-radius: 0;
- border-top-right-radius: 0;
-}
-.navbar {
- position: relative;
- min-height: 50px;
- margin-bottom: 20px;
- border: 1px solid transparent;
-}
-@media (min-width: 768px) {
- .navbar {
- border-radius: 4px;
- }
-}
-@media (min-width: 768px) {
- .navbar-header {
- float: left;
- }
-}
-.navbar-collapse {
- padding-right: 15px;
- padding-left: 15px;
- overflow-x: visible;
- border-top: 1px solid transparent;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
- -webkit-overflow-scrolling: touch;
-}
-.navbar-collapse.in {
- overflow-y: auto;
-}
-@media (min-width: 768px) {
- .navbar-collapse {
- width: auto;
- border-top: 0;
- -webkit-box-shadow: none;
- box-shadow: none;
- }
- .navbar-collapse.collapse {
- display: block !important;
- height: auto !important;
- padding-bottom: 0;
- overflow: visible !important;
- }
- .navbar-collapse.in {
- overflow-y: visible;
- }
- .navbar-fixed-top .navbar-collapse,
- .navbar-static-top .navbar-collapse,
- .navbar-fixed-bottom .navbar-collapse {
- padding-right: 0;
- padding-left: 0;
- }
-}
-.navbar-fixed-top,
-.navbar-fixed-bottom {
- position: fixed;
- right: 0;
- left: 0;
- z-index: 1030;
-}
-.navbar-fixed-top .navbar-collapse,
-.navbar-fixed-bottom .navbar-collapse {
- max-height: 340px;
-}
-@media (max-device-width: 480px) and (orientation: landscape) {
- .navbar-fixed-top .navbar-collapse,
- .navbar-fixed-bottom .navbar-collapse {
- max-height: 200px;
- }
-}
-@media (min-width: 768px) {
- .navbar-fixed-top,
- .navbar-fixed-bottom {
- border-radius: 0;
- }
-}
-.navbar-fixed-top {
- top: 0;
- border-width: 0 0 1px;
-}
-.navbar-fixed-bottom {
- bottom: 0;
- margin-bottom: 0;
- border-width: 1px 0 0;
-}
-.container > .navbar-header,
-.container-fluid > .navbar-header,
-.container > .navbar-collapse,
-.container-fluid > .navbar-collapse {
- margin-right: -15px;
- margin-left: -15px;
-}
-@media (min-width: 768px) {
- .container > .navbar-header,
- .container-fluid > .navbar-header,
- .container > .navbar-collapse,
- .container-fluid > .navbar-collapse {
- margin-right: 0;
- margin-left: 0;
- }
-}
-.navbar-static-top {
- z-index: 1000;
- border-width: 0 0 1px;
-}
-@media (min-width: 768px) {
- .navbar-static-top {
- border-radius: 0;
- }
-}
-.navbar-brand {
- float: left;
- height: 50px;
- padding: 15px 15px;
- font-size: 18px;
- line-height: 20px;
-}
-.navbar-brand:hover,
-.navbar-brand:focus {
- text-decoration: none;
-}
-.navbar-brand > img {
- display: block;
-}
-@media (min-width: 768px) {
- .navbar > .container .navbar-brand,
- .navbar > .container-fluid .navbar-brand {
- margin-left: -15px;
- }
-}
-.navbar-toggle {
- position: relative;
- float: right;
- padding: 9px 10px;
- margin-right: 15px;
- margin-top: 8px;
- margin-bottom: 8px;
- background-color: transparent;
- background-image: none;
- border: 1px solid transparent;
- border-radius: 4px;
-}
-.navbar-toggle:focus {
- outline: 0;
-}
-.navbar-toggle .icon-bar {
- display: block;
- width: 22px;
- height: 2px;
- border-radius: 1px;
-}
-.navbar-toggle .icon-bar + .icon-bar {
- margin-top: 4px;
-}
-@media (min-width: 768px) {
- .navbar-toggle {
- display: none;
- }
-}
-.navbar-nav {
- margin: 7.5px -15px;
-}
-.navbar-nav > li > a {
- padding-top: 10px;
- padding-bottom: 10px;
- line-height: 20px;
-}
-@media (max-width: 767px) {
- .navbar-nav .open .dropdown-menu {
- position: static;
- float: none;
- width: auto;
- margin-top: 0;
- background-color: transparent;
- border: 0;
- -webkit-box-shadow: none;
- box-shadow: none;
- }
- .navbar-nav .open .dropdown-menu > li > a,
- .navbar-nav .open .dropdown-menu .dropdown-header {
- padding: 5px 15px 5px 25px;
- }
- .navbar-nav .open .dropdown-menu > li > a {
- line-height: 20px;
- }
- .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-nav .open .dropdown-menu > li > a:focus {
- background-image: none;
- }
-}
-@media (min-width: 768px) {
- .navbar-nav {
- float: left;
- margin: 0;
- }
- .navbar-nav > li {
- float: left;
- }
- .navbar-nav > li > a {
- padding-top: 15px;
- padding-bottom: 15px;
- }
-}
-.navbar-form {
- padding: 10px 15px;
- margin-right: -15px;
- margin-left: -15px;
- border-top: 1px solid transparent;
- border-bottom: 1px solid transparent;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- margin-top: 8px;
- margin-bottom: 8px;
-}
-@media (min-width: 768px) {
- .navbar-form .form-group {
- display: inline-block;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .navbar-form .form-control {
- display: inline-block;
- width: auto;
- vertical-align: middle;
- }
- .navbar-form .form-control-static {
- display: inline-block;
- }
- .navbar-form .input-group {
- display: inline-table;
- vertical-align: middle;
- }
- .navbar-form .input-group .input-group-addon,
- .navbar-form .input-group .input-group-btn,
- .navbar-form .input-group .form-control {
- width: auto;
- }
- .navbar-form .input-group > .form-control {
- width: 100%;
- }
- .navbar-form .control-label {
- margin-bottom: 0;
- vertical-align: middle;
- }
- .navbar-form .radio,
- .navbar-form .checkbox {
- display: inline-block;
- margin-top: 0;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .navbar-form .radio label,
- .navbar-form .checkbox label {
- padding-left: 0;
- }
- .navbar-form .radio input[type="radio"],
- .navbar-form .checkbox input[type="checkbox"] {
- position: relative;
- margin-left: 0;
- }
- .navbar-form .has-feedback .form-control-feedback {
- top: 0;
- }
-}
-@media (max-width: 767px) {
- .navbar-form .form-group {
- margin-bottom: 5px;
- }
- .navbar-form .form-group:last-child {
- margin-bottom: 0;
- }
-}
-@media (min-width: 768px) {
- .navbar-form {
- width: auto;
- padding-top: 0;
- padding-bottom: 0;
- margin-right: 0;
- margin-left: 0;
- border: 0;
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-}
-.navbar-nav > li > .dropdown-menu {
- margin-top: 0;
- border-top-left-radius: 0;
- border-top-right-radius: 0;
-}
-.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
- margin-bottom: 0;
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-.navbar-btn {
- margin-top: 8px;
- margin-bottom: 8px;
-}
-.navbar-btn.btn-sm {
- margin-top: 10px;
- margin-bottom: 10px;
-}
-.navbar-btn.btn-xs {
- margin-top: 14px;
- margin-bottom: 14px;
-}
-.navbar-text {
- margin-top: 15px;
- margin-bottom: 15px;
-}
-@media (min-width: 768px) {
- .navbar-text {
- float: left;
- margin-right: 15px;
- margin-left: 15px;
- }
-}
-@media (min-width: 768px) {
- .navbar-left {
- float: left !important;
- }
- .navbar-right {
- float: right !important;
- margin-right: -15px;
- }
- .navbar-right ~ .navbar-right {
- margin-right: 0;
- }
-}
-.navbar-default {
- background-color: #f8f8f8;
- border-color: #e7e7e7;
-}
-.navbar-default .navbar-brand {
- color: #777;
-}
-.navbar-default .navbar-brand:hover,
-.navbar-default .navbar-brand:focus {
- color: #5e5e5e;
- background-color: transparent;
-}
-.navbar-default .navbar-text {
- color: #777;
-}
-.navbar-default .navbar-nav > li > a {
- color: #777;
-}
-.navbar-default .navbar-nav > li > a:hover,
-.navbar-default .navbar-nav > li > a:focus {
- color: #333;
- background-color: transparent;
-}
-.navbar-default .navbar-nav > .active > a,
-.navbar-default .navbar-nav > .active > a:hover,
-.navbar-default .navbar-nav > .active > a:focus {
- color: #555;
- background-color: #e7e7e7;
-}
-.navbar-default .navbar-nav > .disabled > a,
-.navbar-default .navbar-nav > .disabled > a:hover,
-.navbar-default .navbar-nav > .disabled > a:focus {
- color: #ccc;
- background-color: transparent;
-}
-.navbar-default .navbar-nav > .open > a,
-.navbar-default .navbar-nav > .open > a:hover,
-.navbar-default .navbar-nav > .open > a:focus {
- color: #555;
- background-color: #e7e7e7;
-}
-@media (max-width: 767px) {
- .navbar-default .navbar-nav .open .dropdown-menu > li > a {
- color: #777;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
- color: #333;
- background-color: transparent;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
- color: #555;
- background-color: #e7e7e7;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
- color: #ccc;
- background-color: transparent;
- }
-}
-.navbar-default .navbar-toggle {
- border-color: #ddd;
-}
-.navbar-default .navbar-toggle:hover,
-.navbar-default .navbar-toggle:focus {
- background-color: #ddd;
-}
-.navbar-default .navbar-toggle .icon-bar {
- background-color: #888;
-}
-.navbar-default .navbar-collapse,
-.navbar-default .navbar-form {
- border-color: #e7e7e7;
-}
-.navbar-default .navbar-link {
- color: #777;
-}
-.navbar-default .navbar-link:hover {
- color: #333;
-}
-.navbar-default .btn-link {
- color: #777;
-}
-.navbar-default .btn-link:hover,
-.navbar-default .btn-link:focus {
- color: #333;
-}
-.navbar-default .btn-link[disabled]:hover,
-fieldset[disabled] .navbar-default .btn-link:hover,
-.navbar-default .btn-link[disabled]:focus,
-fieldset[disabled] .navbar-default .btn-link:focus {
- color: #ccc;
-}
-.navbar-inverse {
- background-color: #222;
- border-color: #080808;
-}
-.navbar-inverse .navbar-brand {
- color: #9d9d9d;
-}
-.navbar-inverse .navbar-brand:hover,
-.navbar-inverse .navbar-brand:focus {
- color: #fff;
- background-color: transparent;
-}
-.navbar-inverse .navbar-text {
- color: #9d9d9d;
-}
-.navbar-inverse .navbar-nav > li > a {
- color: #9d9d9d;
-}
-.navbar-inverse .navbar-nav > li > a:hover,
-.navbar-inverse .navbar-nav > li > a:focus {
- color: #fff;
- background-color: transparent;
-}
-.navbar-inverse .navbar-nav > .active > a,
-.navbar-inverse .navbar-nav > .active > a:hover,
-.navbar-inverse .navbar-nav > .active > a:focus {
- color: #fff;
- background-color: #080808;
-}
-.navbar-inverse .navbar-nav > .disabled > a,
-.navbar-inverse .navbar-nav > .disabled > a:hover,
-.navbar-inverse .navbar-nav > .disabled > a:focus {
- color: #444;
- background-color: transparent;
-}
-.navbar-inverse .navbar-nav > .open > a,
-.navbar-inverse .navbar-nav > .open > a:hover,
-.navbar-inverse .navbar-nav > .open > a:focus {
- color: #fff;
- background-color: #080808;
-}
-@media (max-width: 767px) {
- .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
- border-color: #080808;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
- background-color: #080808;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
- color: #9d9d9d;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
- color: #fff;
- background-color: transparent;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
- color: #fff;
- background-color: #080808;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
- color: #444;
- background-color: transparent;
- }
-}
-.navbar-inverse .navbar-toggle {
- border-color: #333;
-}
-.navbar-inverse .navbar-toggle:hover,
-.navbar-inverse .navbar-toggle:focus {
- background-color: #333;
-}
-.navbar-inverse .navbar-toggle .icon-bar {
- background-color: #fff;
-}
-.navbar-inverse .navbar-collapse,
-.navbar-inverse .navbar-form {
- border-color: #101010;
-}
-.navbar-inverse .navbar-link {
- color: #9d9d9d;
-}
-.navbar-inverse .navbar-link:hover {
- color: #fff;
-}
-.navbar-inverse .btn-link {
- color: #9d9d9d;
-}
-.navbar-inverse .btn-link:hover,
-.navbar-inverse .btn-link:focus {
- color: #fff;
-}
-.navbar-inverse .btn-link[disabled]:hover,
-fieldset[disabled] .navbar-inverse .btn-link:hover,
-.navbar-inverse .btn-link[disabled]:focus,
-fieldset[disabled] .navbar-inverse .btn-link:focus {
- color: #444;
-}
-.breadcrumb {
- padding: 8px 15px;
- margin-bottom: 20px;
- list-style: none;
- background-color: #f5f5f5;
- border-radius: 4px;
-}
-.breadcrumb > li {
- display: inline-block;
-}
-.breadcrumb > li + li:before {
- padding: 0 5px;
- color: #ccc;
- content: "/\00a0";
-}
-.breadcrumb > .active {
- color: #777777;
-}
-.pagination {
- display: inline-block;
- padding-left: 0;
- margin: 20px 0;
- border-radius: 4px;
-}
-.pagination > li {
- display: inline;
-}
-.pagination > li > a,
-.pagination > li > span {
- position: relative;
- float: left;
- padding: 6px 12px;
- margin-left: -1px;
- line-height: 1.42857143;
- color: #337ab7;
- text-decoration: none;
- background-color: #fff;
- border: 1px solid #ddd;
-}
-.pagination > li > a:hover,
-.pagination > li > span:hover,
-.pagination > li > a:focus,
-.pagination > li > span:focus {
- z-index: 2;
- color: #23527c;
- background-color: #eeeeee;
- border-color: #ddd;
-}
-.pagination > li:first-child > a,
-.pagination > li:first-child > span {
- margin-left: 0;
- border-top-left-radius: 4px;
- border-bottom-left-radius: 4px;
-}
-.pagination > li:last-child > a,
-.pagination > li:last-child > span {
- border-top-right-radius: 4px;
- border-bottom-right-radius: 4px;
-}
-.pagination > .active > a,
-.pagination > .active > span,
-.pagination > .active > a:hover,
-.pagination > .active > span:hover,
-.pagination > .active > a:focus,
-.pagination > .active > span:focus {
- z-index: 3;
- color: #fff;
- cursor: default;
- background-color: #337ab7;
- border-color: #337ab7;
-}
-.pagination > .disabled > span,
-.pagination > .disabled > span:hover,
-.pagination > .disabled > span:focus,
-.pagination > .disabled > a,
-.pagination > .disabled > a:hover,
-.pagination > .disabled > a:focus {
- color: #777777;
- cursor: not-allowed;
- background-color: #fff;
- border-color: #ddd;
-}
-.pagination-lg > li > a,
-.pagination-lg > li > span {
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.3333333;
-}
-.pagination-lg > li:first-child > a,
-.pagination-lg > li:first-child > span {
- border-top-left-radius: 6px;
- border-bottom-left-radius: 6px;
-}
-.pagination-lg > li:last-child > a,
-.pagination-lg > li:last-child > span {
- border-top-right-radius: 6px;
- border-bottom-right-radius: 6px;
-}
-.pagination-sm > li > a,
-.pagination-sm > li > span {
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
-}
-.pagination-sm > li:first-child > a,
-.pagination-sm > li:first-child > span {
- border-top-left-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-.pagination-sm > li:last-child > a,
-.pagination-sm > li:last-child > span {
- border-top-right-radius: 3px;
- border-bottom-right-radius: 3px;
-}
-.pager {
- padding-left: 0;
- margin: 20px 0;
- text-align: center;
- list-style: none;
-}
-.pager li {
- display: inline;
-}
-.pager li > a,
-.pager li > span {
- display: inline-block;
- padding: 5px 14px;
- background-color: #fff;
- border: 1px solid #ddd;
- border-radius: 15px;
-}
-.pager li > a:hover,
-.pager li > a:focus {
- text-decoration: none;
- background-color: #eeeeee;
-}
-.pager .next > a,
-.pager .next > span {
- float: right;
-}
-.pager .previous > a,
-.pager .previous > span {
- float: left;
-}
-.pager .disabled > a,
-.pager .disabled > a:hover,
-.pager .disabled > a:focus,
-.pager .disabled > span {
- color: #777777;
- cursor: not-allowed;
- background-color: #fff;
-}
-.label {
- display: inline;
- padding: 0.2em 0.6em 0.3em;
- font-size: 75%;
- font-weight: 700;
- line-height: 1;
- color: #fff;
- text-align: center;
- white-space: nowrap;
- vertical-align: baseline;
- border-radius: 0.25em;
-}
-a.label:hover,
-a.label:focus {
- color: #fff;
- text-decoration: none;
- cursor: pointer;
-}
-.label:empty {
- display: none;
-}
-.btn .label {
- position: relative;
- top: -1px;
-}
-.label-default {
- background-color: #777777;
-}
-.label-default[href]:hover,
-.label-default[href]:focus {
- background-color: #5e5e5e;
-}
-.label-primary {
- background-color: #337ab7;
-}
-.label-primary[href]:hover,
-.label-primary[href]:focus {
- background-color: #286090;
-}
-.label-success {
- background-color: #5cb85c;
-}
-.label-success[href]:hover,
-.label-success[href]:focus {
- background-color: #449d44;
-}
-.label-info {
- background-color: #5bc0de;
-}
-.label-info[href]:hover,
-.label-info[href]:focus {
- background-color: #31b0d5;
-}
-.label-warning {
- background-color: #f0ad4e;
-}
-.label-warning[href]:hover,
-.label-warning[href]:focus {
- background-color: #ec971f;
-}
-.label-danger {
- background-color: #d9534f;
-}
-.label-danger[href]:hover,
-.label-danger[href]:focus {
- background-color: #c9302c;
-}
-.badge {
- display: inline-block;
- min-width: 10px;
- padding: 3px 7px;
- font-size: 12px;
- font-weight: bold;
- line-height: 1;
- color: #fff;
- text-align: center;
- white-space: nowrap;
- vertical-align: middle;
- background-color: #777777;
- border-radius: 10px;
-}
-.badge:empty {
- display: none;
-}
-.btn .badge {
- position: relative;
- top: -1px;
-}
-.btn-xs .badge,
-.btn-group-xs > .btn .badge {
- top: 0;
- padding: 1px 5px;
-}
-a.badge:hover,
-a.badge:focus {
- color: #fff;
- text-decoration: none;
- cursor: pointer;
-}
-.list-group-item.active > .badge,
-.nav-pills > .active > a > .badge {
- color: #337ab7;
- background-color: #fff;
-}
-.list-group-item > .badge {
- float: right;
-}
-.list-group-item > .badge + .badge {
- margin-right: 5px;
-}
-.nav-pills > li > a > .badge {
- margin-left: 3px;
-}
-.jumbotron {
- padding-top: 30px;
- padding-bottom: 30px;
- margin-bottom: 30px;
- color: inherit;
- background-color: #eeeeee;
-}
-.jumbotron h1,
-.jumbotron .h1 {
- color: inherit;
-}
-.jumbotron p {
- margin-bottom: 15px;
- font-size: 21px;
- font-weight: 200;
-}
-.jumbotron > hr {
- border-top-color: #d5d5d5;
-}
-.container .jumbotron,
-.container-fluid .jumbotron {
- padding-right: 15px;
- padding-left: 15px;
- border-radius: 6px;
-}
-.jumbotron .container {
- max-width: 100%;
-}
-@media screen and (min-width: 768px) {
- .jumbotron {
- padding-top: 48px;
- padding-bottom: 48px;
- }
- .container .jumbotron,
- .container-fluid .jumbotron {
- padding-right: 60px;
- padding-left: 60px;
- }
- .jumbotron h1,
- .jumbotron .h1 {
- font-size: 63px;
- }
-}
-.thumbnail {
- display: block;
- padding: 4px;
- margin-bottom: 20px;
- line-height: 1.42857143;
- background-color: #fff;
- border: 1px solid #ddd;
- border-radius: 4px;
- -webkit-transition: border 0.2s ease-in-out;
- -o-transition: border 0.2s ease-in-out;
- transition: border 0.2s ease-in-out;
-}
-.thumbnail > img,
-.thumbnail a > img {
- margin-right: auto;
- margin-left: auto;
-}
-a.thumbnail:hover,
-a.thumbnail:focus,
-a.thumbnail.active {
- border-color: #337ab7;
-}
-.thumbnail .caption {
- padding: 9px;
- color: #333333;
-}
-.alert {
- padding: 15px;
- margin-bottom: 20px;
- border: 1px solid transparent;
- border-radius: 4px;
-}
-.alert h4 {
- margin-top: 0;
- color: inherit;
-}
-.alert .alert-link {
- font-weight: bold;
-}
-.alert > p,
-.alert > ul {
- margin-bottom: 0;
-}
-.alert > p + p {
- margin-top: 5px;
-}
-.alert-dismissable,
-.alert-dismissible {
- padding-right: 35px;
-}
-.alert-dismissable .close,
-.alert-dismissible .close {
- position: relative;
- top: -2px;
- right: -21px;
- color: inherit;
-}
-.alert-success {
- color: #3c763d;
- background-color: #dff0d8;
- border-color: #d6e9c6;
-}
-.alert-success hr {
- border-top-color: #c9e2b3;
-}
-.alert-success .alert-link {
- color: #2b542c;
-}
-.alert-info {
- color: #31708f;
- background-color: #d9edf7;
- border-color: #bce8f1;
-}
-.alert-info hr {
- border-top-color: #a6e1ec;
-}
-.alert-info .alert-link {
- color: #245269;
-}
-.alert-warning {
- color: #8a6d3b;
- background-color: #fcf8e3;
- border-color: #faebcc;
-}
-.alert-warning hr {
- border-top-color: #f7e1b5;
-}
-.alert-warning .alert-link {
- color: #66512c;
-}
-.alert-danger {
- color: #a94442;
- background-color: #f2dede;
- border-color: #ebccd1;
-}
-.alert-danger hr {
- border-top-color: #e4b9c0;
-}
-.alert-danger .alert-link {
- color: #843534;
-}
-@-webkit-keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-@-o-keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-@keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-.progress {
- height: 20px;
- margin-bottom: 20px;
- overflow: hidden;
- background-color: #f5f5f5;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-}
-.progress-bar {
- float: left;
- width: 0%;
- height: 100%;
- font-size: 12px;
- line-height: 20px;
- color: #fff;
- text-align: center;
- background-color: #337ab7;
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- -webkit-transition: width 0.6s ease;
- -o-transition: width 0.6s ease;
- transition: width 0.6s ease;
-}
-.progress-striped .progress-bar,
-.progress-bar-striped {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- -webkit-background-size: 40px 40px;
- background-size: 40px 40px;
-}
-.progress.active .progress-bar,
-.progress-bar.active {
- -webkit-animation: progress-bar-stripes 2s linear infinite;
- -o-animation: progress-bar-stripes 2s linear infinite;
- animation: progress-bar-stripes 2s linear infinite;
-}
-.progress-bar-success {
- background-color: #5cb85c;
-}
-.progress-striped .progress-bar-success {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-.progress-bar-info {
- background-color: #5bc0de;
-}
-.progress-striped .progress-bar-info {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-.progress-bar-warning {
- background-color: #f0ad4e;
-}
-.progress-striped .progress-bar-warning {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-.progress-bar-danger {
- background-color: #d9534f;
-}
-.progress-striped .progress-bar-danger {
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-.media {
- margin-top: 15px;
-}
-.media:first-child {
- margin-top: 0;
-}
-.media,
-.media-body {
- overflow: hidden;
- zoom: 1;
-}
-.media-body {
- width: 10000px;
-}
-.media-object {
- display: block;
-}
-.media-object.img-thumbnail {
- max-width: none;
-}
-.media-right,
-.media > .pull-right {
- padding-left: 10px;
-}
-.media-left,
-.media > .pull-left {
- padding-right: 10px;
-}
-.media-left,
-.media-right,
-.media-body {
- display: table-cell;
- vertical-align: top;
-}
-.media-middle {
- vertical-align: middle;
-}
-.media-bottom {
- vertical-align: bottom;
-}
-.media-heading {
- margin-top: 0;
- margin-bottom: 5px;
-}
-.media-list {
- padding-left: 0;
- list-style: none;
-}
-.list-group {
- padding-left: 0;
- margin-bottom: 20px;
-}
-.list-group-item {
- position: relative;
- display: block;
- padding: 10px 15px;
- margin-bottom: -1px;
- background-color: #fff;
- border: 1px solid #ddd;
-}
-.list-group-item:first-child {
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
-}
-.list-group-item:last-child {
- margin-bottom: 0;
- border-bottom-right-radius: 4px;
- border-bottom-left-radius: 4px;
-}
-.list-group-item.disabled,
-.list-group-item.disabled:hover,
-.list-group-item.disabled:focus {
- color: #777777;
- cursor: not-allowed;
- background-color: #eeeeee;
-}
-.list-group-item.disabled .list-group-item-heading,
-.list-group-item.disabled:hover .list-group-item-heading,
-.list-group-item.disabled:focus .list-group-item-heading {
- color: inherit;
-}
-.list-group-item.disabled .list-group-item-text,
-.list-group-item.disabled:hover .list-group-item-text,
-.list-group-item.disabled:focus .list-group-item-text {
- color: #777777;
-}
-.list-group-item.active,
-.list-group-item.active:hover,
-.list-group-item.active:focus {
- z-index: 2;
- color: #fff;
- background-color: #337ab7;
- border-color: #337ab7;
-}
-.list-group-item.active .list-group-item-heading,
-.list-group-item.active:hover .list-group-item-heading,
-.list-group-item.active:focus .list-group-item-heading,
-.list-group-item.active .list-group-item-heading > small,
-.list-group-item.active:hover .list-group-item-heading > small,
-.list-group-item.active:focus .list-group-item-heading > small,
-.list-group-item.active .list-group-item-heading > .small,
-.list-group-item.active:hover .list-group-item-heading > .small,
-.list-group-item.active:focus .list-group-item-heading > .small {
- color: inherit;
-}
-.list-group-item.active .list-group-item-text,
-.list-group-item.active:hover .list-group-item-text,
-.list-group-item.active:focus .list-group-item-text {
- color: #c7ddef;
-}
-a.list-group-item,
-button.list-group-item {
- color: #555;
-}
-a.list-group-item .list-group-item-heading,
-button.list-group-item .list-group-item-heading {
- color: #333;
-}
-a.list-group-item:hover,
-button.list-group-item:hover,
-a.list-group-item:focus,
-button.list-group-item:focus {
- color: #555;
- text-decoration: none;
- background-color: #f5f5f5;
-}
-button.list-group-item {
- width: 100%;
- text-align: left;
-}
-.list-group-item-success {
- color: #3c763d;
- background-color: #dff0d8;
-}
-a.list-group-item-success,
-button.list-group-item-success {
- color: #3c763d;
-}
-a.list-group-item-success .list-group-item-heading,
-button.list-group-item-success .list-group-item-heading {
- color: inherit;
-}
-a.list-group-item-success:hover,
-button.list-group-item-success:hover,
-a.list-group-item-success:focus,
-button.list-group-item-success:focus {
- color: #3c763d;
- background-color: #d0e9c6;
-}
-a.list-group-item-success.active,
-button.list-group-item-success.active,
-a.list-group-item-success.active:hover,
-button.list-group-item-success.active:hover,
-a.list-group-item-success.active:focus,
-button.list-group-item-success.active:focus {
- color: #fff;
- background-color: #3c763d;
- border-color: #3c763d;
-}
-.list-group-item-info {
- color: #31708f;
- background-color: #d9edf7;
-}
-a.list-group-item-info,
-button.list-group-item-info {
- color: #31708f;
-}
-a.list-group-item-info .list-group-item-heading,
-button.list-group-item-info .list-group-item-heading {
- color: inherit;
-}
-a.list-group-item-info:hover,
-button.list-group-item-info:hover,
-a.list-group-item-info:focus,
-button.list-group-item-info:focus {
- color: #31708f;
- background-color: #c4e3f3;
-}
-a.list-group-item-info.active,
-button.list-group-item-info.active,
-a.list-group-item-info.active:hover,
-button.list-group-item-info.active:hover,
-a.list-group-item-info.active:focus,
-button.list-group-item-info.active:focus {
- color: #fff;
- background-color: #31708f;
- border-color: #31708f;
-}
-.list-group-item-warning {
- color: #8a6d3b;
- background-color: #fcf8e3;
-}
-a.list-group-item-warning,
-button.list-group-item-warning {
- color: #8a6d3b;
-}
-a.list-group-item-warning .list-group-item-heading,
-button.list-group-item-warning .list-group-item-heading {
- color: inherit;
-}
-a.list-group-item-warning:hover,
-button.list-group-item-warning:hover,
-a.list-group-item-warning:focus,
-button.list-group-item-warning:focus {
- color: #8a6d3b;
- background-color: #faf2cc;
-}
-a.list-group-item-warning.active,
-button.list-group-item-warning.active,
-a.list-group-item-warning.active:hover,
-button.list-group-item-warning.active:hover,
-a.list-group-item-warning.active:focus,
-button.list-group-item-warning.active:focus {
- color: #fff;
- background-color: #8a6d3b;
- border-color: #8a6d3b;
-}
-.list-group-item-danger {
- color: #a94442;
- background-color: #f2dede;
-}
-a.list-group-item-danger,
-button.list-group-item-danger {
- color: #a94442;
-}
-a.list-group-item-danger .list-group-item-heading,
-button.list-group-item-danger .list-group-item-heading {
- color: inherit;
-}
-a.list-group-item-danger:hover,
-button.list-group-item-danger:hover,
-a.list-group-item-danger:focus,
-button.list-group-item-danger:focus {
- color: #a94442;
- background-color: #ebcccc;
-}
-a.list-group-item-danger.active,
-button.list-group-item-danger.active,
-a.list-group-item-danger.active:hover,
-button.list-group-item-danger.active:hover,
-a.list-group-item-danger.active:focus,
-button.list-group-item-danger.active:focus {
- color: #fff;
- background-color: #a94442;
- border-color: #a94442;
-}
-.list-group-item-heading {
- margin-top: 0;
- margin-bottom: 5px;
-}
-.list-group-item-text {
- margin-bottom: 0;
- line-height: 1.3;
-}
-.panel {
- margin-bottom: 20px;
- background-color: #fff;
- border: 1px solid transparent;
- border-radius: 4px;
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-.panel-body {
- padding: 15px;
-}
-.panel-heading {
- padding: 10px 15px;
- border-bottom: 1px solid transparent;
- border-top-left-radius: 3px;
- border-top-right-radius: 3px;
-}
-.panel-heading > .dropdown .dropdown-toggle {
- color: inherit;
-}
-.panel-title {
- margin-top: 0;
- margin-bottom: 0;
- font-size: 16px;
- color: inherit;
-}
-.panel-title > a,
-.panel-title > small,
-.panel-title > .small,
-.panel-title > small > a,
-.panel-title > .small > a {
- color: inherit;
-}
-.panel-footer {
- padding: 10px 15px;
- background-color: #f5f5f5;
- border-top: 1px solid #ddd;
- border-bottom-right-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-.panel > .list-group,
-.panel > .panel-collapse > .list-group {
- margin-bottom: 0;
-}
-.panel > .list-group .list-group-item,
-.panel > .panel-collapse > .list-group .list-group-item {
- border-width: 1px 0;
- border-radius: 0;
-}
-.panel > .list-group:first-child .list-group-item:first-child,
-.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
- border-top: 0;
- border-top-left-radius: 3px;
- border-top-right-radius: 3px;
-}
-.panel > .list-group:last-child .list-group-item:last-child,
-.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
- border-bottom: 0;
- border-bottom-right-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
- border-top-left-radius: 0;
- border-top-right-radius: 0;
-}
-.panel-heading + .list-group .list-group-item:first-child {
- border-top-width: 0;
-}
-.list-group + .panel-footer {
- border-top-width: 0;
-}
-.panel > .table,
-.panel > .table-responsive > .table,
-.panel > .panel-collapse > .table {
- margin-bottom: 0;
-}
-.panel > .table caption,
-.panel > .table-responsive > .table caption,
-.panel > .panel-collapse > .table caption {
- padding-right: 15px;
- padding-left: 15px;
-}
-.panel > .table:first-child,
-.panel > .table-responsive:first-child > .table:first-child {
- border-top-left-radius: 3px;
- border-top-right-radius: 3px;
-}
-.panel > .table:first-child > thead:first-child > tr:first-child,
-.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
-.panel > .table:first-child > tbody:first-child > tr:first-child,
-.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
- border-top-left-radius: 3px;
- border-top-right-radius: 3px;
-}
-.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
-.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
-.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
-.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
-.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
-.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
-.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
-.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
- border-top-left-radius: 3px;
-}
-.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
-.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
-.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
-.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
-.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
-.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
-.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
-.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
- border-top-right-radius: 3px;
-}
-.panel > .table:last-child,
-.panel > .table-responsive:last-child > .table:last-child {
- border-bottom-right-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-.panel > .table:last-child > tbody:last-child > tr:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
-.panel > .table:last-child > tfoot:last-child > tr:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
- border-bottom-right-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
-.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
-.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
-.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
-.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
-.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
-.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
-.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
- border-bottom-left-radius: 3px;
-}
-.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
-.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
-.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
-.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
-.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
- border-bottom-right-radius: 3px;
-}
-.panel > .panel-body + .table,
-.panel > .panel-body + .table-responsive,
-.panel > .table + .panel-body,
-.panel > .table-responsive + .panel-body {
- border-top: 1px solid #ddd;
-}
-.panel > .table > tbody:first-child > tr:first-child th,
-.panel > .table > tbody:first-child > tr:first-child td {
- border-top: 0;
-}
-.panel > .table-bordered,
-.panel > .table-responsive > .table-bordered {
- border: 0;
-}
-.panel > .table-bordered > thead > tr > th:first-child,
-.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
-.panel > .table-bordered > tbody > tr > th:first-child,
-.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
-.panel > .table-bordered > tfoot > tr > th:first-child,
-.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
-.panel > .table-bordered > thead > tr > td:first-child,
-.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
-.panel > .table-bordered > tbody > tr > td:first-child,
-.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
-.panel > .table-bordered > tfoot > tr > td:first-child,
-.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
- border-left: 0;
-}
-.panel > .table-bordered > thead > tr > th:last-child,
-.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
-.panel > .table-bordered > tbody > tr > th:last-child,
-.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
-.panel > .table-bordered > tfoot > tr > th:last-child,
-.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
-.panel > .table-bordered > thead > tr > td:last-child,
-.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
-.panel > .table-bordered > tbody > tr > td:last-child,
-.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
-.panel > .table-bordered > tfoot > tr > td:last-child,
-.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
- border-right: 0;
-}
-.panel > .table-bordered > thead > tr:first-child > td,
-.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
-.panel > .table-bordered > tbody > tr:first-child > td,
-.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
-.panel > .table-bordered > thead > tr:first-child > th,
-.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
-.panel > .table-bordered > tbody > tr:first-child > th,
-.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
- border-bottom: 0;
-}
-.panel > .table-bordered > tbody > tr:last-child > td,
-.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
-.panel > .table-bordered > tfoot > tr:last-child > td,
-.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
-.panel > .table-bordered > tbody > tr:last-child > th,
-.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
-.panel > .table-bordered > tfoot > tr:last-child > th,
-.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
- border-bottom: 0;
-}
-.panel > .table-responsive {
- margin-bottom: 0;
- border: 0;
-}
-.panel-group {
- margin-bottom: 20px;
-}
-.panel-group .panel {
- margin-bottom: 0;
- border-radius: 4px;
-}
-.panel-group .panel + .panel {
- margin-top: 5px;
-}
-.panel-group .panel-heading {
- border-bottom: 0;
-}
-.panel-group .panel-heading + .panel-collapse > .panel-body,
-.panel-group .panel-heading + .panel-collapse > .list-group {
- border-top: 1px solid #ddd;
-}
-.panel-group .panel-footer {
- border-top: 0;
-}
-.panel-group .panel-footer + .panel-collapse .panel-body {
- border-bottom: 1px solid #ddd;
-}
-.panel-default {
- border-color: #ddd;
-}
-.panel-default > .panel-heading {
- color: #333333;
- background-color: #f5f5f5;
- border-color: #ddd;
-}
-.panel-default > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #ddd;
-}
-.panel-default > .panel-heading .badge {
- color: #f5f5f5;
- background-color: #333333;
-}
-.panel-default > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #ddd;
-}
-.panel-primary {
- border-color: #337ab7;
-}
-.panel-primary > .panel-heading {
- color: #fff;
- background-color: #337ab7;
- border-color: #337ab7;
-}
-.panel-primary > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #337ab7;
-}
-.panel-primary > .panel-heading .badge {
- color: #337ab7;
- background-color: #fff;
-}
-.panel-primary > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #337ab7;
-}
-.panel-success {
- border-color: #d6e9c6;
-}
-.panel-success > .panel-heading {
- color: #3c763d;
- background-color: #dff0d8;
- border-color: #d6e9c6;
-}
-.panel-success > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #d6e9c6;
-}
-.panel-success > .panel-heading .badge {
- color: #dff0d8;
- background-color: #3c763d;
-}
-.panel-success > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #d6e9c6;
-}
-.panel-info {
- border-color: #bce8f1;
-}
-.panel-info > .panel-heading {
- color: #31708f;
- background-color: #d9edf7;
- border-color: #bce8f1;
-}
-.panel-info > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #bce8f1;
-}
-.panel-info > .panel-heading .badge {
- color: #d9edf7;
- background-color: #31708f;
-}
-.panel-info > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #bce8f1;
-}
-.panel-warning {
- border-color: #faebcc;
-}
-.panel-warning > .panel-heading {
- color: #8a6d3b;
- background-color: #fcf8e3;
- border-color: #faebcc;
-}
-.panel-warning > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #faebcc;
-}
-.panel-warning > .panel-heading .badge {
- color: #fcf8e3;
- background-color: #8a6d3b;
-}
-.panel-warning > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #faebcc;
-}
-.panel-danger {
- border-color: #ebccd1;
-}
-.panel-danger > .panel-heading {
- color: #a94442;
- background-color: #f2dede;
- border-color: #ebccd1;
-}
-.panel-danger > .panel-heading + .panel-collapse > .panel-body {
- border-top-color: #ebccd1;
-}
-.panel-danger > .panel-heading .badge {
- color: #f2dede;
- background-color: #a94442;
-}
-.panel-danger > .panel-footer + .panel-collapse > .panel-body {
- border-bottom-color: #ebccd1;
-}
-.embed-responsive {
- position: relative;
- display: block;
- height: 0;
- padding: 0;
- overflow: hidden;
-}
-.embed-responsive .embed-responsive-item,
-.embed-responsive iframe,
-.embed-responsive embed,
-.embed-responsive object,
-.embed-responsive video {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- width: 100%;
- height: 100%;
- border: 0;
-}
-.embed-responsive-16by9 {
- padding-bottom: 56.25%;
-}
-.embed-responsive-4by3 {
- padding-bottom: 75%;
-}
-.well {
- min-height: 20px;
- padding: 19px;
- margin-bottom: 20px;
- background-color: #f5f5f5;
- border: 1px solid #e3e3e3;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-.well blockquote {
- border-color: #ddd;
- border-color: rgba(0, 0, 0, 0.15);
-}
-.well-lg {
- padding: 24px;
- border-radius: 6px;
-}
-.well-sm {
- padding: 9px;
- border-radius: 3px;
-}
-.close {
- float: right;
- font-size: 21px;
- font-weight: bold;
- line-height: 1;
- color: #000;
- text-shadow: 0 1px 0 #fff;
- filter: alpha(opacity=20);
- opacity: 0.2;
-}
-.close:hover,
-.close:focus {
- color: #000;
- text-decoration: none;
- cursor: pointer;
- filter: alpha(opacity=50);
- opacity: 0.5;
-}
-button.close {
- padding: 0;
- cursor: pointer;
- background: transparent;
- border: 0;
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
-}
-.modal-open {
- overflow: hidden;
-}
-.modal {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 1050;
- display: none;
- overflow: hidden;
- -webkit-overflow-scrolling: touch;
- outline: 0;
-}
-.modal.fade .modal-dialog {
- -webkit-transform: translate(0, -25%);
- -ms-transform: translate(0, -25%);
- -o-transform: translate(0, -25%);
- transform: translate(0, -25%);
- -webkit-transition: -webkit-transform 0.3s ease-out;
- -o-transition: -o-transform 0.3s ease-out;
- transition: -webkit-transform 0.3s ease-out;
- transition: transform 0.3s ease-out;
- transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;
-}
-.modal.in .modal-dialog {
- -webkit-transform: translate(0, 0);
- -ms-transform: translate(0, 0);
- -o-transform: translate(0, 0);
- transform: translate(0, 0);
-}
-.modal-open .modal {
- overflow-x: hidden;
- overflow-y: auto;
-}
-.modal-dialog {
- position: relative;
- width: auto;
- margin: 10px;
-}
-.modal-content {
- position: relative;
- background-color: #fff;
- background-clip: padding-box;
- border: 1px solid #999;
- border: 1px solid rgba(0, 0, 0, 0.2);
- border-radius: 6px;
- -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
- box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
- outline: 0;
-}
-.modal-backdrop {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 1040;
- background-color: #000;
-}
-.modal-backdrop.fade {
- filter: alpha(opacity=0);
- opacity: 0;
-}
-.modal-backdrop.in {
- filter: alpha(opacity=50);
- opacity: 0.5;
-}
-.modal-header {
- padding: 15px;
- border-bottom: 1px solid #e5e5e5;
-}
-.modal-header .close {
- margin-top: -2px;
-}
-.modal-title {
- margin: 0;
- line-height: 1.42857143;
-}
-.modal-body {
- position: relative;
- padding: 15px;
-}
-.modal-footer {
- padding: 15px;
- text-align: right;
- border-top: 1px solid #e5e5e5;
-}
-.modal-footer .btn + .btn {
- margin-bottom: 0;
- margin-left: 5px;
-}
-.modal-footer .btn-group .btn + .btn {
- margin-left: -1px;
-}
-.modal-footer .btn-block + .btn-block {
- margin-left: 0;
-}
-.modal-scrollbar-measure {
- position: absolute;
- top: -9999px;
- width: 50px;
- height: 50px;
- overflow: scroll;
-}
-@media (min-width: 768px) {
- .modal-dialog {
- width: 600px;
- margin: 30px auto;
- }
- .modal-content {
- -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
- box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
- }
- .modal-sm {
- width: 300px;
- }
-}
-@media (min-width: 992px) {
- .modal-lg {
- width: 900px;
- }
-}
-.tooltip {
- position: absolute;
- z-index: 1070;
- display: block;
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-style: normal;
- font-weight: 400;
- line-height: 1.42857143;
- line-break: auto;
- text-align: left;
- text-align: start;
- text-decoration: none;
- text-shadow: none;
- text-transform: none;
- letter-spacing: normal;
- word-break: normal;
- word-spacing: normal;
- word-wrap: normal;
- white-space: normal;
- font-size: 12px;
- filter: alpha(opacity=0);
- opacity: 0;
-}
-.tooltip.in {
- filter: alpha(opacity=90);
- opacity: 0.9;
-}
-.tooltip.top {
- padding: 5px 0;
- margin-top: -3px;
-}
-.tooltip.right {
- padding: 0 5px;
- margin-left: 3px;
-}
-.tooltip.bottom {
- padding: 5px 0;
- margin-top: 3px;
-}
-.tooltip.left {
- padding: 0 5px;
- margin-left: -3px;
-}
-.tooltip.top .tooltip-arrow {
- bottom: 0;
- left: 50%;
- margin-left: -5px;
- border-width: 5px 5px 0;
- border-top-color: #000;
-}
-.tooltip.top-left .tooltip-arrow {
- right: 5px;
- bottom: 0;
- margin-bottom: -5px;
- border-width: 5px 5px 0;
- border-top-color: #000;
-}
-.tooltip.top-right .tooltip-arrow {
- bottom: 0;
- left: 5px;
- margin-bottom: -5px;
- border-width: 5px 5px 0;
- border-top-color: #000;
-}
-.tooltip.right .tooltip-arrow {
- top: 50%;
- left: 0;
- margin-top: -5px;
- border-width: 5px 5px 5px 0;
- border-right-color: #000;
-}
-.tooltip.left .tooltip-arrow {
- top: 50%;
- right: 0;
- margin-top: -5px;
- border-width: 5px 0 5px 5px;
- border-left-color: #000;
-}
-.tooltip.bottom .tooltip-arrow {
- top: 0;
- left: 50%;
- margin-left: -5px;
- border-width: 0 5px 5px;
- border-bottom-color: #000;
-}
-.tooltip.bottom-left .tooltip-arrow {
- top: 0;
- right: 5px;
- margin-top: -5px;
- border-width: 0 5px 5px;
- border-bottom-color: #000;
-}
-.tooltip.bottom-right .tooltip-arrow {
- top: 0;
- left: 5px;
- margin-top: -5px;
- border-width: 0 5px 5px;
- border-bottom-color: #000;
-}
-.tooltip-inner {
- max-width: 200px;
- padding: 3px 8px;
- color: #fff;
- text-align: center;
- background-color: #000;
- border-radius: 4px;
-}
-.tooltip-arrow {
- position: absolute;
- width: 0;
- height: 0;
- border-color: transparent;
- border-style: solid;
-}
-.popover {
- position: absolute;
- top: 0;
- left: 0;
- z-index: 1060;
- display: none;
- max-width: 276px;
- padding: 1px;
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-style: normal;
- font-weight: 400;
- line-height: 1.42857143;
- line-break: auto;
- text-align: left;
- text-align: start;
- text-decoration: none;
- text-shadow: none;
- text-transform: none;
- letter-spacing: normal;
- word-break: normal;
- word-spacing: normal;
- word-wrap: normal;
- white-space: normal;
- font-size: 14px;
- background-color: #fff;
- background-clip: padding-box;
- border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, 0.2);
- border-radius: 6px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-}
-.popover.top {
- margin-top: -10px;
-}
-.popover.right {
- margin-left: 10px;
-}
-.popover.bottom {
- margin-top: 10px;
-}
-.popover.left {
- margin-left: -10px;
-}
-.popover > .arrow {
- border-width: 11px;
-}
-.popover > .arrow,
-.popover > .arrow:after {
- position: absolute;
- display: block;
- width: 0;
- height: 0;
- border-color: transparent;
- border-style: solid;
-}
-.popover > .arrow:after {
- content: "";
- border-width: 10px;
-}
-.popover.top > .arrow {
- bottom: -11px;
- left: 50%;
- margin-left: -11px;
- border-top-color: #999999;
- border-top-color: rgba(0, 0, 0, 0.25);
- border-bottom-width: 0;
-}
-.popover.top > .arrow:after {
- bottom: 1px;
- margin-left: -10px;
- content: " ";
- border-top-color: #fff;
- border-bottom-width: 0;
-}
-.popover.right > .arrow {
- top: 50%;
- left: -11px;
- margin-top: -11px;
- border-right-color: #999999;
- border-right-color: rgba(0, 0, 0, 0.25);
- border-left-width: 0;
-}
-.popover.right > .arrow:after {
- bottom: -10px;
- left: 1px;
- content: " ";
- border-right-color: #fff;
- border-left-width: 0;
-}
-.popover.bottom > .arrow {
- top: -11px;
- left: 50%;
- margin-left: -11px;
- border-top-width: 0;
- border-bottom-color: #999999;
- border-bottom-color: rgba(0, 0, 0, 0.25);
-}
-.popover.bottom > .arrow:after {
- top: 1px;
- margin-left: -10px;
- content: " ";
- border-top-width: 0;
- border-bottom-color: #fff;
-}
-.popover.left > .arrow {
- top: 50%;
- right: -11px;
- margin-top: -11px;
- border-right-width: 0;
- border-left-color: #999999;
- border-left-color: rgba(0, 0, 0, 0.25);
-}
-.popover.left > .arrow:after {
- right: 1px;
- bottom: -10px;
- content: " ";
- border-right-width: 0;
- border-left-color: #fff;
-}
-.popover-title {
- padding: 8px 14px;
- margin: 0;
- font-size: 14px;
- background-color: #f7f7f7;
- border-bottom: 1px solid #ebebeb;
- border-radius: 5px 5px 0 0;
-}
-.popover-content {
- padding: 9px 14px;
-}
-.carousel {
- position: relative;
-}
-.carousel-inner {
- position: relative;
- width: 100%;
- overflow: hidden;
-}
-.carousel-inner > .item {
- position: relative;
- display: none;
- -webkit-transition: 0.6s ease-in-out left;
- -o-transition: 0.6s ease-in-out left;
- transition: 0.6s ease-in-out left;
-}
-.carousel-inner > .item > img,
-.carousel-inner > .item > a > img {
- line-height: 1;
-}
-@media all and (transform-3d), (-webkit-transform-3d) {
- .carousel-inner > .item {
- -webkit-transition: -webkit-transform 0.6s ease-in-out;
- -o-transition: -o-transform 0.6s ease-in-out;
- transition: -webkit-transform 0.6s ease-in-out;
- transition: transform 0.6s ease-in-out;
- transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;
- -webkit-backface-visibility: hidden;
- backface-visibility: hidden;
- -webkit-perspective: 1000px;
- perspective: 1000px;
- }
- .carousel-inner > .item.next,
- .carousel-inner > .item.active.right {
- -webkit-transform: translate3d(100%, 0, 0);
- transform: translate3d(100%, 0, 0);
- left: 0;
- }
- .carousel-inner > .item.prev,
- .carousel-inner > .item.active.left {
- -webkit-transform: translate3d(-100%, 0, 0);
- transform: translate3d(-100%, 0, 0);
- left: 0;
- }
- .carousel-inner > .item.next.left,
- .carousel-inner > .item.prev.right,
- .carousel-inner > .item.active {
- -webkit-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
- left: 0;
- }
-}
-.carousel-inner > .active,
-.carousel-inner > .next,
-.carousel-inner > .prev {
- display: block;
-}
-.carousel-inner > .active {
- left: 0;
-}
-.carousel-inner > .next,
-.carousel-inner > .prev {
- position: absolute;
- top: 0;
- width: 100%;
-}
-.carousel-inner > .next {
- left: 100%;
-}
-.carousel-inner > .prev {
- left: -100%;
-}
-.carousel-inner > .next.left,
-.carousel-inner > .prev.right {
- left: 0;
-}
-.carousel-inner > .active.left {
- left: -100%;
-}
-.carousel-inner > .active.right {
- left: 100%;
-}
-.carousel-control {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- width: 15%;
- font-size: 20px;
- color: #fff;
- text-align: center;
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
- background-color: rgba(0, 0, 0, 0);
- filter: alpha(opacity=50);
- opacity: 0.5;
-}
-.carousel-control.left {
- background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
- background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
- background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
- background-repeat: repeat-x;
-}
-.carousel-control.right {
- right: 0;
- left: auto;
- background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
- background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
- background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
- background-repeat: repeat-x;
-}
-.carousel-control:hover,
-.carousel-control:focus {
- color: #fff;
- text-decoration: none;
- outline: 0;
- filter: alpha(opacity=90);
- opacity: 0.9;
-}
-.carousel-control .icon-prev,
-.carousel-control .icon-next,
-.carousel-control .glyphicon-chevron-left,
-.carousel-control .glyphicon-chevron-right {
- position: absolute;
- top: 50%;
- z-index: 5;
- display: inline-block;
- margin-top: -10px;
-}
-.carousel-control .icon-prev,
-.carousel-control .glyphicon-chevron-left {
- left: 50%;
- margin-left: -10px;
-}
-.carousel-control .icon-next,
-.carousel-control .glyphicon-chevron-right {
- right: 50%;
- margin-right: -10px;
-}
-.carousel-control .icon-prev,
-.carousel-control .icon-next {
- width: 20px;
- height: 20px;
- font-family: serif;
- line-height: 1;
-}
-.carousel-control .icon-prev:before {
- content: "\2039";
-}
-.carousel-control .icon-next:before {
- content: "\203a";
-}
-.carousel-indicators {
- position: absolute;
- bottom: 10px;
- left: 50%;
- z-index: 15;
- width: 60%;
- padding-left: 0;
- margin-left: -30%;
- text-align: center;
- list-style: none;
-}
-.carousel-indicators li {
- display: inline-block;
- width: 10px;
- height: 10px;
- margin: 1px;
- text-indent: -999px;
- cursor: pointer;
- background-color: #000 \9;
- background-color: rgba(0, 0, 0, 0);
- border: 1px solid #fff;
- border-radius: 10px;
-}
-.carousel-indicators .active {
- width: 12px;
- height: 12px;
- margin: 0;
- background-color: #fff;
-}
-.carousel-caption {
- position: absolute;
- right: 15%;
- bottom: 20px;
- left: 15%;
- z-index: 10;
- padding-top: 20px;
- padding-bottom: 20px;
- color: #fff;
- text-align: center;
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
-}
-.carousel-caption .btn {
- text-shadow: none;
-}
-@media screen and (min-width: 768px) {
- .carousel-control .glyphicon-chevron-left,
- .carousel-control .glyphicon-chevron-right,
- .carousel-control .icon-prev,
- .carousel-control .icon-next {
- width: 30px;
- height: 30px;
- margin-top: -10px;
- font-size: 30px;
- }
- .carousel-control .glyphicon-chevron-left,
- .carousel-control .icon-prev {
- margin-left: -10px;
- }
- .carousel-control .glyphicon-chevron-right,
- .carousel-control .icon-next {
- margin-right: -10px;
- }
- .carousel-caption {
- right: 20%;
- left: 20%;
- padding-bottom: 30px;
- }
- .carousel-indicators {
- bottom: 20px;
- }
-}
-.clearfix:before,
-.clearfix:after,
-.dl-horizontal dd:before,
-.dl-horizontal dd:after,
-.container:before,
-.container:after,
-.container-fluid:before,
-.container-fluid:after,
-.row:before,
-.row:after,
-.form-horizontal .form-group:before,
-.form-horizontal .form-group:after,
-.btn-toolbar:before,
-.btn-toolbar:after,
-.btn-group-vertical > .btn-group:before,
-.btn-group-vertical > .btn-group:after,
-.nav:before,
-.nav:after,
-.navbar:before,
-.navbar:after,
-.navbar-header:before,
-.navbar-header:after,
-.navbar-collapse:before,
-.navbar-collapse:after,
-.pager:before,
-.pager:after,
-.panel-body:before,
-.panel-body:after,
-.modal-header:before,
-.modal-header:after,
-.modal-footer:before,
-.modal-footer:after {
- display: table;
- content: " ";
-}
-.clearfix:after,
-.dl-horizontal dd:after,
-.container:after,
-.container-fluid:after,
-.row:after,
-.form-horizontal .form-group:after,
-.btn-toolbar:after,
-.btn-group-vertical > .btn-group:after,
-.nav:after,
-.navbar:after,
-.navbar-header:after,
-.navbar-collapse:after,
-.pager:after,
-.panel-body:after,
-.modal-header:after,
-.modal-footer:after {
- clear: both;
-}
-.center-block {
- display: block;
- margin-right: auto;
- margin-left: auto;
-}
-.pull-right {
- float: right !important;
-}
-.pull-left {
- float: left !important;
-}
-.hide {
- display: none !important;
-}
-.show {
- display: block !important;
-}
-.invisible {
- visibility: hidden;
-}
-.text-hide {
- font: 0/0 a;
- color: transparent;
- text-shadow: none;
- background-color: transparent;
- border: 0;
-}
-.hidden {
- display: none !important;
-}
-.affix {
- position: fixed;
-}
-@-ms-viewport {
- width: device-width;
-}
-.visible-xs,
-.visible-sm,
-.visible-md,
-.visible-lg {
- display: none !important;
-}
-.visible-xs-block,
-.visible-xs-inline,
-.visible-xs-inline-block,
-.visible-sm-block,
-.visible-sm-inline,
-.visible-sm-inline-block,
-.visible-md-block,
-.visible-md-inline,
-.visible-md-inline-block,
-.visible-lg-block,
-.visible-lg-inline,
-.visible-lg-inline-block {
- display: none !important;
-}
-@media (max-width: 767px) {
- .visible-xs {
- display: block !important;
- }
- table.visible-xs {
- display: table !important;
- }
- tr.visible-xs {
- display: table-row !important;
- }
- th.visible-xs,
- td.visible-xs {
- display: table-cell !important;
- }
-}
-@media (max-width: 767px) {
- .visible-xs-block {
- display: block !important;
- }
-}
-@media (max-width: 767px) {
- .visible-xs-inline {
- display: inline !important;
- }
-}
-@media (max-width: 767px) {
- .visible-xs-inline-block {
- display: inline-block !important;
- }
-}
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-sm {
- display: block !important;
- }
- table.visible-sm {
- display: table !important;
- }
- tr.visible-sm {
- display: table-row !important;
- }
- th.visible-sm,
- td.visible-sm {
- display: table-cell !important;
- }
-}
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-sm-block {
- display: block !important;
- }
-}
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-sm-inline {
- display: inline !important;
- }
-}
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-sm-inline-block {
- display: inline-block !important;
- }
-}
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-md {
- display: block !important;
- }
- table.visible-md {
- display: table !important;
- }
- tr.visible-md {
- display: table-row !important;
- }
- th.visible-md,
- td.visible-md {
- display: table-cell !important;
- }
-}
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-md-block {
- display: block !important;
- }
-}
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-md-inline {
- display: inline !important;
- }
-}
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-md-inline-block {
- display: inline-block !important;
- }
-}
-@media (min-width: 1200px) {
- .visible-lg {
- display: block !important;
- }
- table.visible-lg {
- display: table !important;
- }
- tr.visible-lg {
- display: table-row !important;
- }
- th.visible-lg,
- td.visible-lg {
- display: table-cell !important;
- }
-}
-@media (min-width: 1200px) {
- .visible-lg-block {
- display: block !important;
- }
-}
-@media (min-width: 1200px) {
- .visible-lg-inline {
- display: inline !important;
- }
-}
-@media (min-width: 1200px) {
- .visible-lg-inline-block {
- display: inline-block !important;
- }
-}
-@media (max-width: 767px) {
- .hidden-xs {
- display: none !important;
- }
-}
-@media (min-width: 768px) and (max-width: 991px) {
- .hidden-sm {
- display: none !important;
- }
-}
-@media (min-width: 992px) and (max-width: 1199px) {
- .hidden-md {
- display: none !important;
- }
-}
-@media (min-width: 1200px) {
- .hidden-lg {
- display: none !important;
- }
-}
-.visible-print {
- display: none !important;
-}
-@media print {
- .visible-print {
- display: block !important;
- }
- table.visible-print {
- display: table !important;
- }
- tr.visible-print {
- display: table-row !important;
- }
- th.visible-print,
- td.visible-print {
- display: table-cell !important;
- }
-}
-.visible-print-block {
- display: none !important;
-}
-@media print {
- .visible-print-block {
- display: block !important;
- }
-}
-.visible-print-inline {
- display: none !important;
-}
-@media print {
- .visible-print-inline {
- display: inline !important;
- }
-}
-.visible-print-inline-block {
- display: none !important;
-}
-@media print {
- .visible-print-inline-block {
- display: inline-block !important;
- }
-}
-@media print {
- .hidden-print {
- display: none !important;
- }
-}
-/*# sourceMappingURL=bootstrap.css.map */
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css.map b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css.map
deleted file mode 100755
index caac3e612..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["bootstrap.css","less/normalize.less","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"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A;CHkR9C;AGjRmC;EAAW,iBAAA;CHoR9C;AGnRmC;EAAW,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;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rDA;EC8DG,oBAAA;CfwnDH;ActrDA;EC8DG,oBAAA;Cf2nDH;AczrDA;EC8DG,WAAA;Cf8nDH;Ac5rDA;EC8DG,oBAAA;CfioDH;Ac/rDA;EC8DG,oBAAA;CfooDH;AclsDA;EC8DG,WAAA;CfuoDH;AcrsDA;EC8DG,oBAAA;Cf0oDH;AcxsDA;EC8DG,oBAAA;Cf6oDH;Ac3sDA;EC8DG,WAAA;CfgpDH;Ac9sDA;EC8DG,oBAAA;CfmpDH;AcjtDA;EC8DG,mBAAA;CfspDH;AcptDA;ECmEG,YAAA;CfopDH;AcvtDA;ECoDG,WAAA;CfsqDH;Ac1tDA;ECoDG,mBAAA;CfyqDH;Ac7tDA;ECoDG,mBAAA;Cf4qDH;AchuDA;ECoDG,UAAA;Cf+qDH;AcnuDA;ECoDG,mBAAA;CfkrDH;ActuDA;ECoDG,mBAAA;CfqrDH;AczuDA;ECoDG,UAAA;CfwrDH;Ac5uDA;ECoDG,mBAAA;Cf2rDH;Ac/uDA;ECoDG,mBAAA;Cf8rDH;AclvDA;ECoDG,UAAA;CfisDH;AcrvDA;ECoDG,mBAAA;CfosDH;AcxvDA;ECoDG,kBAAA;CfusDH;Ac3vDA;ECyDG,WAAA;CfqsDH;Ac9vDA;ECwEG,kBAAA;CfyrDH;AcjwDA;ECwEG,0BAAA;Cf4rDH;AcpwDA;ECwEG,0BAAA;Cf+rDH;AcvwDA;ECwEG,iBAAA;CfksDH;Ac1wDA;ECwEG,0BAAA;CfqsDH;Ac7wDA;ECwEG,0BAAA;CfwsDH;AchxDA;ECwEG,iBAAA;Cf2sDH;AcnxDA;ECwEG,0BAAA;Cf8sDH;ActxDA;ECwEG,0BAAA;CfitDH;AczxDA;ECwEG,iBAAA;CfotDH;Ac5xDA;ECwEG,0BAAA;CfutDH;Ac/xDA;ECwEG,yBAAA;Cf0tDH;AclyDA;ECwEG,gBAAA;Cf6tDH;Aa5tDD;ECzEC;;;;;;;;;;;;ICuCK,YAAA;Gf6wDH;EcpzDF;IC+CG,YAAA;GfwwDD;EcvzDF;IC+CG,oBAAA;Gf2wDD;Ec1zDF;IC+CG,oBAAA;Gf8wDD;Ec7zDF;IC+CG,WAAA;GfixDD;Ech0DF;IC+CG,oBAAA;GfoxDD;Ecn0DF;IC+CG,oBAAA;GfuxDD;Ect0DF;IC+CG,WAAA;Gf0xDD;Ecz0DF;IC+CG,oBAAA;Gf6xDD;Ec50DF;IC+CG,oBAAA;GfgyDD;Ec/0DF;IC+CG,WAAA;GfmyDD;Ecl1DF;IC+CG,oBAAA;GfsyDD;Ecr1DF;IC+CG,mBAAA;GfyyDD;Ecx1DF;IC8DG,YAAA;Gf6xDD;Ec31DF;IC8DG,oBAAA;GfgyDD;Ec91DF;IC8DG,oBAAA;GfmyDD;Ecj2DF;IC8DG,WAAA;GfsyDD;Ecp2DF;IC8DG,oBAAA;GfyyDD;Ecv2DF;IC8DG,oBAAA;Gf4yDD;Ec12DF;IC8DG,WAAA;Gf+yDD;Ec72DF;IC8DG,oBAAA;GfkzDD;Ech3DF;IC8DG,oBAAA;GfqzDD;Ecn3DF;IC8DG,WAAA;GfwzDD;Ect3DF;IC8DG,oBAAA;Gf2zDD;Ecz3DF;IC8DG,mBAAA;Gf8zDD;Ec53DF;ICmEG,YAAA;Gf4zDD;Ec/3DF;ICoDG,WAAA;Gf80DD;Ecl4DF;ICoDG,mBAAA;Gfi1DD;Ecr4DF;ICoDG,mBAAA;Gfo1DD;Ecx4DF;ICoDG,UAAA;Gfu1DD;Ec34DF;ICoDG,mBAAA;Gf01DD;Ec94DF;ICoDG,mBAAA;Gf61DD;Ecj5DF;ICoDG,UAAA;Gfg2DD;Ecp5DF;ICoDG,mBAAA;Gfm2DD;Ecv5DF;ICoDG,mBAAA;Gfs2DD;Ec15DF;ICoDG,UAAA;Gfy2DD;Ec75DF;ICoDG,mBAAA;Gf42DD;Ech6DF;ICoDG,kBAAA;Gf+2DD;Ecn6DF;ICyDG,WAAA;Gf62DD;Ect6DF;ICwEG,kBAAA;Gfi2DD;Ecz6DF;ICwEG,0BAAA;Gfo2DD;Ec56DF;ICwEG,0BAAA;Gfu2DD;Ec/6DF;ICwEG,iBAAA;Gf02DD;Ecl7DF;ICwEG,0BAAA;Gf62DD;Ecr7DF;ICwEG,0BAAA;Gfg3DD;Ecx7DF;ICwEG,iBAAA;Gfm3DD;Ec37DF;ICwEG,0BAAA;Gfs3DD;Ec97DF;ICwEG,0BAAA;Gfy3DD;Ecj8DF;ICwEG,iBAAA;Gf43DD;Ecp8DF;ICwEG,0BAAA;Gf+3DD;Ecv8DF;ICwEG,yBAAA;Gfk4DD;Ec18DF;ICwEG,gBAAA;Gfq4DD;CACF;Aa53DD;EClFC;;;;;;;;;;;;ICuCK,YAAA;Gfs7DH;Ec79DF;IC+CG,YAAA;Gfi7DD;Ech+DF;IC+CG,oBAAA;Gfo7DD;Ecn+DF;IC+CG,oBAAA;Gfu7DD;Ect+DF;IC+CG,WAAA;Gf07DD;Ecz+DF;IC+CG,oBAAA;Gf67DD;Ec5+DF;IC+CG,oBAAA;Gfg8DD;Ec/+DF;IC+CG,WAAA;Gfm8DD;Ecl/DF;IC+CG,oBAAA;Gfs8DD;Ecr/DF;IC+CG,oBAAA;Gfy8DD;Ecx/DF;IC+CG,WAAA;Gf48DD;Ec3/DF;IC+CG,oBAAA;Gf+8DD;Ec9/DF;IC+CG,mBAAA;Gfk9DD;EcjgEF;IC8DG,YAAA;Gfs8DD;EcpgEF;IC8DG,oBAAA;Gfy8DD;EcvgEF;IC8DG,oBAAA;Gf48DD;Ec1gEF;IC8DG,WAAA;Gf+8DD;Ec7gEF;IC8DG,oBAAA;Gfk9DD;EchhEF;IC8DG,oBAAA;Gfq9DD;EcnhEF;IC8DG,WAAA;Gfw9DD;EcthEF;IC8DG,oBAAA;Gf29DD;EczhEF;IC8DG,oBAAA;Gf89DD;Ec5hEF;IC8DG,WAAA;Gfi+DD;Ec/hEF;IC8DG,oBAAA;Gfo+DD;EcliEF;IC8DG,mBAAA;Gfu+DD;EcriEF;ICmEG,YAAA;Gfq+DD;EcxiEF;ICoDG,WAAA;Gfu/DD;Ec3iEF;ICoDG,mBAAA;Gf0/DD;Ec9iEF;ICoDG,mBAAA;Gf6/DD;EcjjEF;ICoDG,UAAA;GfggED;EcpjEF;ICoDG,mBAAA;GfmgED;EcvjEF;ICoDG,mBAAA;GfsgED;Ec1jEF;ICoDG,UAAA;GfygED;Ec7jEF;ICoDG,mBAAA;Gf4gED;EchkEF;ICoDG,mBAAA;Gf+gED;EcnkEF;ICoDG,UAAA;GfkhED;EctkEF;ICoDG,mBAAA;GfqhED;EczkEF;ICoDG,kBAAA;GfwhED;Ec5kEF;ICyDG,WAAA;GfshED;Ec/kEF;ICwEG,kBAAA;Gf0gED;EcllEF;ICwEG,0BAAA;Gf6gED;EcrlEF;ICwEG,0BAAA;GfghED;EcxlEF;ICwEG,iBAAA;GfmhED;Ec3lEF;ICwEG,0BAAA;GfshED;Ec9lEF;ICwEG,0BAAA;GfyhED;EcjmEF;ICwEG,iBAAA;Gf4hED;EcpmEF;ICwEG,0BAAA;Gf+hED;EcvmEF;ICwEG,0BAAA;GfkiED;Ec1mEF;ICwEG,iBAAA;GfqiED;Ec7mEF;ICwEG,0BAAA;GfwiED;EchnEF;ICwEG,yBAAA;Gf2iED;EcnnEF;ICwEG,gBAAA;Gf8iED;CACF;Aa5hED;EC3FC;;;;;;;;;;;;ICuCK,YAAA;Gf+lEH;EctoEF;IC+CG,YAAA;Gf0lED;EczoEF;IC+CG,oBAAA;Gf6lED;Ec5oEF;IC+CG,oBAAA;GfgmED;Ec/oEF;IC+CG,WAAA;GfmmED;EclpEF;IC+CG,oBAAA;GfsmED;EcrpEF;IC+CG,oBAAA;GfymED;EcxpEF;IC+CG,WAAA;Gf4mED;Ec3pEF;IC+CG,oBAAA;Gf+mED;Ec9pEF;IC+CG,oBAAA;GfknED;EcjqEF;IC+CG,WAAA;GfqnED;EcpqEF;IC+CG,oBAAA;GfwnED;EcvqEF;IC+CG,mBAAA;Gf2nED;Ec1qEF;IC8DG,YAAA;Gf+mED;Ec7qEF;IC8DG,oBAAA;GfknED;EchrEF;IC8DG,oBAAA;GfqnED;EcnrEF;IC8DG,WAAA;GfwnED;EctrEF;IC8DG,oBAAA;Gf2nED;EczrEF;IC8DG,oBAAA;Gf8nED;Ec5rEF;IC8DG,WAAA;GfioED;Ec/rEF;IC8DG,oBAAA;GfooED;EclsEF;IC8DG,oBAAA;GfuoED;EcrsEF;IC8DG,WAAA;Gf0oED;EcxsEF;IC8DG,oBAAA;Gf6oED;Ec3sEF;IC8DG,mBAAA;GfgpED;Ec9sEF;ICmEG,YAAA;Gf8oED;EcjtEF;ICoDG,WAAA;GfgqED;EcptEF;ICoDG,mBAAA;GfmqED;EcvtEF;ICoDG,mBAAA;GfsqED;Ec1tEF;ICoDG,UAAA;GfyqED;Ec7tEF;ICoDG,mBAAA;Gf4qED;EchuEF;ICoDG,mBAAA;Gf+qED;EcnuEF;ICoDG,UAAA;GfkrED;EctuEF;ICoDG,mBAAA;GfqrED;EczuEF;ICoDG,mBAAA;GfwrED;Ec5uEF;ICoDG,UAAA;Gf2rED;Ec/uEF;ICoDG,mBAAA;Gf8rED;EclvEF;ICoDG,kBAAA;GfisED;EcrvEF;ICyDG,WAAA;Gf+rED;EcxvEF;ICwEG,kBAAA;GfmrED;Ec3vEF;ICwEG,0BAAA;GfsrED;Ec9vEF;ICwEG,0BAAA;GfyrED;EcjwEF;ICwEG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","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable\n\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// 1. Remove the bottom border in Chrome 57- and Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n//\n\nabbr[title] {\n border-bottom: none; // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","// stylelint-disable declaration-no-important, selector-no-qualifying-type\n\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important; // Black prints faster: h5bp.com/s\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n}\n","// stylelint-disable value-list-comma-newline-after, value-list-comma-space-after, indentation, declaration-colon-newline-after, font-family-no-missing-generic-family-keyword\n\n//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star \n\n// Import the fonts\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"@{icon-font-path}@{icon-font-name}.eot\");\n src: url(\"@{icon-font-path}@{icon-font-name}.eot?#iefix\") format(\"embedded-opentype\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff2\") format(\"woff2\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff\") format(\"woff\"),\n url(\"@{icon-font-path}@{icon-font-name}.ttf\") format(\"truetype\"),\n url(\"@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}\") format(\"svg\");\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// https://getbootstrap.com/docs/3.4/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: https://a11yproject.com/posts/how-to-hide-content\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// stylelint-disable indentation, property-no-vendor-prefix, selector-no-vendor-prefix\n\n// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n word-wrap: break-word;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// stylelint-disable media-feature-name-no-vendor-prefix, media-feature-parentheses-space-inside, media-feature-name-no-unknown, indentation, at-rule-name-space-after\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","// stylelint-disable selector-list-comma-newline-after, selector-no-qualifying-type\n\n//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: 400;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n padding: .2em;\n background-color: @state-warning-bg;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: \"\\2014 \\00A0\"; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: \"\"; }\n &:after {\n content: \"\\00A0 \\2014\"; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n color: @pre-color;\n word-break: break-all;\n word-wrap: break-word;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n padding-right: ceil((@gutter / 2));\n padding-left: floor((@gutter / 2));\n margin-right: auto;\n margin-left: auto;\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-right: floor((@gutter / -2));\n margin-left: ceil((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-right: floor((@grid-gutter-width / 2));\n padding-left: ceil((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","// stylelint-disable selector-max-type, selector-max-compound-selectors, selector-no-qualifying-type\n\n//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n\n // Table cell sizing\n //\n // Reset default table behavior\n\n col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-column;\n float: none;\n }\n\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-cell;\n float: none;\n }\n }\n}\n\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\n\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n min-height: .01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n overflow-x: auto;\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * .75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type, property-no-vendor-prefix, media-feature-name-no-vendor-prefix\n\n//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: 700;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\ninput[type=\"search\"] {\n // Override content-box in Normalize (* isn't specific enough)\n .box-sizing(border-box);\n\n // Search inputs in iOS\n //\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n -webkit-appearance: none;\n appearance: none;\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n\n // Apply same disabled cursor tweak as for inputs\n // Some special care is needed because s don't inherit their parent's `cursor`.\n //\n // Note: Neither radios nor checkboxes can be readonly.\n &[disabled],\n &.disabled,\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in some browsers, due to the limited stylability of s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Unstyle the caret on ``s in IE10+.\n &::-ms-expand {\n background-color: transparent;\n border: 0;\n }\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won't be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don't honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655\n }\n\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Special styles for iOS temporal inputs\n//\n// In Mobile Safari, setting `display: block` on temporal inputs causes the\n// text within the input to become vertically misaligned. As a workaround, we\n// set a pixel line-height that matches the given height of the input, but only\n// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848\n//\n// Note that as of 9.3, iOS doesn't support `week`.\n\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"],\n input[type=\"time\"],\n input[type=\"datetime-local\"],\n input[type=\"month\"] {\n &.form-control {\n line-height: @input-height-base;\n }\n\n &.input-sm,\n .input-group-sm & {\n line-height: @input-height-small;\n }\n\n &.input-lg,\n .input-group-lg & {\n line-height: @input-height-large;\n }\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: @form-group-margin-bottom;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n\n // These are used on elements with descendants\n &.disabled,\n fieldset[disabled] & {\n label {\n cursor: @cursor-disabled;\n }\n }\n\n label {\n min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n }\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n\n // These are used directly on s\n &.disabled,\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n\n// Static form control text\n//\n// Apply class to a `p` element to make any string of text align with labels in\n// a horizontal form layout.\n\n.form-control-static {\n min-height: (@line-height-computed + @font-size-base);\n // Size it appropriately next to real form controls\n padding-top: (@padding-base-vertical + 1);\n padding-bottom: (@padding-base-vertical + 1);\n // Remove default margin from `p`\n margin-bottom: 0;\n\n &.input-lg,\n &.input-sm {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n// Form control sizing\n//\n// Build on `.form-control` with modifier classes to decrease or increase the\n// height and font-size of form controls.\n//\n// The `.form-group-* form-control` variations are sadly duplicated to avoid the\n// issue documented in https://github.com/twbs/bootstrap/issues/15074.\n\n.input-sm {\n .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);\n}\n.form-group-sm {\n .form-control {\n height: @input-height-small;\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n line-height: @line-height-small;\n border-radius: @input-border-radius-small;\n }\n select.form-control {\n height: @input-height-small;\n line-height: @input-height-small;\n }\n textarea.form-control,\n select[multiple].form-control {\n height: auto;\n }\n .form-control-static {\n height: @input-height-small;\n min-height: (@line-height-computed + @font-size-small);\n padding: (@padding-small-vertical + 1) @padding-small-horizontal;\n font-size: @font-size-small;\n line-height: @line-height-small;\n }\n}\n\n.input-lg {\n .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);\n}\n.form-group-lg {\n .form-control {\n height: @input-height-large;\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-large;\n border-radius: @input-border-radius-large;\n }\n select.form-control {\n height: @input-height-large;\n line-height: @input-height-large;\n }\n textarea.form-control,\n select[multiple].form-control {\n height: auto;\n }\n .form-control-static {\n height: @input-height-large;\n min-height: (@line-height-computed + @font-size-large);\n padding: (@padding-large-vertical + 1) @padding-large-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-large;\n }\n}\n\n\n// Form control feedback states\n//\n// Apply contextual and semantic states to individual form controls.\n\n.has-feedback {\n // Enable absolute positioning\n position: relative;\n\n // Ensure icons don't overlap text\n .form-control {\n padding-right: (@input-height-base * 1.25);\n }\n}\n// Feedback icon (requires .glyphicon classes)\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2; // Ensure icon is above input groups\n display: block;\n width: @input-height-base;\n height: @input-height-base;\n line-height: @input-height-base;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: @input-height-large;\n height: @input-height-large;\n line-height: @input-height-large;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: @input-height-small;\n height: @input-height-small;\n line-height: @input-height-small;\n}\n\n// Feedback states\n.has-success {\n .form-control-validation(@state-success-text; @state-success-text; @state-success-bg);\n}\n.has-warning {\n .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg);\n}\n.has-error {\n .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);\n}\n\n// Reposition feedback icon if input has visible label above\n.has-feedback label {\n\n & ~ .form-control-feedback {\n top: (@line-height-computed + 5); // Height of the `label` and its margin\n }\n &.sr-only ~ .form-control-feedback {\n top: 0;\n }\n}\n\n\n// Help text\n//\n// Apply to any element you wish to create light text for placement immediately\n// below a form control. Use for general help, formatting, or instructional text.\n\n.help-block {\n display: block; // account for any element using help-block\n margin-top: 5px;\n margin-bottom: 10px;\n color: lighten(@text-color, 25%); // lighten the text some for contrast\n}\n\n\n// Inline forms\n//\n// Make forms appear inline(-block) by adding the `.form-inline` class. Inline\n// forms begin stacked on extra small (mobile) devices and then go inline when\n// viewports reach <768px.\n//\n// Requires wrapping inputs and labels with `.form-group` for proper display of\n// default HTML form controls and our custom form controls (e.g., input groups).\n//\n// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.\n\n.form-inline {\n\n // Kick in the inline\n @media (min-width: @screen-sm-min) {\n // Inline-block all the things for \"inline\"\n .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // In navbar-form, allow folks to *not* use `.form-group`\n .form-control {\n display: inline-block;\n width: auto; // Prevent labels from stacking above inputs in `.form-group`\n vertical-align: middle;\n }\n\n // Make static controls behave like regular ones\n .form-control-static {\n display: inline-block;\n }\n\n .input-group {\n display: inline-table;\n vertical-align: middle;\n\n .input-group-addon,\n .input-group-btn,\n .form-control {\n width: auto;\n }\n }\n\n // Input groups need that 100% width though\n .input-group > .form-control {\n width: 100%;\n }\n\n .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // Remove default margin on radios/checkboxes that were used for stacking, and\n // then undo the floating of radios and checkboxes to match.\n .radio,\n .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n\n label {\n padding-left: 0;\n }\n }\n .radio input[type=\"radio\"],\n .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n\n // Re-override the feedback icon.\n .has-feedback .form-control-feedback {\n top: 0;\n }\n }\n}\n\n\n// Horizontal forms\n//\n// Horizontal forms are built on grid classes and allow you to create forms with\n// labels on the left and inputs on the right.\n\n.form-horizontal {\n\n // Consistent vertical alignment of radios and checkboxes\n //\n // Labels also get some reset styles, but that is scoped to a media query below.\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n padding-top: (@padding-base-vertical + 1); // Default padding plus a border\n margin-top: 0;\n margin-bottom: 0;\n }\n // Account for padding we're adding to ensure the alignment and of help text\n // and other content below items\n .radio,\n .checkbox {\n min-height: (@line-height-computed + (@padding-base-vertical + 1));\n }\n\n // Make form groups behave like rows\n .form-group {\n .make-row();\n }\n\n // Reset spacing and right align labels, but scope to media queries so that\n // labels on narrow viewports stack the same as a default form example.\n @media (min-width: @screen-sm-min) {\n .control-label {\n padding-top: (@padding-base-vertical + 1); // Default padding plus a border\n margin-bottom: 0;\n text-align: right;\n }\n }\n\n // Validation states\n //\n // Reposition the icon because it's now within a grid column and columns have\n // `position: relative;` on them. Also accounts for the grid gutter padding.\n .has-feedback .form-control-feedback {\n right: floor((@grid-gutter-width / 2));\n }\n\n // Form group sizes\n //\n // Quick utility class for applying `.input-lg` and `.input-sm` styles to the\n // inputs and labels within a `.form-group`.\n .form-group-lg {\n @media (min-width: @screen-sm-min) {\n .control-label {\n padding-top: (@padding-large-vertical + 1);\n font-size: @font-size-large;\n }\n }\n }\n .form-group-sm {\n @media (min-width: @screen-sm-min) {\n .control-label {\n padding-top: (@padding-small-vertical + 1);\n font-size: @font-size-small;\n }\n }\n }\n}\n","// Form validation states\n//\n// Used in forms.less to generate the form validation CSS for warnings, errors,\n// and successes.\n\n.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {\n // Color the label and help text\n .help-block,\n .control-label,\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline,\n &.radio label,\n &.checkbox label,\n &.radio-inline label,\n &.checkbox-inline label {\n color: @text-color;\n }\n // Set the border and box shadow on specific inputs to match\n .form-control {\n border-color: @border-color;\n .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075)); // Redeclare so transitions work\n &:focus {\n border-color: darken(@border-color, 10%);\n @shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px lighten(@border-color, 20%);\n .box-shadow(@shadow);\n }\n }\n // Set validation states also for addons\n .input-group-addon {\n color: @text-color;\n background-color: @background-color;\n border-color: @border-color;\n }\n // Optional feedback icon\n .form-control-feedback {\n color: @text-color;\n }\n}\n\n\n// Form control focus state\n//\n// Generate a customized focus state and for any input with the specified color,\n// which defaults to the `@input-border-focus` variable.\n//\n// We highly encourage you to not customize the default value, but instead use\n// this to tweak colors on an as-needed basis. This aesthetic change is based on\n// WebKit's default styles, but applicable to a wider range of browsers. Its\n// usability and accessibility should be taken into account with any change.\n//\n// Example usage: change the default blue border and shadow to white for better\n// contrast against a dark gray background.\n.form-control-focus(@color: @input-border-focus) {\n @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);\n &:focus {\n border-color: @color;\n outline: 0;\n .box-shadow(~\"inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px @{color-rgba}\");\n }\n}\n\n// Form control sizing\n//\n// Relative text size, padding, and border-radii changes for form controls. For\n// horizontal sizing, wrap controls in the predefined grid classes. ``\n// element gets special love because it's special, and that's a fact!\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n background-image: none;\n outline: 0;\n .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n .opacity(.65);\n .box-shadow(none);\n }\n\n a& {\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n font-weight: 400;\n color: @link-color;\n border-radius: 0;\n\n &,\n &:active,\n &.active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 10%);\n background-image: none;\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n","// Opacity\n\n.opacity(@opacity) {\n @opacity-ie: (@opacity * 100); // IE8 filter\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n opacity: @opacity;\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition-property(~\"height, visibility\");\n .transition-duration(.35s);\n .transition-timing-function(ease);\n}\n","//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base dashed;\n border-top: @caret-width-base solid ~\"\\9\"; // IE8\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropup,\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n list-style: none;\n background-color: @dropdown-bg;\n background-clip: padding-box;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0, 0, 0, .175));\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n\n &:hover,\n &:focus {\n color: @dropdown-link-hover-color;\n text-decoration: none;\n background-color: @dropdown-link-hover-bg;\n }\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n background-color: @dropdown-link-active-bg;\n outline: 0;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n\n // Nuke hover/focus effects\n &:hover,\n &:focus {\n text-decoration: none;\n cursor: @cursor-disabled;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n right: 0;\n left: auto; // Reset the default from `.dropdown-menu`\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n white-space: nowrap; // as with > li > a\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you're set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n content: \"\";\n border-top: 0;\n border-bottom: @caret-width-base dashed;\n border-bottom: @caret-width-base solid ~\"\\9\"; // IE8\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n","// Horizontal dividers\n//\n// Dividers (basically an hr) within dropdowns and nav lists\n\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n","// stylelint-disable selector-no-qualifying-type */\n\n//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child's margin\n &:extend(.clearfix all);\n\n .btn,\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn't apply, given that a .dropdown-menu is used immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don't show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0, 0, 0, .125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n .border-top-radius(@btn-border-radius-base);\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n .border-top-radius(0);\n .border-bottom-radius(@btn-border-radius-base);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n\n > .btn-group .dropdown-menu {\n left: auto;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser's form validation feedback, powered by the\n// `required` attribute, we have to \"hide\" the inputs via `clip`. We cannot use\n// `display: none;` or `visibility: hidden;` as that also hides the popover.\n// Simply visually hiding the inputs via `opacity` would leave them clickable in\n// certain cases which is prevented by using `clip` and `pointer-events`.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 and\n// https://github.com/twbs/bootstrap/pull/14559 for more information.\n\n[data-toggle=\"buttons\"] {\n > .btn,\n > .btn-group > .btn {\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n }\n }\n}\n","// Single side border-radius\n\n.border-top-radius(@radius) {\n border-top-left-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-top-right-radius: @radius;\n border-bottom-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-top-left-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n\n &:focus {\n z-index: 3;\n }\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n .input-lg();\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n .input-sm();\n}\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: 400;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @input-border-radius;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @input-border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @input-border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n z-index: 2;\n margin-left: -1px;\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type, selector-max-type\n\n//\n// Navs\n// --------------------------------------------------\n\n\n// Base class\n// --------------------------------------------------\n\n.nav {\n padding-left: 0; // Override default ul/ol\n margin-bottom: 0;\n list-style: none;\n &:extend(.clearfix all);\n\n > li {\n position: relative;\n display: block;\n\n > a {\n position: relative;\n display: block;\n padding: @nav-link-padding;\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @nav-link-hover-bg;\n }\n }\n\n // Disabled state sets text to gray and nukes hover/tab effects\n &.disabled > a {\n color: @nav-disabled-link-color;\n\n &:hover,\n &:focus {\n color: @nav-disabled-link-hover-color;\n text-decoration: none;\n cursor: @cursor-disabled;\n background-color: transparent;\n }\n }\n }\n\n // Open dropdowns\n .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @nav-link-hover-bg;\n border-color: @link-color;\n }\n }\n\n // Nav dividers (deprecated with v3.0.1)\n //\n // This should have been removed in v3 with the dropping of `.nav-list`, but\n // we missed it. We don't currently support this anywhere, but in the interest\n // of maintaining backward compatibility in case you use it, it's deprecated.\n .nav-divider {\n .nav-divider();\n }\n\n // Prevent IE8 from misplacing imgs\n //\n // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989\n > li > a > img {\n max-width: none;\n }\n}\n\n\n// Tabs\n// -------------------------\n\n// Give the tabs something to sit on\n.nav-tabs {\n border-bottom: 1px solid @nav-tabs-border-color;\n > li {\n float: left;\n // Make the list-items overlay the bottom border\n margin-bottom: -1px;\n\n // Actual tabs (as links)\n > a {\n margin-right: 2px;\n line-height: @line-height-base;\n border: 1px solid transparent;\n border-radius: @border-radius-base @border-radius-base 0 0;\n &:hover {\n border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;\n }\n }\n\n // Active state, and its :hover to override normal :hover\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-tabs-active-link-hover-color;\n cursor: default;\n background-color: @nav-tabs-active-link-hover-bg;\n border: 1px solid @nav-tabs-active-link-hover-border-color;\n border-bottom-color: transparent;\n }\n }\n }\n // pulling this in mainly for less shorthand\n &.nav-justified {\n .nav-justified();\n .nav-tabs-justified();\n }\n}\n\n\n// Pills\n// -------------------------\n.nav-pills {\n > li {\n float: left;\n\n // Links rendered as pills\n > a {\n border-radius: @nav-pills-border-radius;\n }\n + li {\n margin-left: 2px;\n }\n\n // Active state\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-pills-active-link-hover-color;\n background-color: @nav-pills-active-link-hover-bg;\n }\n }\n }\n}\n\n\n// Stacked pills\n.nav-stacked {\n > li {\n float: none;\n + li {\n margin-top: 2px;\n margin-left: 0; // no need for this gap between nav items\n }\n }\n}\n\n\n// Nav variations\n// --------------------------------------------------\n\n// Justified nav links\n// -------------------------\n\n.nav-justified {\n width: 100%;\n\n > li {\n float: none;\n > a {\n margin-bottom: 5px;\n text-align: center;\n }\n }\n\n > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n }\n\n @media (min-width: @screen-sm-min) {\n > li {\n display: table-cell;\n width: 1%;\n > a {\n margin-bottom: 0;\n }\n }\n }\n}\n\n// Move borders to anchors instead of bottom of list\n//\n// Mixin for adding on top the shared `.nav-justified` styles for our tabs\n.nav-tabs-justified {\n border-bottom: 0;\n\n > li > a {\n // Override margin from .nav-tabs\n margin-right: 0;\n border-radius: @border-radius-base;\n }\n\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border: 1px solid @nav-tabs-justified-link-border-color;\n }\n\n @media (min-width: @screen-sm-min) {\n > li > a {\n border-bottom: 1px solid @nav-tabs-justified-link-border-color;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border-bottom-color: @nav-tabs-justified-active-link-border-color;\n }\n }\n}\n\n\n// Tabbable tabs\n// -------------------------\n\n// Hide tabbable panes to start, show them when `.active`\n.tab-content {\n > .tab-pane {\n display: none;\n }\n > .active {\n display: block;\n }\n}\n\n\n// Dropdowns\n// -------------------------\n\n// Specific dropdowns\n.nav-tabs .dropdown-menu {\n // make dropdown border overlap tab border\n margin-top: -1px;\n // Remove the top rounded corners here since there is a hard edge above the menu\n .border-top-radius(0);\n}\n","// stylelint-disable selector-max-type, selector-max-compound-selectors, selector-max-combinators, selector-max-class, declaration-no-important, selector-no-qualifying-type\n\n//\n// Navbars\n// --------------------------------------------------\n\n\n// Wrapper and base class\n//\n// Provide a static navbar from which we expand to create full-width, fixed, and\n// other navbar variations.\n\n.navbar {\n position: relative;\n min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)\n margin-bottom: @navbar-margin-bottom;\n border: 1px solid transparent;\n\n // Prevent floats from breaking the navbar\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: @navbar-border-radius;\n }\n}\n\n\n// Navbar heading\n//\n// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy\n// styling of responsive aspects.\n\n.navbar-header {\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n }\n}\n\n\n// Navbar collapse (body)\n//\n// Group your navbar content into this for easy collapsing and expanding across\n// various device sizes. By default, this content is collapsed when <768px, but\n// will expand past that for a horizontal display.\n//\n// To start (on mobile devices) the navbar links, forms, and buttons are stacked\n// vertically and include a `max-height` to overflow in case you have too much\n// content for the user's viewport.\n\n.navbar-collapse {\n padding-right: @navbar-padding-horizontal;\n padding-left: @navbar-padding-horizontal;\n overflow-x: visible;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);\n &:extend(.clearfix all);\n -webkit-overflow-scrolling: touch;\n\n &.in {\n overflow-y: auto;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border-top: 0;\n box-shadow: none;\n\n &.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0; // Override default setting\n overflow: visible !important;\n }\n\n &.in {\n overflow-y: visible;\n }\n\n // Undo the collapse side padding for navbars with containers to ensure\n // alignment of right-aligned contents.\n .navbar-fixed-top &,\n .navbar-static-top &,\n .navbar-fixed-bottom & {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n .navbar-collapse {\n max-height: @navbar-collapse-max-height;\n\n @media (max-device-width: @screen-xs-min) and (orientation: landscape) {\n max-height: 200px;\n }\n }\n\n // Fix the top/bottom navbars when screen real estate supports it\n position: fixed;\n right: 0;\n left: 0;\n z-index: @zindex-navbar-fixed;\n\n // Undo the rounded corners\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0; // override .navbar defaults\n border-width: 1px 0 0;\n}\n\n\n// Both navbar header and collapse\n//\n// When a container is present, change the behavior of the header and collapse.\n\n.container,\n.container-fluid {\n > .navbar-header,\n > .navbar-collapse {\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n\n @media (min-width: @grid-float-breakpoint) {\n margin-right: 0;\n margin-left: 0;\n }\n }\n}\n\n\n//\n// Navbar alignment options\n//\n// Display the navbar across the entirety of the page or fixed it to the top or\n// bottom of the page.\n\n// Static top (unfixed, but 100% wide) navbar\n.navbar-static-top {\n z-index: @zindex-navbar;\n border-width: 0 0 1px;\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n\n// Brand/project name\n\n.navbar-brand {\n float: left;\n height: @navbar-height;\n padding: @navbar-padding-vertical @navbar-padding-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-computed;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n\n > img {\n display: block;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n .navbar > .container &,\n .navbar > .container-fluid & {\n margin-left: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Navbar toggle\n//\n// Custom button for toggling the `.navbar-collapse`, powered by the collapse\n// JavaScript plugin.\n\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: @navbar-padding-horizontal;\n .navbar-vertical-align(34px);\n background-color: transparent;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n border-radius: @border-radius-base;\n\n // We remove the `outline` here, but later compensate by attaching `:hover`\n // styles to `:focus`.\n &:focus {\n outline: 0;\n }\n\n // Bars\n .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n }\n .icon-bar + .icon-bar {\n margin-top: 4px;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n display: none;\n }\n}\n\n\n// Navbar nav links\n//\n// Builds on top of the `.nav` components with its own modifier class to make\n// the nav the full height of the horizontal nav (above 768px).\n\n.navbar-nav {\n margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;\n\n > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: @line-height-computed;\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n > li > a,\n .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n > li > a {\n line-height: @line-height-computed;\n &:hover,\n &:focus {\n background-image: none;\n }\n }\n }\n }\n\n // Uncollapse the nav\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin: 0;\n\n > li {\n float: left;\n > a {\n padding-top: @navbar-padding-vertical;\n padding-bottom: @navbar-padding-vertical;\n }\n }\n }\n}\n\n\n// Navbar form\n//\n// Extension of the `.form-inline` with some extra flavor for optimum display in\n// our navbars.\n\n.navbar-form {\n padding: 10px @navbar-padding-horizontal;\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n @shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);\n .box-shadow(@shadow);\n\n // Mixin behavior for optimum display\n .form-inline();\n\n .form-group {\n @media (max-width: @grid-float-breakpoint-max) {\n margin-bottom: 5px;\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n }\n\n // Vertically center in expanded, horizontal navbar\n .navbar-vertical-align(@input-height-base);\n\n // Undo 100% width for pull classes\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n .box-shadow(none);\n }\n}\n\n\n// Dropdown menus\n\n// Menu position and menu carets\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n .border-top-radius(0);\n}\n// Menu position and menu caret support for dropups via extra dropup class\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n .border-top-radius(@navbar-border-radius);\n .border-bottom-radius(0);\n}\n\n\n// Buttons in navbars\n//\n// Vertically center a button within a navbar (when *not* in a form).\n\n.navbar-btn {\n .navbar-vertical-align(@input-height-base);\n\n &.btn-sm {\n .navbar-vertical-align(@input-height-small);\n }\n &.btn-xs {\n .navbar-vertical-align(22);\n }\n}\n\n\n// Text in navbars\n//\n// Add a class to make any element properly align itself vertically within the navbars.\n\n.navbar-text {\n .navbar-vertical-align(@line-height-computed);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin-right: @navbar-padding-horizontal;\n margin-left: @navbar-padding-horizontal;\n }\n}\n\n\n// Component alignment\n//\n// Repurpose the pull utilities as their own navbar utilities to avoid specificity\n// issues with parents and chaining. Only do this when the navbar is uncollapsed\n// though so that navbar contents properly stack and align in mobile.\n//\n// Declared after the navbar components to ensure more specificity on the margins.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-left { .pull-left(); }\n .navbar-right {\n .pull-right();\n margin-right: -@navbar-padding-horizontal;\n\n ~ .navbar-right {\n margin-right: 0;\n }\n }\n}\n\n\n// Alternate navbars\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n background-color: @navbar-default-bg;\n border-color: @navbar-default-border;\n\n .navbar-brand {\n color: @navbar-default-brand-color;\n &:hover,\n &:focus {\n color: @navbar-default-brand-hover-color;\n background-color: @navbar-default-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-default-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-default-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n\n // Dropdown menu items\n // Remove background color from open dropdown\n > .open > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n > li > a {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n }\n }\n\n .navbar-toggle {\n border-color: @navbar-default-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-default-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-default-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: @navbar-default-border;\n }\n\n\n // Links in navbars\n //\n // Add a class to ensure links outside the navbar nav are colored correctly.\n\n .navbar-link {\n color: @navbar-default-link-color;\n &:hover {\n color: @navbar-default-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n }\n }\n }\n}\n\n// Inverse navbar\n\n.navbar-inverse {\n background-color: @navbar-inverse-bg;\n border-color: @navbar-inverse-border;\n\n .navbar-brand {\n color: @navbar-inverse-brand-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-brand-hover-color;\n background-color: @navbar-inverse-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-inverse-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-inverse-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n\n // Dropdowns\n > .open > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display\n .open .dropdown-menu {\n > .dropdown-header {\n border-color: @navbar-inverse-border;\n }\n .divider {\n background-color: @navbar-inverse-border;\n }\n > li > a {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n }\n }\n\n // Darken the responsive nav toggle\n .navbar-toggle {\n border-color: @navbar-inverse-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-inverse-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-inverse-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: darken(@navbar-inverse-bg, 7%);\n }\n\n .navbar-link {\n color: @navbar-inverse-link-color;\n &:hover {\n color: @navbar-inverse-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n }\n }\n }\n}\n","// Navbar vertical align\n//\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n","// stylelint-disable declaration-no-important\n\n//\n// Utility classes\n// --------------------------------------------------\n\n\n// Floats\n// -------------------------\n\n.clearfix {\n .clearfix();\n}\n.center-block {\n .center-block();\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n\n\n// Toggling content\n// -------------------------\n\n// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n .text-hide();\n}\n\n\n// Hide from screenreaders and browsers\n//\n// Credit: HTML5 Boilerplate\n\n.hidden {\n display: none !important;\n}\n\n\n// For Affix plugin\n// -------------------------\n\n.affix {\n position: fixed;\n}\n","//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n padding: 0 5px;\n color: @breadcrumb-color;\n content: \"@{breadcrumb-separator}\\00a0\"; // Unicode space added since inline-block means non-collapsing white-space\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n","//\n// Pagination (multiple pages)\n// --------------------------------------------------\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: @line-height-computed 0;\n border-radius: @border-radius-base;\n\n > li {\n display: inline; // Remove list-style and block-level defaults\n > a,\n > span {\n position: relative;\n float: left; // Collapse white-space\n padding: @padding-base-vertical @padding-base-horizontal;\n margin-left: -1px;\n line-height: @line-height-base;\n color: @pagination-color;\n text-decoration: none;\n background-color: @pagination-bg;\n border: 1px solid @pagination-border;\n\n &:hover,\n &:focus {\n z-index: 2;\n color: @pagination-hover-color;\n background-color: @pagination-hover-bg;\n border-color: @pagination-hover-border;\n }\n }\n &:first-child {\n > a,\n > span {\n margin-left: 0;\n .border-left-radius(@border-radius-base);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius-base);\n }\n }\n }\n\n > .active > a,\n > .active > span {\n &,\n &:hover,\n &:focus {\n z-index: 3;\n color: @pagination-active-color;\n cursor: default;\n background-color: @pagination-active-bg;\n border-color: @pagination-active-border;\n }\n }\n\n > .disabled {\n > span,\n > span:hover,\n > span:focus,\n > a,\n > a:hover,\n > a:focus {\n color: @pagination-disabled-color;\n cursor: @cursor-disabled;\n background-color: @pagination-disabled-bg;\n border-color: @pagination-disabled-border;\n }\n }\n}\n\n// Sizing\n// --------------------------------------------------\n\n// Large\n.pagination-lg {\n .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n// Small\n.pagination-sm {\n .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n","// Pagination\n\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n","//\n// Pager pagination\n// --------------------------------------------------\n\n\n.pager {\n padding-left: 0;\n margin: @line-height-computed 0;\n text-align: center;\n list-style: none;\n &:extend(.clearfix all);\n li {\n display: inline;\n > a,\n > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: @pager-bg;\n border: 1px solid @pager-border;\n border-radius: @pager-border-radius;\n }\n\n > a:hover,\n > a:focus {\n text-decoration: none;\n background-color: @pager-hover-bg;\n }\n }\n\n .next {\n > a,\n > span {\n float: right;\n }\n }\n\n .previous {\n > a,\n > span {\n float: left;\n }\n }\n\n .disabled {\n > a,\n > a:hover,\n > a:focus,\n > span {\n color: @pager-disabled-color;\n cursor: @cursor-disabled;\n background-color: @pager-bg;\n }\n }\n}\n","//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","// Labels\n\n.label-variant(@color) {\n background-color: @color;\n\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n","//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n line-height: @badge-line-height;\n color: @badge-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n\n .btn-xs &,\n .btn-group-xs > .btn & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n .list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n\n .list-group-item > & {\n float: right;\n }\n\n .list-group-item > & + & {\n margin-right: 5px;\n }\n\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n","//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding-top: @jumbotron-padding;\n padding-bottom: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container &,\n .container-fluid & {\n padding-right: (@grid-gutter-width / 2);\n padding-left: (@grid-gutter-width / 2);\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container &,\n .container-fluid & {\n padding-right: (@jumbotron-padding * 2);\n padding-left: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: @jumbotron-heading-font-size;\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Thumbnails\n// --------------------------------------------------\n\n\n// Mixin and adjust the regular image class\n.thumbnail {\n display: block;\n padding: @thumbnail-padding;\n margin-bottom: @line-height-computed;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(border .2s ease-in-out);\n\n > img,\n a > img {\n &:extend(.img-responsive);\n margin-right: auto;\n margin-left: auto;\n }\n\n // Add a hover state for linked versions only\n a&:hover,\n a&:focus,\n a&.active {\n border-color: @link-color;\n }\n\n // Image captions\n .caption {\n padding: @thumbnail-caption-padding;\n color: @thumbnail-caption-color;\n }\n}\n","//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n color: inherit; // Specified for the h4 to prevent conflicts of changing @headings-color\n }\n\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissible alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n// The misspelled .alert-dismissable was deprecated in 3.2.0.\n.alert-dismissable,\n.alert-dismissible {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n","// Alerts\n\n.alert-variant(@background; @border; @text-color) {\n color: @text-color;\n background-color: @background;\n border-color: @border;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n","// stylelint-disable at-rule-no-vendor-prefix\n\n//\n// Progress bars\n// --------------------------------------------------\n\n\n// Bar animations\n// -------------------------\n\n// WebKit\n@-webkit-keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n// Spec and IE10+\n@keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n\n// Bar itself\n// -------------------------\n\n// Outer container\n.progress {\n height: @line-height-computed;\n margin-bottom: @line-height-computed;\n overflow: hidden;\n background-color: @progress-bg;\n border-radius: @progress-border-radius;\n .box-shadow(inset 0 1px 2px rgba(0, 0, 0, .1));\n}\n\n// Bar of progress\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: @font-size-small;\n line-height: @line-height-computed;\n color: @progress-bar-color;\n text-align: center;\n background-color: @progress-bar-bg;\n .box-shadow(inset 0 -1px 0 rgba(0, 0, 0, .15));\n .transition(width .6s ease);\n}\n\n// Striped bars\n//\n// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar-striped` class, which you just add to an existing\n// `.progress-bar`.\n.progress-striped .progress-bar,\n.progress-bar-striped {\n #gradient > .striped();\n background-size: 40px 40px;\n}\n\n// Call animation for the active one\n//\n// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar.active` approach.\n.progress.active .progress-bar,\n.progress-bar.active {\n .animation(progress-bar-stripes 2s linear infinite);\n}\n\n\n// Variations\n// -------------------------\n\n.progress-bar-success {\n .progress-bar-variant(@progress-bar-success-bg);\n}\n\n.progress-bar-info {\n .progress-bar-variant(@progress-bar-info-bg);\n}\n\n.progress-bar-warning {\n .progress-bar-variant(@progress-bar-warning-bg);\n}\n\n.progress-bar-danger {\n .progress-bar-variant(@progress-bar-danger-bg);\n}\n","// stylelint-disable value-no-vendor-prefix, selector-max-id\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down\n background-repeat: repeat-x;\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\", argb(@start-color), argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n background-repeat: no-repeat;\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255, 255, 255, .15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Progress bars\n\n.progress-bar-variant(@color) {\n background-color: @color;\n\n // Deprecated parent class requirement as of v3.2.0\n .progress-striped & {\n #gradient > .striped();\n }\n}\n",".media {\n // Proper spacing between instances of .media\n margin-top: 15px;\n\n &:first-child {\n margin-top: 0;\n }\n}\n\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n\n.media-body {\n width: 10000px;\n}\n\n.media-object {\n display: block;\n\n // Fix collapse in webkit from max-width: 100% and display: table-cell.\n &.img-thumbnail {\n max-width: none;\n }\n}\n\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n\n.media-middle {\n vertical-align: middle;\n}\n\n.media-bottom {\n vertical-align: bottom;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n\n// Media list variation\n//\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on , , or .\n\n.list-group {\n // No need to set list-style: none; since .list-group-item is block level\n padding-left: 0; // reset padding because ul and ol\n margin-bottom: 20px;\n}\n\n\n// Individual list items\n//\n// Use on `li`s or `div`s within the `.list-group` parent.\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n // Place the border on the list items and negative margin up for better styling\n margin-bottom: -1px;\n background-color: @list-group-bg;\n border: 1px solid @list-group-border;\n\n // Round the first and last items\n &:first-child {\n .border-top-radius(@list-group-border-radius);\n }\n &:last-child {\n margin-bottom: 0;\n .border-bottom-radius(@list-group-border-radius);\n }\n\n // Disabled state\n &.disabled,\n &.disabled:hover,\n &.disabled:focus {\n color: @list-group-disabled-color;\n cursor: @cursor-disabled;\n background-color: @list-group-disabled-bg;\n\n // Force color to inherit for custom content\n .list-group-item-heading {\n color: inherit;\n }\n .list-group-item-text {\n color: @list-group-disabled-text-color;\n }\n }\n\n // Active class on item itself, not parent\n &.active,\n &.active:hover,\n &.active:focus {\n z-index: 2; // Place active items above their siblings for proper border styling\n color: @list-group-active-color;\n background-color: @list-group-active-bg;\n border-color: @list-group-active-border;\n\n // Force color to inherit for custom content\n .list-group-item-heading,\n .list-group-item-heading > small,\n .list-group-item-heading > .small {\n color: inherit;\n }\n .list-group-item-text {\n color: @list-group-active-text-color;\n }\n }\n}\n\n\n// Interactive list items\n//\n// Use anchor or button elements instead of `li`s or `div`s to create interactive items.\n// Includes an extra `.active` modifier class for showing selected items.\n\na.list-group-item,\nbutton.list-group-item {\n color: @list-group-link-color;\n\n .list-group-item-heading {\n color: @list-group-link-heading-color;\n }\n\n // Hover state\n &:hover,\n &:focus {\n color: @list-group-link-hover-color;\n text-decoration: none;\n background-color: @list-group-hover-bg;\n }\n}\n\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n\n\n// Contextual variants\n//\n// Add modifier classes to change text and background color on individual items.\n// Organizationally, this must come after the `:hover` states.\n\n.list-group-item-variant(success; @state-success-bg; @state-success-text);\n.list-group-item-variant(info; @state-info-bg; @state-info-text);\n.list-group-item-variant(warning; @state-warning-bg; @state-warning-text);\n.list-group-item-variant(danger; @state-danger-bg; @state-danger-text);\n\n\n// Custom content options\n//\n// Extra classes for creating well-formatted content within `.list-group-item`s.\n\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n","// List Groups\n\n.list-group-item-variant(@state; @background; @color) {\n .list-group-item-@{state} {\n color: @color;\n background-color: @background;\n\n a&,\n button& {\n color: @color;\n\n .list-group-item-heading {\n color: inherit;\n }\n\n &:hover,\n &:focus {\n color: @color;\n background-color: darken(@background, 5%);\n }\n &.active,\n &.active:hover,\n &.active:focus {\n color: #fff;\n background-color: @color;\n border-color: @color;\n }\n }\n }\n}\n","// stylelint-disable selector-max-type, selector-max-compound-selectors, selector-max-combinators, no-duplicate-selectors\n\n//\n// Panels\n// --------------------------------------------------\n\n\n// Base class\n.panel {\n margin-bottom: @line-height-computed;\n background-color: @panel-bg;\n border: 1px solid transparent;\n border-radius: @panel-border-radius;\n .box-shadow(0 1px 1px rgba(0, 0, 0, .05));\n}\n\n// Panel contents\n.panel-body {\n padding: @panel-body-padding;\n &:extend(.clearfix all);\n}\n\n// Optional heading\n.panel-heading {\n padding: @panel-heading-padding;\n border-bottom: 1px solid transparent;\n .border-top-radius((@panel-border-radius - 1));\n\n > .dropdown .dropdown-toggle {\n color: inherit;\n }\n}\n\n// Within heading, strip any `h*` tag of its default margins for spacing.\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: ceil((@font-size-base * 1.125));\n color: inherit;\n\n > a,\n > small,\n > .small,\n > small > a,\n > .small > a {\n color: inherit;\n }\n}\n\n// Optional footer (stays gray in every modifier class)\n.panel-footer {\n padding: @panel-footer-padding;\n background-color: @panel-footer-bg;\n border-top: 1px solid @panel-inner-border;\n .border-bottom-radius((@panel-border-radius - 1));\n}\n\n\n// List groups in panels\n//\n// By default, space out list group content from panel headings to account for\n// any kind of custom content between the two.\n\n.panel {\n > .list-group,\n > .panel-collapse > .list-group {\n margin-bottom: 0;\n\n .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n }\n\n // Add border top radius for first one\n &:first-child {\n .list-group-item:first-child {\n border-top: 0;\n .border-top-radius((@panel-border-radius - 1));\n }\n }\n\n // Add border bottom radius for last one\n &:last-child {\n .list-group-item:last-child {\n border-bottom: 0;\n .border-bottom-radius((@panel-border-radius - 1));\n }\n }\n }\n > .panel-heading + .panel-collapse > .list-group {\n .list-group-item:first-child {\n .border-top-radius(0);\n }\n }\n}\n// Collapse space between when there's no additional content.\n.panel-heading + .list-group {\n .list-group-item:first-child {\n border-top-width: 0;\n }\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n\n// Tables in panels\n//\n// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and\n// watch it go full width.\n\n.panel {\n > .table,\n > .table-responsive > .table,\n > .panel-collapse > .table {\n margin-bottom: 0;\n\n caption {\n padding-right: @panel-body-padding;\n padding-left: @panel-body-padding;\n }\n }\n // Add border top radius for first one\n > .table:first-child,\n > .table-responsive:first-child > .table:first-child {\n .border-top-radius((@panel-border-radius - 1));\n\n > thead:first-child,\n > tbody:first-child {\n > tr:first-child {\n border-top-left-radius: (@panel-border-radius - 1);\n border-top-right-radius: (@panel-border-radius - 1);\n\n td:first-child,\n th:first-child {\n border-top-left-radius: (@panel-border-radius - 1);\n }\n td:last-child,\n th:last-child {\n border-top-right-radius: (@panel-border-radius - 1);\n }\n }\n }\n }\n // Add border bottom radius for last one\n > .table:last-child,\n > .table-responsive:last-child > .table:last-child {\n .border-bottom-radius((@panel-border-radius - 1));\n\n > tbody:last-child,\n > tfoot:last-child {\n > tr:last-child {\n border-bottom-right-radius: (@panel-border-radius - 1);\n border-bottom-left-radius: (@panel-border-radius - 1);\n\n td:first-child,\n th:first-child {\n border-bottom-left-radius: (@panel-border-radius - 1);\n }\n td:last-child,\n th:last-child {\n border-bottom-right-radius: (@panel-border-radius - 1);\n }\n }\n }\n }\n > .panel-body + .table,\n > .panel-body + .table-responsive,\n > .table + .panel-body,\n > .table-responsive + .panel-body {\n border-top: 1px solid @table-border-color;\n }\n > .table > tbody:first-child > tr:first-child th,\n > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n }\n > .table-bordered,\n > .table-responsive > .table-bordered {\n border: 0;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n > thead,\n > tbody {\n > tr:first-child {\n > td,\n > th {\n border-bottom: 0;\n }\n }\n }\n > tbody,\n > tfoot {\n > tr:last-child {\n > td,\n > th {\n border-bottom: 0;\n }\n }\n }\n }\n > .table-responsive {\n margin-bottom: 0;\n border: 0;\n }\n}\n\n\n// Collapsible panels (aka, accordion)\n//\n// Wrap a series of panels in `.panel-group` to turn them into an accordion with\n// the help of our collapse JavaScript plugin.\n\n.panel-group {\n margin-bottom: @line-height-computed;\n\n // Tighten up margin so it's only between panels\n .panel {\n margin-bottom: 0;\n border-radius: @panel-border-radius;\n\n + .panel {\n margin-top: 5px;\n }\n }\n\n .panel-heading {\n border-bottom: 0;\n\n + .panel-collapse > .panel-body,\n + .panel-collapse > .list-group {\n border-top: 1px solid @panel-inner-border;\n }\n }\n\n .panel-footer {\n border-top: 0;\n + .panel-collapse .panel-body {\n border-bottom: 1px solid @panel-inner-border;\n }\n }\n}\n\n\n// Contextual variations\n.panel-default {\n .panel-variant(@panel-default-border; @panel-default-text; @panel-default-heading-bg; @panel-default-border);\n}\n.panel-primary {\n .panel-variant(@panel-primary-border; @panel-primary-text; @panel-primary-heading-bg; @panel-primary-border);\n}\n.panel-success {\n .panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border);\n}\n.panel-info {\n .panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border);\n}\n.panel-warning {\n .panel-variant(@panel-warning-border; @panel-warning-text; @panel-warning-heading-bg; @panel-warning-border);\n}\n.panel-danger {\n .panel-variant(@panel-danger-border; @panel-danger-text; @panel-danger-heading-bg; @panel-danger-border);\n}\n","// Panels\n\n.panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {\n border-color: @border;\n\n & > .panel-heading {\n color: @heading-text-color;\n background-color: @heading-bg-color;\n border-color: @heading-border;\n\n + .panel-collapse > .panel-body {\n border-top-color: @border;\n }\n .badge {\n color: @heading-bg-color;\n background-color: @heading-text-color;\n }\n }\n & > .panel-footer {\n + .panel-collapse > .panel-body {\n border-bottom-color: @border;\n }\n }\n}\n","// Embeds responsive\n//\n// Credit: Nicolas Gallagher and SUIT CSS.\n\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n\n .embed-responsive-item,\n iframe,\n embed,\n object,\n video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n }\n}\n\n// Modifier class for 16:9 aspect ratio\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n\n// Modifier class for 4:3 aspect ratio\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n","//\n// Wells\n// --------------------------------------------------\n\n\n// Base class\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: @well-bg;\n border: 1px solid @well-border;\n border-radius: @border-radius-base;\n .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .05));\n blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, .15);\n }\n}\n\n// Sizes\n.well-lg {\n padding: 24px;\n border-radius: @border-radius-large;\n}\n.well-sm {\n padding: 9px;\n border-radius: @border-radius-small;\n}\n","// stylelint-disable property-no-vendor-prefix\n\n//\n// Close icons\n// --------------------------------------------------\n\n\n.close {\n float: right;\n font-size: (@font-size-base * 1.5);\n font-weight: @close-font-weight;\n line-height: 1;\n color: @close-color;\n text-shadow: @close-text-shadow;\n .opacity(.2);\n\n &:hover,\n &:focus {\n color: @close-color;\n text-decoration: none;\n cursor: pointer;\n .opacity(.5);\n }\n\n // Additional properties for button version\n // iOS requires the button element instead of an anchor tag.\n // If you want the anchor version, it requires `href=\"#\"`.\n // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n button& {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n appearance: none;\n }\n}\n","//\n// Modals\n// --------------------------------------------------\n\n// .modal-open - body class for killing the scroll\n// .modal - container to scroll within\n// .modal-dialog - positioning shell for the actual modal\n// .modal-content - actual modal w/ bg and corners and shit\n\n// Kill the scroll on the body\n.modal-open {\n overflow: hidden;\n}\n\n// Container that the modal scrolls within\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: @zindex-modal;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n\n // Prevent Chrome on Windows from adding a focus outline. For details, see\n // https://github.com/twbs/bootstrap/pull/10951.\n outline: 0;\n\n // When fading in the modal, animate it to slide down\n &.fade .modal-dialog {\n .translate(0, -25%);\n .transition-transform(~\"0.3s ease-out\");\n }\n &.in .modal-dialog { .translate(0, 0); }\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n// Shell div to position the modal with bottom padding\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n\n// Actual modal\n.modal-content {\n position: relative;\n background-color: @modal-content-bg;\n background-clip: padding-box;\n border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc)\n border: 1px solid @modal-content-border-color;\n border-radius: @border-radius-large;\n .box-shadow(0 3px 9px rgba(0, 0, 0, .5));\n // Remove focus outline from opened modal\n outline: 0;\n}\n\n// Modal background\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: @zindex-modal-background;\n background-color: @modal-backdrop-bg;\n // Fade for backdrop\n &.fade { .opacity(0); }\n &.in { .opacity(@modal-backdrop-opacity); }\n}\n\n// Modal header\n// Top section of the modal w/ title and dismiss\n.modal-header {\n padding: @modal-title-padding;\n border-bottom: 1px solid @modal-header-border-color;\n &:extend(.clearfix all);\n}\n// Close icon\n.modal-header .close {\n margin-top: -2px;\n}\n\n// Title text within header\n.modal-title {\n margin: 0;\n line-height: @modal-title-line-height;\n}\n\n// Modal body\n// Where all modal content resides (sibling of .modal-header and .modal-footer)\n.modal-body {\n position: relative;\n padding: @modal-inner-padding;\n}\n\n// Footer (for actions)\n.modal-footer {\n padding: @modal-inner-padding;\n text-align: right; // right align buttons\n border-top: 1px solid @modal-footer-border-color;\n &:extend(.clearfix all); // clear it in case folks use .pull-* classes on buttons\n\n // Properly space out buttons\n .btn + .btn {\n margin-bottom: 0; // account for input[type=\"submit\"] which gets the bottom margin like all other inputs\n margin-left: 5px;\n }\n // but override that for button groups\n .btn-group .btn + .btn {\n margin-left: -1px;\n }\n // and override it for block buttons as well\n .btn-block + .btn-block {\n margin-left: 0;\n }\n}\n\n// Measure scrollbar width for padding body during modal show/hide\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n// Scale up the modal\n@media (min-width: @screen-sm-min) {\n // Automatically set modal's width for larger viewports\n .modal-dialog {\n width: @modal-md;\n margin: 30px auto;\n }\n .modal-content {\n .box-shadow(0 5px 15px rgba(0, 0, 0, .5));\n }\n\n // Modal sizes\n .modal-sm { width: @modal-sm; }\n}\n\n@media (min-width: @screen-md-min) {\n .modal-lg { width: @modal-lg; }\n}\n","//\n// Tooltips\n// --------------------------------------------------\n\n\n// Base class\n.tooltip {\n position: absolute;\n z-index: @zindex-tooltip;\n display: block;\n // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.\n // So reset our font and text properties to avoid inheriting weird values.\n .reset-text();\n font-size: @font-size-small;\n\n .opacity(0);\n\n &.in { .opacity(@tooltip-opacity); }\n &.top {\n padding: @tooltip-arrow-width 0;\n margin-top: -3px;\n }\n &.right {\n padding: 0 @tooltip-arrow-width;\n margin-left: 3px;\n }\n &.bottom {\n padding: @tooltip-arrow-width 0;\n margin-top: 3px;\n }\n &.left {\n padding: 0 @tooltip-arrow-width;\n margin-left: -3px;\n }\n\n // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1\n &.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.top-left .tooltip-arrow {\n right: @tooltip-arrow-width;\n bottom: 0;\n margin-bottom: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.top-right .tooltip-arrow {\n bottom: 0;\n left: @tooltip-arrow-width;\n margin-bottom: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n &.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0;\n border-right-color: @tooltip-arrow-color;\n }\n &.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-left-color: @tooltip-arrow-color;\n }\n &.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n &.bottom-left .tooltip-arrow {\n top: 0;\n right: @tooltip-arrow-width;\n margin-top: -@tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n &.bottom-right .tooltip-arrow {\n top: 0;\n left: @tooltip-arrow-width;\n margin-top: -@tooltip-arrow-width;\n border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;\n border-bottom-color: @tooltip-arrow-color;\n }\n}\n\n// Wrapper for the tooltip content\n.tooltip-inner {\n max-width: @tooltip-max-width;\n padding: 3px 8px;\n color: @tooltip-color;\n text-align: center;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n}\n\n// Arrows\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n",".reset-text() {\n font-family: @font-family-base;\n // We deliberately do NOT reset font-size.\n font-style: normal;\n font-weight: 400;\n line-height: @line-height-base;\n line-break: auto;\n text-align: left; // Fallback for where `start` is not supported\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n}\n","//\n// Popovers\n// --------------------------------------------------\n\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: @zindex-popover;\n display: none;\n max-width: @popover-max-width;\n padding: 1px;\n // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element.\n // So reset our font and text properties to avoid inheriting weird values.\n .reset-text();\n font-size: @font-size-base;\n background-color: @popover-bg;\n background-clip: padding-box;\n border: 1px solid @popover-fallback-border-color;\n border: 1px solid @popover-border-color;\n border-radius: @border-radius-large;\n .box-shadow(0 5px 10px rgba(0, 0, 0, .2));\n\n // Offset the popover to account for the popover arrow\n &.top { margin-top: -@popover-arrow-width; }\n &.right { margin-left: @popover-arrow-width; }\n &.bottom { margin-top: @popover-arrow-width; }\n &.left { margin-left: -@popover-arrow-width; }\n\n // Arrows\n // .arrow is outer, .arrow:after is inner\n > .arrow {\n border-width: @popover-arrow-outer-width;\n\n &,\n &:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n }\n\n &:after {\n content: \"\";\n border-width: @popover-arrow-width;\n }\n }\n\n &.top > .arrow {\n bottom: -@popover-arrow-outer-width;\n left: 50%;\n margin-left: -@popover-arrow-outer-width;\n border-top-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-top-color: @popover-arrow-outer-color;\n border-bottom-width: 0;\n &:after {\n bottom: 1px;\n margin-left: -@popover-arrow-width;\n content: \" \";\n border-top-color: @popover-arrow-color;\n border-bottom-width: 0;\n }\n }\n &.right > .arrow {\n top: 50%;\n left: -@popover-arrow-outer-width;\n margin-top: -@popover-arrow-outer-width;\n border-right-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-right-color: @popover-arrow-outer-color;\n border-left-width: 0;\n &:after {\n bottom: -@popover-arrow-width;\n left: 1px;\n content: \" \";\n border-right-color: @popover-arrow-color;\n border-left-width: 0;\n }\n }\n &.bottom > .arrow {\n top: -@popover-arrow-outer-width;\n left: 50%;\n margin-left: -@popover-arrow-outer-width;\n border-top-width: 0;\n border-bottom-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-bottom-color: @popover-arrow-outer-color;\n &:after {\n top: 1px;\n margin-left: -@popover-arrow-width;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: @popover-arrow-color;\n }\n }\n\n &.left > .arrow {\n top: 50%;\n right: -@popover-arrow-outer-width;\n margin-top: -@popover-arrow-outer-width;\n border-right-width: 0;\n border-left-color: @popover-arrow-outer-fallback-color; // IE8 fallback\n border-left-color: @popover-arrow-outer-color;\n &:after {\n right: 1px;\n bottom: -@popover-arrow-width;\n content: \" \";\n border-right-width: 0;\n border-left-color: @popover-arrow-color;\n }\n }\n}\n\n.popover-title {\n padding: 8px 14px;\n margin: 0; // reset heading margin\n font-size: @font-size-base;\n background-color: @popover-title-bg;\n border-bottom: 1px solid darken(@popover-title-bg, 5%);\n border-radius: (@border-radius-large - 1) (@border-radius-large - 1) 0 0;\n}\n\n.popover-content {\n padding: 9px 14px;\n}\n","// stylelint-disable media-feature-name-no-unknown\n\n//\n// Carousel\n// --------------------------------------------------\n\n\n// Wrapper for the slide container and indicators\n.carousel {\n position: relative;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n\n > .item {\n position: relative;\n display: none;\n .transition(.6s ease-in-out left);\n\n // Account for jankitude on images\n > img,\n > a > img {\n &:extend(.img-responsive);\n line-height: 1;\n }\n\n // WebKit CSS3 transforms for supported devices\n @media all and (transform-3d), (-webkit-transform-3d) {\n .transition-transform(~\"0.6s ease-in-out\");\n .backface-visibility(~\"hidden\");\n .perspective(1000px);\n\n &.next,\n &.active.right {\n .translate3d(100%, 0, 0);\n left: 0;\n }\n &.prev,\n &.active.left {\n .translate3d(-100%, 0, 0);\n left: 0;\n }\n &.next.left,\n &.prev.right,\n &.active {\n .translate3d(0, 0, 0);\n left: 0;\n }\n }\n }\n\n > .active,\n > .next,\n > .prev {\n display: block;\n }\n\n > .active {\n left: 0;\n }\n\n > .next,\n > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n }\n\n > .next {\n left: 100%;\n }\n > .prev {\n left: -100%;\n }\n > .next.left,\n > .prev.right {\n left: 0;\n }\n\n > .active.left {\n left: -100%;\n }\n > .active.right {\n left: 100%;\n }\n\n}\n\n// Left/right controls for nav\n// ---------------------------\n\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: @carousel-control-width;\n font-size: @carousel-control-font-size;\n color: @carousel-control-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug\n .opacity(@carousel-control-opacity);\n // We can't have this transition here because WebKit cancels the carousel\n // animation if you trip this while in the middle of another animation.\n\n // Set gradients for backgrounds\n &.left {\n #gradient > .horizontal(@start-color: rgba(0, 0, 0, .5); @end-color: rgba(0, 0, 0, .0001));\n }\n &.right {\n right: 0;\n left: auto;\n #gradient > .horizontal(@start-color: rgba(0, 0, 0, .0001); @end-color: rgba(0, 0, 0, .5));\n }\n\n // Hover/focus state\n &:hover,\n &:focus {\n color: @carousel-control-color;\n text-decoration: none;\n outline: 0;\n .opacity(.9);\n }\n\n // Toggles\n .icon-prev,\n .icon-next,\n .glyphicon-chevron-left,\n .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n }\n .icon-prev,\n .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n }\n .icon-next,\n .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n }\n .icon-prev,\n .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n }\n\n .icon-prev {\n &:before {\n content: \"\\2039\";// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)\n }\n }\n .icon-next {\n &:before {\n content: \"\\203a\";// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)\n }\n }\n}\n\n// Optional indicator pips\n//\n// Add an unordered list with the following class and add a list item for each\n// slide your carousel holds.\n\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n\n li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n // IE8-9 hack for event handling\n //\n // Internet Explorer 8-9 does not support clicks on elements without a set\n // `background-color`. We cannot use `filter` since that's not viewed as a\n // background color by the browser. Thus, a hack is needed.\n // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer\n //\n // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we\n // set alpha transparency for the best results possible.\n background-color: #000 \\9; // IE8\n background-color: rgba(0, 0, 0, 0); // IE9\n\n border: 1px solid @carousel-indicator-border-color;\n border-radius: 10px;\n }\n\n .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: @carousel-indicator-active-bg;\n }\n}\n\n// Optional captions\n// -----------------------------\n// Hidden by default for smaller viewports\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: @carousel-caption-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n\n & .btn {\n text-shadow: none; // No shadow for button elements in carousel-caption\n }\n}\n\n\n// Scale up controls for tablets and up\n@media screen and (min-width: @screen-sm-min) {\n\n // Scale up the controls a smidge\n .carousel-control {\n .glyphicon-chevron-left,\n .glyphicon-chevron-right,\n .icon-prev,\n .icon-next {\n width: (@carousel-control-font-size * 1.5);\n height: (@carousel-control-font-size * 1.5);\n margin-top: (@carousel-control-font-size / -2);\n font-size: (@carousel-control-font-size * 1.5);\n }\n .glyphicon-chevron-left,\n .icon-prev {\n margin-left: (@carousel-control-font-size / -2);\n }\n .glyphicon-chevron-right,\n .icon-next {\n margin-right: (@carousel-control-font-size / -2);\n }\n }\n\n // Show and left align the captions\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n\n // Move up the indicators\n .carousel-indicators {\n bottom: 20px;\n }\n}\n","// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n.clearfix() {\n &:before,\n &:after {\n display: table; // 2\n content: \" \"; // 1\n }\n &:after {\n clear: both;\n }\n}\n","// Center-align a block level element\n\n.center-block() {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n","// stylelint-disable font-family-name-quotes, font-family-no-missing-generic-family-keyword\n\n// CSS image replacement\n//\n// Heads up! v3 launched with only `.hide-text()`, but per our pattern for\n// mixins being reused as classes with the same name, this doesn't hold up. As\n// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.\n//\n// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757\n\n// Deprecated as of v3.0.1 (has been removed in v4)\n.hide-text() {\n font: ~\"0/0\" a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n// New mixin to use as of v3.0.1\n.text-hide() {\n .hide-text();\n}\n","// stylelint-disable declaration-no-important, at-rule-no-vendor-prefix\n\n//\n// Responsive: Utility classes\n// --------------------------------------------------\n\n\n// IE10 in Windows (Phone) 8\n//\n// Support for responsive views via media queries is kind of borked in IE10, for\n// Surface/desktop in split view and for Windows Phone 8. This particular fix\n// must be accompanied by a snippet of JavaScript to sniff the user agent and\n// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at\n// our Getting Started page for more information on this bug.\n//\n// For more information, see the following:\n//\n// Issue: https://github.com/twbs/bootstrap/issues/10497\n// Docs: https://getbootstrap.com/docs/3.4/getting-started/#support-ie10-width\n// Source: https://timkadlec.com/2013/01/windows-phone-8-and-device-width/\n// Source: https://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/\n\n@-ms-viewport {\n width: device-width;\n}\n\n\n// Visibility utilities\n// Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n .responsive-invisibility();\n}\n\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n\n.visible-xs {\n @media (max-width: @screen-xs-max) {\n .responsive-visibility();\n }\n}\n.visible-xs-block {\n @media (max-width: @screen-xs-max) {\n display: block !important;\n }\n}\n.visible-xs-inline {\n @media (max-width: @screen-xs-max) {\n display: inline !important;\n }\n}\n.visible-xs-inline-block {\n @media (max-width: @screen-xs-max) {\n display: inline-block !important;\n }\n}\n\n.visible-sm {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n .responsive-visibility();\n }\n}\n.visible-sm-block {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n display: block !important;\n }\n}\n.visible-sm-inline {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n display: inline !important;\n }\n}\n.visible-sm-inline-block {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n display: inline-block !important;\n }\n}\n\n.visible-md {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n .responsive-visibility();\n }\n}\n.visible-md-block {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n display: block !important;\n }\n}\n.visible-md-inline {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n display: inline !important;\n }\n}\n.visible-md-inline-block {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n display: inline-block !important;\n }\n}\n\n.visible-lg {\n @media (min-width: @screen-lg-min) {\n .responsive-visibility();\n }\n}\n.visible-lg-block {\n @media (min-width: @screen-lg-min) {\n display: block !important;\n }\n}\n.visible-lg-inline {\n @media (min-width: @screen-lg-min) {\n display: inline !important;\n }\n}\n.visible-lg-inline-block {\n @media (min-width: @screen-lg-min) {\n display: inline-block !important;\n }\n}\n\n.hidden-xs {\n @media (max-width: @screen-xs-max) {\n .responsive-invisibility();\n }\n}\n.hidden-sm {\n @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {\n .responsive-invisibility();\n }\n}\n.hidden-md {\n @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {\n .responsive-invisibility();\n }\n}\n.hidden-lg {\n @media (min-width: @screen-lg-min) {\n .responsive-invisibility();\n }\n}\n\n\n// Print utilities\n//\n// Media queries are placed on the inside to be mixin-friendly.\n\n// Note: Deprecated .visible-print as of v3.2.0\n.visible-print {\n .responsive-invisibility();\n\n @media print {\n .responsive-visibility();\n }\n}\n.visible-print-block {\n display: none !important;\n\n @media print {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n\n @media print {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n\n @media print {\n display: inline-block !important;\n }\n}\n\n.hidden-print {\n @media print {\n .responsive-invisibility();\n }\n}\n","// stylelint-disable declaration-no-important\n\n.responsive-visibility() {\n display: block !important;\n table& { display: table !important; }\n tr& { display: table-row !important; }\n th&,\n td& { display: table-cell !important; }\n}\n\n.responsive-invisibility() {\n display: none !important;\n}\n"]}
\ No newline at end of file
diff --git a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.min.css.map b/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.min.css.map
deleted file mode 100755
index 0ae3de508..000000000
--- a/front/lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.min.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["bootstrap.css","less/normalize.less","dist/css/bootstrap.css","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"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A,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,EFCJ,yBCzEC,Ub2zDC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UcnxDI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GFUJ,yBClFC,Ubo+DC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,Uc57DI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GFmBJ,0BC3FC,Ub6oEC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UcrmEI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GCjEJ,MACE,iBAAA,YADF,uBAQI,SAAA,OACA,QAAA,aACA,MAAA,KAKA,sBf+xEJ,sBe9xEM,SAAA,OACA,QAAA,WACA,MAAA,KAKN,QACE,YAAA,IACA,eAAA,IACA,MAAA,KACA,WAAA,KAGF,GACE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","sourcesContent":["/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable\n\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// 1. Remove the bottom border in Chrome 57- and Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n//\n\nabbr[title] {\n border-bottom: none; // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n -moz-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -ms-touch-action: manipulation;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n -o-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n -o-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n -o-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@-o-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n -webkit-background-size: 40px 40px;\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable declaration-no-important, selector-no-qualifying-type\n\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important; // Black prints faster: h5bp.com/s\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n}\n","// stylelint-disable value-list-comma-newline-after, value-list-comma-space-after, indentation, declaration-colon-newline-after, font-family-no-missing-generic-family-keyword\n\n//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n//
Star\n\n// Import the fonts\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"@{icon-font-path}@{icon-font-name}.eot\");\n src: url(\"@{icon-font-path}@{icon-font-name}.eot?#iefix\") format(\"embedded-opentype\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff2\") format(\"woff2\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff\") format(\"woff\"),\n url(\"@{icon-font-path}@{icon-font-name}.ttf\") format(\"truetype\"),\n url(\"@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}\") format(\"svg\");\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// https://getbootstrap.com/docs/3.4/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: https://a11yproject.com/posts/how-to-hide-content\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// stylelint-disable indentation, property-no-vendor-prefix, selector-no-vendor-prefix\n\n// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n word-wrap: break-word;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// stylelint-disable media-feature-name-no-vendor-prefix, media-feature-parentheses-space-inside, media-feature-name-no-unknown, indentation, at-rule-name-space-after\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","// stylelint-disable selector-list-comma-newline-after, selector-no-qualifying-type\n\n//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: 400;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n padding: .2em;\n background-color: @state-warning-bg;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: \"\\2014 \\00A0\"; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: \"\"; }\n &:after {\n content: \"\\00A0 \\2014\"; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n color: @pre-color;\n word-break: break-all;\n word-wrap: break-word;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n padding-right: ceil((@gutter / 2));\n padding-left: floor((@gutter / 2));\n margin-right: auto;\n margin-left: auto;\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-right: floor((@gutter / -2));\n margin-left: ceil((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-right: floor((@grid-gutter-width / 2));\n padding-left: ceil((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","// stylelint-disable selector-max-type, selector-max-compound-selectors, selector-no-qualifying-type\n\n//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n\n // Table cell sizing\n //\n // Reset default table behavior\n\n col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-column;\n float: none;\n }\n\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-cell;\n float: none;\n }\n }\n}\n\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\n\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n min-height: .01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n overflow-x: auto;\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * .75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type, property-no-vendor-prefix, media-feature-name-no-vendor-prefix\n\n//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: 700;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\ninput[type=\"search\"] {\n // Override content-box in Normalize (* isn't specific enough)\n .box-sizing(border-box);\n\n // Search inputs in iOS\n //\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n -webkit-appearance: none;\n appearance: none;\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n\n // Apply same disabled cursor tweak as for inputs\n // Some special care is needed because
s don't inherit their parent's `cursor`.\n //\n // Note: Neither radios nor checkboxes can be readonly.\n &[disabled],\n &.disabled,\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in some browsers, due to the limited stylability of s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Unstyle the caret on ``s in IE10+.\n &::-ms-expand {\n background-color: transparent;\n border: 0;\n }\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won't be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don't honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655\n }\n\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Special styles for iOS temporal inputs\n//\n// In Mobile Safari, setting `display: block` on temporal inputs causes the\n// text within the input to become vertically misaligned. As a workaround, we\n// set a pixel line-height that matches the given height of the input, but only\n// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848\n//\n// Note that as of 9.3, iOS doesn't support `week`.\n\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"],\n input[type=\"time\"],\n input[type=\"datetime-local\"],\n input[type=\"month\"] {\n &.form-control {\n line-height: @input-height-base;\n }\n\n &.input-sm,\n .input-group-sm & {\n line-height: @input-height-small;\n }\n\n &.input-lg,\n .input-group-lg & {\n line-height: @input-height-large;\n }\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: @form-group-margin-bottom;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n\n // These are used on elements with