diff --git a/.gitignore b/.gitignore index 14e5c939e..35f6b1226 100644 --- a/.gitignore +++ b/.gitignore @@ -123,16 +123,12 @@ _TeamCity* # NzbDrone config.xml nzbdrone.log*txt -NzbDrone.Web/MediaCover UpdateLogs/ */Bootstrap/*.css *//Bootstrap/*.css -NzbDrone.Web/cassette-cache/* *.eq -NzbDrone.Web/_backboneApp/.idea/workspace.xml */.idea/workspace.xml *workspace.xml -NzbDrone.Web/_backboneApp/.idea/. *.test-cache *.sqo *.userprefs diff --git a/IISExpress/AppServer/administration.config b/IISExpress/AppServer/administration.config deleted file mode 100644 index 4d2fdbaf2..000000000 --- a/IISExpress/AppServer/administration.config +++ /dev/null @@ -1,178 +0,0 @@ - - - -
-
- - - -
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/AppServer/applicationhost.config b/IISExpress/AppServer/applicationhost.config deleted file mode 100644 index 93879e48b..000000000 --- a/IISExpress/AppServer/applicationhost.config +++ /dev/null @@ -1,707 +0,0 @@ - - - - - - -
-
-
-
-
-
-
-
- - -
-
-
-
-
-
-
-
-
-
-
- -
-
- -
-
-
-
-
-
- -
-
-
- -
-
-
- -
-
- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/IISExpress/AppServer/redirection.config b/IISExpress/AppServer/redirection.config deleted file mode 100644 index 270935794..000000000 --- a/IISExpress/AppServer/redirection.config +++ /dev/null @@ -1,15 +0,0 @@ - - - -
- - - - - - - - - - - diff --git a/IISExpress/Release_Notes.url b/IISExpress/Release_Notes.url deleted file mode 100644 index 236ac8527..000000000 --- a/IISExpress/Release_Notes.url +++ /dev/null @@ -1,5 +0,0 @@ -[{000214A0-0000-0000-C000-000000000046}] -Prop3=19,2 -[InternetShortcut] -URL=http://go.microsoft.com/fwlink/?LinkId=207675 -IDList= diff --git a/IISExpress/appobj.dll b/IISExpress/appobj.dll deleted file mode 100644 index fd9c67017..000000000 Binary files a/IISExpress/appobj.dll and /dev/null differ diff --git a/IISExpress/authanon.dll b/IISExpress/authanon.dll deleted file mode 100644 index 0c7ab8b74..000000000 Binary files a/IISExpress/authanon.dll and /dev/null differ diff --git a/IISExpress/authbas.dll b/IISExpress/authbas.dll deleted file mode 100644 index aed3d396a..000000000 Binary files a/IISExpress/authbas.dll and /dev/null differ diff --git a/IISExpress/authsspi.dll b/IISExpress/authsspi.dll deleted file mode 100644 index e7ac5de73..000000000 Binary files a/IISExpress/authsspi.dll and /dev/null differ diff --git a/IISExpress/browscap.dll b/IISExpress/browscap.dll deleted file mode 100644 index 40df623f7..000000000 Binary files a/IISExpress/browscap.dll and /dev/null differ diff --git a/IISExpress/browscap.ini b/IISExpress/browscap.ini deleted file mode 100644 index c84843200..000000000 --- a/IISExpress/browscap.ini +++ /dev/null @@ -1,1907 +0,0 @@ - -;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Microsoft Browsers ;;; -;;;;;;;;;;;;;;;;;;;;;;;;;; - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 1.x -[IE 1.5] -browser=IE -version=1.5 -majorver=1 -minorver=5 -frames=FALSE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=FALSE -javascript=FALSE -javaapplets=FALSE -beta=False -Win16=False - -[Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)] -parent=IE 1.5 -platform=WinNT - -[Mozilla/1.22 (compatible; MSIE 1.5; Windows 95)] -parent=IE 1.5 -platform=Win95 - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 2.x -[IE 2.0] -browser=IE -version=2.0 -majorver=2 -minorver=0 -frames=FALSE -tables=TRUE -cookies=TRUE -backgroundsounds=TRUE -vbscript=FALSE -javascript=FALSE -javaapplets=FALSE -beta=False -Win16=False - -[Mozilla/1.22 (compatible; MSIE 2.0; Mac_68000)] -parent=IE 2.0 -platform=Mac68K - -[Mozilla/1.22 (compatible; MSIE 2.0; Mac_PowerPC)] -parent=IE 2.0 -platform=MacPPC - -[Mozilla/1.22 (compatible; MSIE 2.0B; Mac_68000)] -parent=IE 2.0 -platform=Mac68K -version=2.0B - -[Mozilla/1.22 (compatible; MSIE 2.0B; Mac_PowerPC)] -parent=IE 2.0 -platform=MacPPC -version=2.0B - -[Mozilla/2.0 (compatible; MSIE 2.0; Mac_68000)] -parent=IE 2.0 -platform=Mac68K - -[Mozilla/2.0 (compatible; MSIE 2.0; Mac_PowerPC)] -parent=IE 2.0 -platform=MacPPC - -[Mozilla/2.0 (compatible; MSIE 2.0B; Mac_68000)] -parent=IE 2.0 -platform=Mac68K -version=2.0B - -[Mozilla/2.0 (compatible; MSIE 2.0B; Mac_PowerPC)] -parent=IE 2.0 -platform=MacPPC -version=2.0B - -[Mozilla/2.0 (compatible; MSIE 2.1; Windows 3.1)] -parent=IE 2.0 -platform=Win16 -Win16=True -version=2.1 -minorver=#1 -frames=True - -[Mozilla/2.0 (compatible; MSIE 2.1; Mac_68000)] -parent=IE 2.0 -platform=Mac68K -version=2.1 -minorver=#1 -Frames=True - -[Mozilla/2.0 (compatible; MSIE 2.1; Mac_PowerPC)] -parent=IE 2.0 -platform=MacPPC -version=2.1 -minorver=#1 -frames=True - -[Mozilla/2.0 (compatible; MSIE 2.5; Windows 3.1)] -parent=IE 2.0 -platform=Win16 -Win16=True -version=2.5 -minorver=#5 - -[Mozilla/2.0 (compatible; MSIE 2.5b; Windows 3.1)] -parent=IE 2.0 -platform=Win16 -Win16=True -version=2.5b -minorver=#5 -beta=True - -[Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)] -parent=IE 2.0 -platform=Win95 - -[Mozilla/1.22 (compatible; MSIE 2.0c; Windows 95)] -parent=IE 2.0 -platform=Win95 -version=2.0c - - -[Mozilla/1.22 (compatible; MSIE 2.01; Windows NT)] -parent=IE 2.0 -platform=WinNT -version=2.01 -minorver=#01 - -[Mozilla/1.22 (compatible; MSIE 2.0d; Windows NT)] -parent=IE 2.0 -platform=WinNT -version=2.0d - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 3.x -[IE 3.0] -browser=IE -Version=3.0 -majorver=3 -minorver=0 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=TRUE -vbscript=TRUE -javascript=TRUE -javaapplets=TRUE -ActiveXControls=TRUE -Win16=False -beta=False -AK=False -SK=False -AOL=False -Crawler=False - -[Mozilla/2.0 (compatible; MSIE 3.01; Windows 3.1)] -parent=IE 3.0 -platform=Win16 -Win16=true -ActiveXControls=false - -[Mozilla/2.0 (compatible; MSIE 3.0a; Windows 3.1)] -parent=IE 3.0 -platform=Win16 -Win16=true -javaapplets=false -ActiveXControls=false - -[Mozilla/2.0 (compatible; MSIE 3.0; AK; Windows 95)] -parent=IE 3.0 -platform=Win95 -AK=True - -[Mozilla/2.0 (compatible; MSIE 3.0; AK; Windows NT)] -parent=IE 3.0 -platform=WinNT -AK=True - -[Mozilla/2.0 (compatible; MSIE 3.0; AOL 3.0; Windows 95)] -parent=IE 3.0 -platform=Win95 -AOL=True - -[Mozilla/2.0 (compatible; MSIE 3.0; SK; Windows 95)] -parent=IE 3.0 -platform=Win95 -SK=True - -[Mozilla/2.0 (compatible; MSIE 3.0; SK; Windows NT)] -parent=IE 3.0 -platform=WinNT -SK=True - -[Mozilla/2.0 (compatible; MSIE 3.0; Win 32)] -parent=IE 3.0 -platform=Win32 - -[Mozilla/2.0 (compatible; MSIE 3.0; Windows 95)] -parent=IE 3.0 -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.0; Windows 95) Modified] -parent=IE 3.0 -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.0; Windows 95;*)] -parent=IE 3.0 -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.0; Windows NT)] -parent=IE 3.0 -platform=WinNT - -[Mozilla/2.0 (compatible; MSIE 3.0; Windows NT;*)] -parent=IE 3.0 -platform=WinNT - -[Mozilla/2.0 (compatible; MSIE 3.0A; Windows 95)] -parent=IE 3.0 -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.0B3; Windows 95)] -parent=IE 3.0 -platform=Win95 -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B3; Windows NT)] -parent=IE 3.0 -platform=WinNT -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B; Win32)] -parent=IE 3.0 -platform=Win32 -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B; Windows 95)] -parent=IE 3.0 -platform=Win95 -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B; Windows 95;*)] -parent=IE 3.0 -platform=Win95 -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B; Windows NT)] -parent=IE 3.0 -platform=WinNT -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.0B; Windows NT;*)] -parent=IE 3.0 -platform=WinNT -beta=True - -[Mozilla/2.0 (compatible; MSIE 3.1; Windows NT)] -parent=IE 3.0 -platform=WinNT - -[Mozilla/2.0 (compatible; MSIE 3.01*; Windows 95)] -parent=IE 3.0 -version=3.01 -minorver=01 -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.01*; Windows NT)] -parent=IE 3.0 -version=3.01 -minorver=01 -platform=WinNT - -[Mozilla/2.0 (compatible; MSIE 3.01*; Mac_PowerPC)] -parent=IE 3.0 -version=3.01 -minorver=01 -vbscript=false -platform=MacPPC - -[Mozilla/2.0 (compatible; MSIE 3.01*; Mac_68000)] -parent=IE 3.0 -version=3.01 -minorver=01 -vbscript=false -platform=Mac68K - -;;ie 3.02 -[Mozilla/2.0 (compatible; MSIE 3.02; Windows 95)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=Win95 - -;;ie 3.02 -[Mozilla/2.0 (compatible; MSIE 3.02; Win32)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=Win32 - -[Mozilla/2.0 (compatible; MSIE 3.02; Windows NT)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=WinNT - -[Mozilla/2.0 (compatible; MSIE 3.02; AK; Windows 95)] -parent=IE 3.0 -version=3.02 -minorver=02 -AK=True -platform=Win95 - -[Mozilla/2.0 (compatible; MSIE 3.02; AK; Windows NT)] -parent=IE 3.0 -version=3.02 -minorver=02 -AK=True -platform=WinNT - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 3.x Authenticode update -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; Win32)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=Win32 -AuthenticodeUpdate=a - -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; Windows 95)] -minorver=02 -version=3.02 -parent=IE 3.0 -platform=Win95 -AuthenticodeUpdate=a - -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; Windows NT)] -minorver=02 -version=3.02 -parent=IE 3.0 -platform=WinNT -AuthenticodeUpdate=a - -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; AK; Win32)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=Win32 -AK=true -AuthenticodeUpdate=a - -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; AK; Windows 95)] -minorver=02 -version=3.02 -parent=IE 3.0 -platform=Win95 -AK=true -AuthenticodeUpdate=a - -[Mozilla/2.0 (compatible; MSIE 3.02; Update a; AK; Windows NT)] -parent=IE 3.0 -version=3.02 -minorver=02 -platform=WinNT -AK=true -AuthenticodeUpdate=a - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 3.x WILDCARD (IF ALL ABOVE FAIL) -[Mozilla/2.0 (compatible; MSIE 3*)] -parent=IE 3.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 4.x -[IE 4.0] -browser=IE -Version=4.0 -majorver=4 -minorver=0 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=TRUE -vbscript=TRUE -javascript=TRUE -javaapplets=TRUE -ActiveXControls=TRUE -Win16=False -beta=False -AK=False -SK=False -AOL=False -crawler=False -cdf=True - -;;ie 4 beta 1 -[Mozilla/4.0 (compatible; MSIE 4.0b1; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=True -cdf=False - -[Mozilla/4.0 (compatible; MSIE 4.0b1; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=True -cdf=False - -[Mozilla/4.0 (compatible; MSIE 4.0b1 Crawler; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=True -crawler=True -cdf=False - -[Mozilla/4.0 (compatible; MSIE 4.0b1 Crawler; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=True -crawler=True -cdf=False - -;;ie 4 beta 2. This is not a commitment to a beta 2, but is being provided as a placeholder if needed. -[Mozilla/4.0 (compatible; MSIE 4.0b2; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=True - -[Mozilla/4.0 (compatible; MSIE 4.0b2; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=True - -[Mozilla/4.0 (compatible; MSIE 4.0b2 Crawler; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=True -crawler=True - -[Mozilla/4.0 (compatible; MSIE 4.0b2 Crawler; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=True -crawler=True - -;;ie 4 final release -[Mozilla/4.0 (compatible; MSIE 4.0; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=False - -[Mozilla/4.0 (compatible; MSIE 4.0; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=False - -[Mozilla/4.0 (compatible; MSIE 4.0 Crawler; Windows 95)] -parent=IE 4.0 -platform=Win95 -beta=False -crawler=True - -[Mozilla/4.0 (compatible; MSIE 4.0 Crawler; Windows NT)] -parent=IE 4.0 -platform=WinNT -beta=False -crawler=True - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 4.x WILDCARD (IF ALL ABOVE FAIL) -[Mozilla/4.0 (compatible; MSIE 4.*)] -parent=IE 4.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 5.0 -[IE 5.0] -browser=IE -Version=5.0 -majorver=5 -minorver=0 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=True -javaapplets=True -javascript=True -ActiveXControls=True -Win16=False -beta=True -AK=False -SK=False -AOL=False -Update=False - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 95*)] -parent=IE 5.0 -platform=Win95 -beta=True - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 98*)] -parent=IE 5.0 -platform=Win98 -beta=True - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows NT*)] -parent=IE 5.0 -platform=WinNT -beta=True - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 2000*)] -parent=IE 5.0 -platform=Win2000 -beta=True - -[Mozilla/4.0 (compatible; MSIE 5.*)] -parent=IE 5.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 5.5 -[IE 5.5] -browser=IE -Version=5.5 -majorver=5 -minorver=5 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=True -javaapplets=True -javascript=True -ActiveXControls=True -Win16=False -beta=False -AK=False -SK=False -AOL=False -Update=False - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 95*)] -parent=IE 5.5 -platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 98*)] -parent=IE 5.5 -platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows NT*)] -parent=IE 5.5 -platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 5.*; Windows 2000*)] -parent=IE 5.5 -platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.*)] -parent=IE 5.5 - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 6.0 -[IE 6.0] -browser=IE -Version=6.0 -majorver=#6 -minorver=#0 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=True -javaapplets=True -javascript=True -ActiveXControls=True -Win16=False -beta=False -AK=False -SK=False -AOL=False -Update=False - -[Mozilla/4.0 (compatible; MSIE 6.*; Windows 95*)] -parent=IE 6.0 -platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 6.*; Windows 98*)] -parent=IE 6.0 -platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 6.*; Windows NT*)] -parent=IE 6.0 -platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 6.*)] -parent=IE 6.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 7.0 -[IE 7.0] -browser=IE -Version=7.0 -majorver=#7 -minorver=#0 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=True -javaapplets=True -javascript=True -ActiveXControls=True -Win16=False -AK=False -SK=False -AOL=False -Update=False - -[Mozilla/4.0 (compatible; MSIE 7.*; Windows 98*)] -parent=IE 7.0 -platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 7.*; Windows NT*)] -parent=IE 7.0 -platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 7.*)] -parent=IE 7.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 8.0 -[IE 8.0] -browser=IE -Version=8.0 -majorver=#8 -minorver=#0 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=True -javaapplets=True -javascript=True -ActiveXControls=True -Win16=False -AK=False -SK=False -AOL=False -Update=False - -[Mozilla/4.0 (compatible; MSIE 8.*; Windows 98*)] -parent=IE 8.0 -platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 8.*; Windows NT*)] -parent=IE 8.0 -platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 8.*)] -parent=IE 8.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Pocket IE -[Microsoft Pocket Internet Explorer/0.6] -browser=PIE -Version=1.0 -majorver=1 -minorver=0 -frames=FALSE -tables=TRUE -cookies=FALSE -backgroundsounds=TRUE -vbscript=FALSE -javascript=FALSE -javaapplets=FALSE -ActiveXControls=FALSE -Win16=False -beta=False -AK=False -SK=False -AOL=False -platform=WinCE - -[Mozilla/1.1 (compatible; MSPIE 1.1; Windows CE)] -browser=PIE -Version=1.1 -majorver=1 -minorver=1 -frames=FALSE -tables=TRUE -cookies=TRUE -backgroundsounds=TRUE -vbscript=FALSE -javascript=FALSE -javaapplets=FALSE -ActiveXControls=FALSE -Win16=False -beta=False -AK=False -SK=False -AOL=False -platform=WinCE - - -; Pocket PC (aka Rapier) -[Mozilla/2.0 (compatible; MSIE 3.02; Windows CE; 240x320)] -browser=Pocket IE -version=4.0 -majorver=#4 -minorver=#0 -platform=Windows CE -width=240 -height=320 -cookies=TRUE -frames=TRUE -backgroundsounds=TRUE -javaapplets=FALSE -javascript=TRUE -vbscript=FALSE -tables=TRUE -activexcontrols=TRUE - -; Pocket PC (aka Merlin) -[Mozilla/2.0 (compatible; MSIE 3.02; Windows CE; PPC; JavaScript; 240x320)] -browser=Pocket IE -version=4.1 -majorver=#4 -minorver=#1 -platform=Windows CE -width=240 -height=320 -cookies=TRUE -frames=TRUE -backgroundsounds=TRUE -javaapplets=FALSE -javascript=TRUE -vbscript=FALSE -tables=TRUE -activexcontrols=TRUE - -; Smartphone (aka Stinger) -[Mozilla/2.0 (compatible; MSIE 3.02; Windows CE; Smartphone; JavaScript; *)] -browser=Pocket IE -version=4.1 -majorver=#4 -minorver=#1 -platform=Windows CE -cookies=TRUE -frames=FALSE -backgroundsounds=TRUE -javaapplets=FALSE -javascript=TRUE -vbscript=FALSE -tables=TRUE -activexcontrols=TRUE - - -;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Netscape Browsers ;;; -;;;;;;;;;;;;;;;;;;;;;;;;; - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Navigator 4.x -[Netscape 4.00] -browser=Netscape -version=4.00 -majorver=4 -minorver=00 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=FALSE -javascript=TRUE -javaapplets=TRUE -ActiveXControls=FALSE -beta=True - -[Mozilla/4.0b1 (Win95; I)] -parent=Netscape 4.00 -platform=Win95 - -[Mozilla/4.0b1 (WinNT; I)] -parent=Netscape 4.00 -platform=WinNT - -[Mozilla/4.0b2 (Win95; I)] -parent=Netscape 4.00 -platform=Win95 - -[Mozilla/4.0b2 (WinNT; I)] -parent=Netscape 4.00 -platform=WinNT - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Navigator 4.x WILDCARD (IF ALL ABOVE FAIL) -[Mozilla/4.0*] -parent=Netscape 4.00 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Navigator 3.x -[Netscape 3.01] -browser=Netscape -version=3.01 -majorver=3 -minorver=01 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=FALSE -javascript=TRUE -javaapplets=TRUE -ActiveXControls=FALSE -beta=False - -[Mozilla/3.01Gold (Macintosh; I; 68K)] -parent=Netscape 3.01 -platform=Mac68K - -[Mozilla/3.01Gold (Macintosh; U; 68K)] -parent=Netscape 3.01 -platform=Mac68K - -[Mozilla/3.01Gold (Macintosh; I; PPC)] -parent=Netscape 3.01 -platform=MacPPC - -[Mozilla/3.01Gold (Macintosh; U; PPC)] -parent=Netscape 3.01 -platform=MacPPC - -[Mozilla/3.01Gold*(Win95; I)] -parent=Netscape 3.01 -platform=Win95 - -[Mozilla/3.01Gold*(Win95; U)] -parent=Netscape 3.01 -platform=Win95 - -[Mozilla/3.01Gold*(WinNT; I)] -parent=Netscape 3.01 -platform=WinNT - -[Mozilla/3.01Gold*(WinNT; U)] -parent=Netscape 3.01 -platform=WinNT - -[Mozilla/3.01Gold*(Win16; I)] -parent=Netscape 3.01 -platform=Win16 - -[Mozilla/3.01Gold*(Win16; U)] -parent=Netscape 3.01 -platform=Win16 - -[Mozilla/3.01*(Win95; I)] -parent=Netscape 3.01 -platform=Win95 - -[Mozilla/3.01*(Win95; U)] -parent=Netscape 3.01 -platform=Win95 - -[Mozilla/3.01*(WinNT; I)] -parent=Netscape 3.01 -platform=WinNT - -[Mozilla/3.01*(WinNT; U)] -parent=Netscape 3.01 -platform=WinNT - -[Mozilla/3.01*(Win16; I)] -parent=Netscape 3.01 -platform=Win16 - -[Mozilla/3.01*(Win16; U)] -parent=Netscape 3.01 -platform=Win16 - -[Mozilla/3.01 (Macintosh; I; 68K)] -parent=Netscape 3.01 -platform=Mac68K - -[Mozilla/3.01 (Macintosh; U; 68K)] -parent=Netscape 3.01 -platform=Mac68K - -[Mozilla/3.01 (Macintosh; I; PPC)] -parent=Netscape 3.01 -platform=MacPPC - -[Mozilla/3.01 (Macintosh; U; PPC)] -parent=Netscape 3.01 -platform=MacPPC - -[Mozilla/3.01b1 (Win95; I)] -parent=Netscape 3.01 -platform=Win95 -beta=True - -[Mozilla/3.01b1 (WinNT; I)] -parent=Netscape 3.01 -platform=WinNT -beta=True - -[Mozilla/3.01b1 (Win16; I)] -parent=Netscape 3.01 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.01b1 (Macintosh; I; 68K)] -parent=Netscape 3.01 -platform=Mac68K -beta=True - -[Mozilla/3.01b1 (Macintosh; I; PPC)] -parent=Netscape 3.01 -platform=MacPPC -beta=True - -[Netscape 3.0] -browser=Netscape -version=3.0 -majorver=3 -minorver=0 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=FALSE -javascript=TRUE -javaapplets=TRUE -ActiveXControls=FALSE -beta=False - -[Mozilla/3.0Gold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K - - -[Mozilla/3.0Gold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC - -[Mozilla/3.0Gold (Macintosh; U; 68K)] -parent=Netscape 3.0 -platform=Mac68K - -[Mozilla/3.0Gold (Macintosh; U; PPC)] -parent=Netscape 3.0 -platform=MacPPC - -[Mozilla/3.0Gold*(Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True - -[Mozilla/3.0Gold*(Win16; U)] -parent=Netscape 3.0 -platform=Win16 -Win16=True - -[Mozilla/3.0Gold*(Win95; I)] -parent=Netscape 3.0 -platform=Win95 - -[Mozilla/3.0Gold*(Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True - -[Mozilla/3.0Gold*(Win95; U)] -parent=Netscape 3.0 -platform=Win95 - -[Mozilla/3.0Gold*(Win95; U; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True - -[Mozilla/3.0Gold*(WinNT; I)] -parent=Netscape 3.0 -platform=WinNT - -[Mozilla/3.0Gold*(WinNT; U)] -parent=Netscape 3.0 -platform=WinNT - -[Mozilla/3.0 (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K - -[Mozilla/3.0 (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC - -[Mozilla/3.0 (Macintosh; U; 68K)] -parent=Netscape 3.0 -platform=Mac68K - -[Mozilla/3.0 (Macintosh; U; PPC)] -parent=Netscape 3.0 -platform=MacPPC - -[Mozilla/3.0*(Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True - -[Mozilla/3.0*(Win16; U)] -parent=Netscape 3.0 -platform=Win16 -Win16=True - -[Mozilla/3.0*(Win95; I)] -parent=Netscape 3.0 -platform=Win95 - -[Mozilla/3.0*(Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True - -[Mozilla/3.0*(Win95; U)] -parent=Netscape 3.0 -platform=Win95 - -[Mozilla/3.0*(Win95; U; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True - -[Mozilla/3.0*(WinNT; I)] -parent=Netscape 3.0 -platform=WinNT - -[Mozilla/3.0*(WinNT; U)] -parent=Netscape 3.0 -platform=WinNT - -[Mozilla/3.0b3 (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -beta=True - -[Mozilla/3.0b3 (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b3 (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b3Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b4 (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b4 (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b4 (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b4 (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b4 (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b4Gold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b4Gold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b4Gold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b4Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b4Gold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b4Gold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b5 (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b5 (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b5 (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -beta=True -Win16=True - -[Mozilla/3.0b5 (Win16; U)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b5 (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b5 (Win95; U)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b5 (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b5 (WinNT; U)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b5Gold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b5Gold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b5Gold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b5Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b5Gold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - - -[Mozilla/3.0b5Gold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b5a (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True - -[Mozilla/3.0b5a (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b5a (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b5a (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b5aGold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b5aGold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b5aGold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b5aGold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b6 (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b6 (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b6 (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b6 (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b6 (Win95; U)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b6 (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b6Gold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b6Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b6Gold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b6Gold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b6a (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b6a (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b6aGold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b6aGold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b7 (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b7 (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b7 (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b7 (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b7 (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b7 (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b7Gold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b7Gold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b7Gold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b7Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b7Gold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - -[Mozilla/3.0b7Gold (Win95; U)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b7Gold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b7a (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b7a (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Mozilla/3.0b8Gold (Macintosh; I; 68K)] -parent=Netscape 3.0 -platform=Mac68K -beta=True - -[Mozilla/3.0b8Gold (Macintosh; I; PPC)] -parent=Netscape 3.0 -platform=MacPPC -beta=True - -[Mozilla/3.0b8Gold (Win16; I)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b8Gold (Win16; U)] -parent=Netscape 3.0 -platform=Win16 -Win16=True -beta=True - -[Mozilla/3.0b8Gold (Win95; I)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b8Gold (Win95; I; 16bit)] -parent=Netscape 3.0 -platform=Win95 -Win16=True -beta=True - - -[Mozilla/3.0b8Gold (Win95; U)] -parent=Netscape 3.0 -platform=Win95 -beta=True - -[Mozilla/3.0b8Gold (WinNT; I)] -parent=Netscape 3.0 -platform=WinNT -beta=True - -[Netscape 2.0] -browser=Netscape -version=2.0 -majorver=2 -minorver=0 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=FALSE -javascript=TRUE -javaapplets=TRUE -beta=False -Win16=False - -[Mozilla/2.0 (Macintosh; I; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.0 (Macintosh; I; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.0 (Macintosh; U; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.0 (Macintosh; U; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.0 (16bit; I)] -parent=Netscape 2.0 -platform=16bit -Win16=True - -[Mozilla/2.0 (16bit; U)] -parent=Netscape 2.0 -platform=16bit -Win16=True - -[Mozilla/2.0 (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.0 (Win95; I; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.0 (Win95; U)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.0 (Win95; U; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.0 (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.0 (WinNT; U)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.0 (Windows; I; 32bit)] -parent=Netscape 2.0 -platform=Windows - - -[Mozilla/2.01 (Macintosh; I; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.01 (Macintosh; I; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.01 (Macintosh; U; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.01 (Macintosh; U; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.01 (16bit; I)] -parent=Netscape 2.0 -platform=16bit -Win16=True - -[Mozilla/2.01 (16bit; U)] -parent=Netscape 2.0 -platform=Win16 -Win16=TRue - -[Mozilla/2.01 (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.01 (Win95; I; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.01 (Win95; U)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.01 (Win95; U; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.01 (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.01 (WinNT; U)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.01Gold (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.01Gold (Win95; U)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.01Gold (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.01Gold (WinNT; U)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.01GoldA1 (Macintosh; I; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.01I (16bit; I)] -parent=Netscape 2.0 -platform=Win16 -Win16=True - -[Mozilla/2.01I (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.01I (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - - -[Mozilla/2.02 (Macintosh; I; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.02 (Macintosh; I; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.02 (Macintosh; U; 68K)] -parent=Netscape 2.0 -platform=Mac68K - -[Mozilla/2.02 (Macintosh; U; PPC)] -parent=Netscape 2.0 -platform=MacPPC - -[Mozilla/2.02 (16bit; I)] -parent=Netscape 2.0 -platform=Win16 -Win16=True - -[Mozilla/2.02 (16bit; U)] -parent=Netscape 2.0 -platform=Win16 -Win16=True - -[Mozilla/2.02 (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.02 (Win95; I; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.02 (Win95; U)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.02 (Win95; U; 16bit)] -parent=Netscape 2.0 -platform=Win95 -Win16=True - -[Mozilla/2.02 (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.02 (WinNT; U)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.02Gold (Win95; I)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.02Gold (Win95; U)] -parent=Netscape 2.0 -platform=Win95 - -[Mozilla/2.02Gold (WinNT; I)] -parent=Netscape 2.0 -platform=WinNT - -[Mozilla/2.02Gold (WinNT; U)] -parent=Netscape 2.0 -platform=WinNT - - - -;;;;;;;;;;;;;;;;;;;;;; -;;; Oracle Browser ;;; -;;;;;;;;;;;;;;;;;;;;;; - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Oracle 1.x -[Oracle 1.5] -browser=Power Browser -version=1.5 -majorver=1.5 -minover=0 -frames=TRUE -tables=TRUE -cookies=TRUE -backgroundsounds=FALSE -vbscript=TRUE -javascript=TRUE -javaapplets=TRUE - -[Mozilla/2.01 (Compatible) Oracle(tm) PowerBrowser(tm)/1.0a] -parent=Oracle 1.5 -platform=Win95 - -;;;;;;;;; -; Opera ; -;;;;;;;;; - -[Opera Common] -browser=Opera -version=3 -majorver=3 -minorver=60 -platform=Win32 -frames=True -tables=True -cookies=True -backgroundsounds=True -vbscript=False -javascript=True -javaapplets=True -activexcontrols=False -AK=False -SK=False -AOL=False -beta=False -Win16=False -Crawler=False -CDF=False - -[Opera 2.0] -parent=Opera Common -browser=Opera -version=2 -majorver=2 -minorver=0 -javaapplets=False - -[Mozilla/2.1 (compatible; Opera/2.12; Windows 3.1)] -parent=Opera 2.0 -version=2.12 -minorver=12 -platform=Win16 -Win16=True; - -[Mozilla/2.1 (compatible; Opera/2.12; Windows*)] -parent=Opera 2.0 -version=2.12 -minorver=12 - -; fallback -[Mozilla/2.* (compatible; Opera/2.*)] -parent=Opera 2.0 -platform=unknown - - -[Opera 3.0] -parent=Opera Common -version=3 -majorver=3 -minorver=0 -javaapplets=False - -[Opera 3.21] -parent=Opera 3.0 -version=3.21 -majorver=3 -minorver=21 - -[Mozilla/3.0 (compatible; Opera/3.0; Windows 3.1)*] -parent=Opera 3.0 -platform=Win31 - -[Mozilla/3.0 (compatible; Opera/3.0; Windows*)*] -parent=Opera 3.0 - -[Mozilla/3.0 (compatible; Opera/3.0; Windows 3.1) 3.21*] -parent=Opera 3.21 -platform=Win16 -win16=true - -[Mozilla/3.0 (compatible; Opera/3.0; Windows*) 3.21*] -parent=Opera 3.21 - -[Opera 3.50] -parent=Opera Common -version=3.50 -majorver=3 -minorver=50 - -[Opera 3.51] -parent=Opera Common -version=3.51 -majorver=3 -minorver=51 - -; Matches both Mozilla 3 and 4 (and others :-) - -[Mozilla/?.0 (compatible; Opera/3.0; Windows 3.1) 3.50*] -parent=Opera 3.50 -platform=Win16 -Win16=True -javaapplets=False - -[Mozilla/?.0 (compatible; Opera/3.0; Windows*) 3.50*] -parent=Opera 3.50 - -[Mozilla/?.0 (compatible; Opera/3.0;*) 3.50*] -parent=Opera 3.50 -platform=unknown - -[Mozilla/?.0 (compatible; Opera/3.0; Windows 3.1) 3.51*] -parent=Opera 3.51 -platform=Win16 -Win16=True -javaapplets=False - -[Mozilla/?.0 (compatible; Opera/3.0; Windows*) 3.51*] -parent=Opera 3.51 - -[Mozilla/?.0 (compatible; Opera/3.0;*) 3.51*] -parent=Opera 3.51 -platform=unknown - -[Opera 3.60] -parent=Opera Common -version=3.60 -majorver=3 -minorver=60 - -[Opera unknown system] -parent=Opera 3.60 -platform=unknown - -[Mozilla/?.0 (Windows 3.1;US) Opera 3.60b* ] -parent=Opera 3.60 -platform=Win16 -win16=true -javaapplets=False -beta=true - -[Mozilla/?.0 (Windows*;US) Opera 3.60b* ] -parent=Opera 3.60 -beta=true - -[Mozilla/?.0 (*;US) Opera 3.60b* ] -parent=Opera 3.60 -platform=unknown -beta=true - -[Mozilla/?.0 (Windows 3.1;US) Opera 3.60*] -parent=Opera 3.60 -platform=Win16 -win16=true -javaapplets=False - -[Mozilla/?.0 (Windows*;US) Opera 3.60*] -parent=Opera 3.60 - -[Mozilla/?.0 (*;US) Opera 3.60*] -parent=Opera 3.60 -platform=unknown - -[Mozilla/?.0 (Windows 3.1;US) Opera 3.*] -parent=Opera 3.60 -platform=Win16 -win16=true -javaapplets=False - -[Mozilla/?.0 (Windows*;US) Opera 3.*] -parent=Opera 3.60 - -[Mozilla/?.0 (*;US) Opera 3.*] -parent=Opera 3.60 -platform=unknown - -[Opera 4.0] -parent=Opera Common -version=4 -majorver=4 -minorver=0 - -[Mozilla/?.0 (Windows 3.1;US) Opera 4*] -parent=Opera 4.0 -platform=Win16 -win16=true -javaapplets=False - -[Mozilla/?.0 (Windows*;US) Opera 4*] -parent=Opera 4.0 - -[Mozilla/?.0 (*;US) Opera 4*] -parent=Opera 4.0 -platform=unknown - -; Fallbacks - -[Mozilla/?.0 (compatible; Opera/3.0;*)] -parent=Opera unknown system - -[Mozilla/?.0 (*;US) Opera*] -parent=Opera unknown system - -[*Opera*] -parent=Opera unknown system - -;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Default Browser ;;; -;;;;;;;;;;;;;;;;;;;;;;;;;; -[*] -browser=Default -Version=0.0 -majorver=#0 -minorver=#0 -frames=False -tables=True -cookies=False -backgroundsounds=False -vbscript=False -javascript=False -javaapplets=False -activexcontrols=False -AK=False -SK=False -AOL=False -beta=False -Win16=False -Crawler=False -CDF=False -AuthenticodeUpdate= - diff --git a/IISExpress/cachuri.dll b/IISExpress/cachuri.dll deleted file mode 100644 index 65afc8d8a..000000000 Binary files a/IISExpress/cachuri.dll and /dev/null differ diff --git a/IISExpress/compstat.dll b/IISExpress/compstat.dll deleted file mode 100644 index 23b84ce65..000000000 Binary files a/IISExpress/compstat.dll and /dev/null differ diff --git a/IISExpress/config/administration.config b/IISExpress/config/administration.config deleted file mode 100644 index 8fe2cfede..000000000 --- a/IISExpress/config/administration.config +++ /dev/null @@ -1,56 +0,0 @@ - - - -
-
- - - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/redirection.config b/IISExpress/config/redirection.config deleted file mode 100644 index 270935794..000000000 --- a/IISExpress/config/redirection.config +++ /dev/null @@ -1,15 +0,0 @@ - - - -
- - - - - - - - - - - diff --git a/IISExpress/config/schema/ASPNET_schema.xml b/IISExpress/config/schema/ASPNET_schema.xml deleted file mode 100644 index 258adea26..000000000 --- a/IISExpress/config/schema/ASPNET_schema.xml +++ /dev/null @@ -1,582 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/IISExpress/config/schema/FX_schema.xml b/IISExpress/config/schema/FX_schema.xml deleted file mode 100644 index a966090aa..000000000 --- a/IISExpress/config/schema/FX_schema.xml +++ /dev/null @@ -1,439 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/schema/IIS_schema.xml b/IISExpress/config/schema/IIS_schema.xml deleted file mode 100644 index 47adadeee..000000000 --- a/IISExpress/config/schema/IIS_schema.xml +++ /dev/null @@ -1,1394 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/schema/NetFx40_IIS_schema_update.xml b/IISExpress/config/schema/NetFx40_IIS_schema_update.xml deleted file mode 100644 index b51dd2f3a..000000000 --- a/IISExpress/config/schema/NetFx40_IIS_schema_update.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/schema/dbmanager_schema.xml b/IISExpress/config/schema/dbmanager_schema.xml deleted file mode 100644 index 0ce2363ae..000000000 --- a/IISExpress/config/schema/dbmanager_schema.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/schema/rscaext.xml b/IISExpress/config/schema/rscaext.xml deleted file mode 100644 index 3d5d9a242..000000000 --- a/IISExpress/config/schema/rscaext.xml +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/templates/PersonalWebServer/applicationhost.config b/IISExpress/config/templates/PersonalWebServer/applicationhost.config deleted file mode 100644 index a424a2325..000000000 --- a/IISExpress/config/templates/PersonalWebServer/applicationhost.config +++ /dev/null @@ -1,953 +0,0 @@ - - - - - - - - -
-
-
-
-
-
-
-
- - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
- -
-
-
-
-
-
- -
-
-
-
- -
-
-
- -
-
- -
-
- -
-
-
- - -
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/templates/PersonalWebServer/aspnet.config b/IISExpress/config/templates/PersonalWebServer/aspnet.config deleted file mode 100644 index 5a7f3fc52..000000000 --- a/IISExpress/config/templates/PersonalWebServer/aspnet.config +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/config/templates/PersonalWebServer/redirection.config b/IISExpress/config/templates/PersonalWebServer/redirection.config deleted file mode 100644 index a32637bb3..000000000 --- a/IISExpress/config/templates/PersonalWebServer/redirection.config +++ /dev/null @@ -1,15 +0,0 @@ - - - -
- - - - - - - - - - - \ No newline at end of file diff --git a/IISExpress/custerr.dll b/IISExpress/custerr.dll deleted file mode 100644 index d093f059f..000000000 Binary files a/IISExpress/custerr.dll and /dev/null differ diff --git a/IISExpress/custerr/en-us/401-1.htm b/IISExpress/custerr/en-us/401-1.htm deleted file mode 100644 index 0b9543f75..000000000 --- a/IISExpress/custerr/en-us/401-1.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401.1 - Unauthorized: Access is denied due to invalid credentials. - - - - -
-
-

401.1 - Unauthorized: Access is denied due to invalid credentials.

-

You do not have permission to view this directory or page using the credentials that you supplied.

-
-
- - diff --git a/IISExpress/custerr/en-us/401-2.htm b/IISExpress/custerr/en-us/401-2.htm deleted file mode 100644 index 655478eb5..000000000 --- a/IISExpress/custerr/en-us/401-2.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401.2 - Unauthorized: Access is denied due to server configuration. - - - - -
-
-

401.2 - Unauthorized: Access is denied due to server configuration.

-

You do not have permission to view this directory or page using the credentials that you supplied because your Web browser is sending a WWW-Authenticate header field that the Web server is not configured to accept.

-
-
- - diff --git a/IISExpress/custerr/en-us/401-3.htm b/IISExpress/custerr/en-us/401-3.htm deleted file mode 100644 index 684813cb8..000000000 --- a/IISExpress/custerr/en-us/401-3.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401.3 - Unauthorized: Access is denied due to an ACL set on the requested resource. - - - - -
-
-

401.3 - Unauthorized: Access is denied due to an ACL set on the requested resource.

-

You do not have permission to view this directory or page due to the access control list (ACL) that is configured for this resource on the Web server.

-
-
- - diff --git a/IISExpress/custerr/en-us/401-4.htm b/IISExpress/custerr/en-us/401-4.htm deleted file mode 100644 index b56d7e162..000000000 --- a/IISExpress/custerr/en-us/401-4.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401.4 - Unauthorized: Authorization failed by filter installed on the Web server. - - - - -
-
-

401.4 - Unauthorized: Authorization failed by filter installed on the Web server.

-

You might not have permission to view this directory or page using the credentials that you supplied. The Web server has a filter installed to verify users connecting to the server and it failed to authenticate your credentials.

-
-
- - diff --git a/IISExpress/custerr/en-us/401-5.htm b/IISExpress/custerr/en-us/401-5.htm deleted file mode 100644 index afe88c5bb..000000000 --- a/IISExpress/custerr/en-us/401-5.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401.5 - Unauthorized: Authorization failed by an ISAPI/CGI application. - - - - -
-
-

401.5 - Unauthorized: Authorization failed by an ISAPI/CGI application.

-

The URL you attempted to reach has an ISAPI or CGI application installed that verifies user credentials before proceeding. This application cannot verify your credentials.

-
-
- - diff --git a/IISExpress/custerr/en-us/401.htm b/IISExpress/custerr/en-us/401.htm deleted file mode 100644 index e87f59dd4..000000000 --- a/IISExpress/custerr/en-us/401.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -401 - Unauthorized: Access is denied due to invalid credentials. - - - - -
-
-

401 - Unauthorized: Access is denied due to invalid credentials.

-

You do not have permission to view this directory or page using the credentials that you supplied.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-1.htm b/IISExpress/custerr/en-us/403-1.htm deleted file mode 100644 index 88b9dd7b0..000000000 --- a/IISExpress/custerr/en-us/403-1.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.1 - Forbidden: Execute access is denied. - - - - -
-
-

403.1 - Forbidden: Execute access is denied.

-

You have attempted to execute a CGI, ISAPI, or other executable program from a directory that does not allow programs to be executed.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-10.htm b/IISExpress/custerr/en-us/403-10.htm deleted file mode 100644 index 95e220ae8..000000000 --- a/IISExpress/custerr/en-us/403-10.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.10 - Forbidden: Web server is configured to deny Execute access. - - - - -
-
-

403.10 - Forbidden: Web server is configured to deny Execute access.

-

You have attempted to execute a CGI, ISAPI, or other executable program from a directory that does not allow programs to be executed.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-11.htm b/IISExpress/custerr/en-us/403-11.htm deleted file mode 100644 index af7c8b4f5..000000000 --- a/IISExpress/custerr/en-us/403-11.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.11 - Forbidden: Password has been changed. - - - - -
-
-

403.11 - Forbidden: Password has been changed.

-

You do not have permission to view this directory or page using the credentials that you supplied.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-12.htm b/IISExpress/custerr/en-us/403-12.htm deleted file mode 100644 index 77bf19332..000000000 --- a/IISExpress/custerr/en-us/403-12.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.12 - Forbidden: Client certificate is denied access by the server certificate mapper. - - - - -
-
-

403.12 - Forbidden: Client certificate is denied access by the server certificate mapper.

-

The account to which your client certificate is mapped on the Web server has been denied access to this Web site. A Secure Sockets Layer (SSL) client certificate is used for identifying you as a valid user of the resource.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-13.htm b/IISExpress/custerr/en-us/403-13.htm deleted file mode 100644 index c55b4486b..000000000 --- a/IISExpress/custerr/en-us/403-13.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.13 - Forbidden: Client certificate has been revoked on the Web server. - - - - -
-
-

403.13 - Forbidden: Client certificate has been revoked on the Web server.

-

Your client certificate was revoked, or the revocation server could not be contacted. A Secure Sockets Layer (SSL) client certificate is used for identifying you as a valid user of the resource.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-14.htm b/IISExpress/custerr/en-us/403-14.htm deleted file mode 100644 index 24d755d71..000000000 --- a/IISExpress/custerr/en-us/403-14.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.14 - Forbidden: Directory listing denied. - - - - -
-
-

403.14 - Forbidden: Directory listing denied.

-

The Web server is configured not to display a list of the contents of this directory.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-15.htm b/IISExpress/custerr/en-us/403-15.htm deleted file mode 100644 index 545223aa4..000000000 --- a/IISExpress/custerr/en-us/403-15.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.15 - Forbidden: Client access licenses have exceeded limits on the Web server. - - - - -
-
-

403.15 - Forbidden: Client access licenses have exceeded limits on the Web server.

-

There are too many people accessing the Web site at this time. The Web server has exceeded its Client Access License limit.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-16.htm b/IISExpress/custerr/en-us/403-16.htm deleted file mode 100644 index f9ba59e1e..000000000 --- a/IISExpress/custerr/en-us/403-16.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.16 - Forbidden: Client certificate is ill-formed or is not trusted by the Web server. - - - - -
-
-

403.16 - Forbidden: Client certificate is ill-formed or is not trusted by the Web server.

-

Your client certificate is untrusted or invalid. A Secure Sockets Layer (SSL) client certificate is used for identifying you as a valid user of the resource.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-17.htm b/IISExpress/custerr/en-us/403-17.htm deleted file mode 100644 index bf06f19f2..000000000 --- a/IISExpress/custerr/en-us/403-17.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.17 - Forbidden: Client certificate has expired or is not yet valid. - - - - -
-
-

403.17 - Forbidden: Client certificate has expired or is not yet valid.

-

Your client certificate has expired or is not yet valid. A Secure Sockets Layer (SSL) client certificate is used for identifying you as a valid user of the resource.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-18.htm b/IISExpress/custerr/en-us/403-18.htm deleted file mode 100644 index 5a6c66983..000000000 --- a/IISExpress/custerr/en-us/403-18.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.18 - Forbidden: Cannot execute requested URL in the current application pool. - - - - -
-
-

403.18 - Forbidden: Cannot execute requested URL in the current application pool.

-

The specified request cannot be executed in the application pool that is configured for this resource on the Web server.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-19.htm b/IISExpress/custerr/en-us/403-19.htm deleted file mode 100644 index 2bd30b282..000000000 --- a/IISExpress/custerr/en-us/403-19.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.19 - Forbidden: Cannot execute CGIs for the client in this application pool. - - - - -
-
-

403.19 - Forbidden: Cannot execute CGIs for the client in this application pool.

-

The configured user for this application pool does not have sufficient privileges to execute CGI applications.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-2.htm b/IISExpress/custerr/en-us/403-2.htm deleted file mode 100644 index 312940c29..000000000 --- a/IISExpress/custerr/en-us/403-2.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.2 - Forbidden: Read access is denied. - - - - -
-
-

403.2 - Forbidden: Read access is denied.

-

There is a problem with the page you are looking for and it cannot be displayed. This error can occur if you are trying to display an HTML page that resides in a directory that is configured to allow Execute or Script permissions only.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-3.htm b/IISExpress/custerr/en-us/403-3.htm deleted file mode 100644 index 0a5c354f6..000000000 --- a/IISExpress/custerr/en-us/403-3.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.3 - Forbidden: Write access is denied. - - - - -
-
-

403.3 - Forbidden: Write access is denied.

-

There is a problem saving the page to the Web site. This error can occur if you attempt to upload a file or modify a file in a directory that does not allow Write access.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-4.htm b/IISExpress/custerr/en-us/403-4.htm deleted file mode 100644 index 997b823b8..000000000 --- a/IISExpress/custerr/en-us/403-4.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.4 - Forbidden: SSL is required to view this resource. - - - - -
-
-

403.4 - Forbidden: SSL is required to view this resource.

-

The page you are trying to access is secured with Secure Sockets Layer (SSL).

-
-
- - diff --git a/IISExpress/custerr/en-us/403-5.htm b/IISExpress/custerr/en-us/403-5.htm deleted file mode 100644 index 121ea5189..000000000 --- a/IISExpress/custerr/en-us/403-5.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.5 - Forbidden: SSL 128 is required to view this resource. - - - - -
-
-

403.5 - Forbidden: SSL 128 is required to view this resource.

-

The resource you are trying to access is secured with a 128-bit version of Secure Sockets Layer (SSL). In order to view this resource, you need a browser that supports this version of SSL.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-6.htm b/IISExpress/custerr/en-us/403-6.htm deleted file mode 100644 index fd3cd5dc7..000000000 --- a/IISExpress/custerr/en-us/403-6.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.6 - Forbidden: IP address of the client has been rejected. - - - - -
-
-

403.6 - Forbidden: IP address of the client has been rejected.

-

The Web server you are attempting to reach has a list of IP addresses that are not allowed to access the Web site, and the IP address of your browsing computer is on this list.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-7.htm b/IISExpress/custerr/en-us/403-7.htm deleted file mode 100644 index 518c3b745..000000000 --- a/IISExpress/custerr/en-us/403-7.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.7 - Forbidden: SSL client certificate is required. - - - - -
-
-

403.7 - Forbidden: SSL client certificate is required.

-

The page you are attempting to access requires your browser to have a Secure Sockets Layer (SSL) client certificate that the Web server will recognize. The client certificate is used for identifying you as a valid user of the resource.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-8.htm b/IISExpress/custerr/en-us/403-8.htm deleted file mode 100644 index 92c8120df..000000000 --- a/IISExpress/custerr/en-us/403-8.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.8 - Forbidden: DNS name of the client is rejected. - - - - -
-
-

403.8 - Forbidden: DNS name of the client is rejected.

-

The Web server you are attempting to reach has a list of DNS names that are not allowed to access this Web site, and the DNS name of your browsing computer is on this list.

-
-
- - diff --git a/IISExpress/custerr/en-us/403-9.htm b/IISExpress/custerr/en-us/403-9.htm deleted file mode 100644 index d37731c76..000000000 --- a/IISExpress/custerr/en-us/403-9.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403.9 - Forbidden: Too many clients are trying to connect to the Web server. - - - - -
-
-

403.9 - Forbidden: Too many clients are trying to connect to the Web server.

-

The Web server is too busy to process your request at this time.

-
-
- - diff --git a/IISExpress/custerr/en-us/403.htm b/IISExpress/custerr/en-us/403.htm deleted file mode 100644 index ed6ca1016..000000000 --- a/IISExpress/custerr/en-us/403.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -403 - Forbidden: Access is denied. - - - - -
-
-

403 - Forbidden: Access is denied.

-

You do not have permission to view this directory or page using the credentials that you supplied.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-1.htm b/IISExpress/custerr/en-us/404-1.htm deleted file mode 100644 index a2230e33b..000000000 --- a/IISExpress/custerr/en-us/404-1.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.1 - File or directory not found: Web site not accessible on the requested port. - - - - -
-
-

404.1 - File or directory not found: Web site not accessible on the requested port.

-

The Web site you are trying to access has an IP address that is configured not to accept requests that specify a port number.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-10.htm b/IISExpress/custerr/en-us/404-10.htm deleted file mode 100644 index f8d33bbc7..000000000 --- a/IISExpress/custerr/en-us/404-10.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.10 - Request header too long. - - - - -
-
-

404.10 - Request header too long.

-

One of the request headers is longer than the specified limit configured in the server.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-11.htm b/IISExpress/custerr/en-us/404-11.htm deleted file mode 100644 index 1b69b4ca4..000000000 --- a/IISExpress/custerr/en-us/404-11.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.11 - URL is double-escaped. - - - - -
-
-

404.11 - URL is double-escaped.

-

This URL is denied because it is susceptible to double-escaping attacks.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-12.htm b/IISExpress/custerr/en-us/404-12.htm deleted file mode 100644 index c9f01f766..000000000 --- a/IISExpress/custerr/en-us/404-12.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.12 - URL has high bit characters. - - - - -
-
-

404.12 - URL has high bit characters.

-

This URL is denied because it has high-bit characters.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-13.htm b/IISExpress/custerr/en-us/404-13.htm deleted file mode 100644 index 60c9ca625..000000000 --- a/IISExpress/custerr/en-us/404-13.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.13 - Content-Length too large. - - - - -
-
-

404.13 - Content-Length too large.

-

This URL is denied because the Content-Length set is longer than specified by configuration.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-14.htm b/IISExpress/custerr/en-us/404-14.htm deleted file mode 100644 index 303bf4160..000000000 --- a/IISExpress/custerr/en-us/404-14.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.14 - URL too long. - - - - -
-
-

404.14 - URL too long.

-

This URL is denied because its length is longer than specified by configuration.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-15.htm b/IISExpress/custerr/en-us/404-15.htm deleted file mode 100644 index 6e7bc3a30..000000000 --- a/IISExpress/custerr/en-us/404-15.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.15 - Query-String too long. - - - - -
-
-

404.15 - Query-String too long.

-

This URL is denied because its Query-String is longer than specified by configuration.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-2.htm b/IISExpress/custerr/en-us/404-2.htm deleted file mode 100644 index c268b50d4..000000000 --- a/IISExpress/custerr/en-us/404-2.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.2 - File or directory not found: Lockdown policy prevents this request. - - - - -
-
-

404.2 - File or directory not found: Lockdown policy prevents this request.

-

The page you are requesting cannot be served due to the Web service extensions that are configured on the Web server.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-3.htm b/IISExpress/custerr/en-us/404-3.htm deleted file mode 100644 index b15df9a75..000000000 --- a/IISExpress/custerr/en-us/404-3.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.3 - File or directory not found: MIME map policy prevents this request. - - - - -
-
-

404.3 - File or directory not found: MIME map policy prevents this request.

-

The page you are requesting cannot be served due to the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognised, and is therefore not allowed.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-4.htm b/IISExpress/custerr/en-us/404-4.htm deleted file mode 100644 index 903e48a94..000000000 --- a/IISExpress/custerr/en-us/404-4.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.4 - File or directory not found: No module handler is registered to handle the request. - - - - -
-
-

404.4 - File or directory not found: No module handler is registered to handle the request.

-

The resource you are looking for does not have a module or handler associated with it. It cannot be handled and served.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-5.htm b/IISExpress/custerr/en-us/404-5.htm deleted file mode 100644 index 5d24abe0f..000000000 --- a/IISExpress/custerr/en-us/404-5.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.5 - URL sequence denied. - - - - -
-
-

404.5 - URL sequence denied.

-

The specified URL sequence is not accepted by the server.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-6.htm b/IISExpress/custerr/en-us/404-6.htm deleted file mode 100644 index c445a6758..000000000 --- a/IISExpress/custerr/en-us/404-6.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.6 - HTTP verb denied. - - - - -
-
-

404.6 - HTTP verb denied.

-

The specified HTTP verb is not accepted by the server.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-7.htm b/IISExpress/custerr/en-us/404-7.htm deleted file mode 100644 index 48090e9a4..000000000 --- a/IISExpress/custerr/en-us/404-7.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.7 - File extension denied. - - - - -
-
-

404.7 - File extension denied.

-

The specified file extension of the resource is not accepted by the server.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-8.htm b/IISExpress/custerr/en-us/404-8.htm deleted file mode 100644 index 5f2768981..000000000 --- a/IISExpress/custerr/en-us/404-8.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.8 - URL namespace hidden. - - - - -
-
-

404.8 - URL namespace hidden.

-

The namespace of the specified URL is hidden by configuration.

-
-
- - diff --git a/IISExpress/custerr/en-us/404-9.htm b/IISExpress/custerr/en-us/404-9.htm deleted file mode 100644 index b35c826db..000000000 --- a/IISExpress/custerr/en-us/404-9.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404.9 - File attribute hidden. - - - - -
-
-

404.9 - File attribute hidden.

-

The requested file has a hidden attribute which prevents it from being served.

-
-
- - diff --git a/IISExpress/custerr/en-us/404.htm b/IISExpress/custerr/en-us/404.htm deleted file mode 100644 index 1fb6ad477..000000000 --- a/IISExpress/custerr/en-us/404.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -404 - File or directory not found. - - - - -
-
-

404 - File or directory not found.

-

The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.

-
-
- - diff --git a/IISExpress/custerr/en-us/405.htm b/IISExpress/custerr/en-us/405.htm deleted file mode 100644 index e63d73545..000000000 --- a/IISExpress/custerr/en-us/405.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -405 - HTTP verb used to access this page is not allowed. - - - - -
-
-

405 - HTTP verb used to access this page is not allowed.

-

The page you are looking for cannot be displayed because an invalid method (HTTP verb) was used to attempt access.

-
-
- - diff --git a/IISExpress/custerr/en-us/406.htm b/IISExpress/custerr/en-us/406.htm deleted file mode 100644 index 241b60dea..000000000 --- a/IISExpress/custerr/en-us/406.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -406 - Client browser does not accept the MIME type of the requested page. - - - - -
-
-

406 - Client browser does not accept the MIME type of the requested page.

-

The page you are looking for cannot be opened by your browser because it has a file name extension that your browser does not accept.

-
-
- - diff --git a/IISExpress/custerr/en-us/412.htm b/IISExpress/custerr/en-us/412.htm deleted file mode 100644 index b464210a8..000000000 --- a/IISExpress/custerr/en-us/412.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -412 - Precondition set by the client failed when evaluated on the Web server. - - - - -
-
-

412 - Precondition set by the client failed when evaluated on the Web server.

-

The request was not completed due to preconditions that are set in the request header. Preconditions prevent the requested method from being applied to a resource other than the one intended. An example of a precondition is testing for expired content in the page cache of the client.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-13.htm b/IISExpress/custerr/en-us/500-13.htm deleted file mode 100644 index ae5567cd9..000000000 --- a/IISExpress/custerr/en-us/500-13.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.13 - Server error: Web server is too busy. - - - - -
-
-

500.13 - Server error: Web server is too busy.

-

The request cannot be processed at this time. The amount of traffic exceeds the Web site's configured capacity.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-14.htm b/IISExpress/custerr/en-us/500-14.htm deleted file mode 100644 index b33d29415..000000000 --- a/IISExpress/custerr/en-us/500-14.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.14 - Server error: Invalid application configuration on the server. - - - - -
-
-

500.14 - Server error: Invalid application configuration on the server.

-

The request cannot be processed due to application configuration errors on the Web server.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-15.htm b/IISExpress/custerr/en-us/500-15.htm deleted file mode 100644 index cbe9c4c30..000000000 --- a/IISExpress/custerr/en-us/500-15.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.15 - Server error: Direct requests for GLOBAL.ASA are not allowed. - - - - -
-
-

500.15 - Server error: Direct requests for GLOBAL.ASA are not allowed.

-

GLOBAL.ASA is a special file that cannot be accessed directly by your browser.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-16.htm b/IISExpress/custerr/en-us/500-16.htm deleted file mode 100644 index fb3030b9c..000000000 --- a/IISExpress/custerr/en-us/500-16.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.16 - Server error: UNC authorization credentials incorrect. - - - - -
-
-

500.16 - Server error: UNC authorization credentials incorrect.

-

The page you are requesting cannot be accessed due to UNC authorization settings that are configured incorrectly on the Web server.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-17.htm b/IISExpress/custerr/en-us/500-17.htm deleted file mode 100644 index 5f40148fa..000000000 --- a/IISExpress/custerr/en-us/500-17.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.17 - Server error: URL authorization store cannot be found. - - - - -
-
-

500.17 - Server error: URL authorization store cannot be found.

-

The URL Authorization store for the page you requested cannot be found on the Web server, therefore your credentials cannot be verified.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-18.htm b/IISExpress/custerr/en-us/500-18.htm deleted file mode 100644 index c2941a620..000000000 --- a/IISExpress/custerr/en-us/500-18.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.18 - Server error: URL authorization store cannot be opened. - - - - -
-
-

500.18 - Server error: URL authorization store cannot be opened.

-

The URL Authorization store for the page you requested cannot be opened on the Web server, therefore your credentials cannot be verified.

-
-
- - diff --git a/IISExpress/custerr/en-us/500-19.htm b/IISExpress/custerr/en-us/500-19.htm deleted file mode 100644 index 9b44494ec..000000000 --- a/IISExpress/custerr/en-us/500-19.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500.19 - Server error: Data for this file is configured improperly. - - - - -
-
-

500.19 - Server error: Data for this file is configured improperly.

-

The requested page cannot be accessed because of a configuration error.

-
-
- - diff --git a/IISExpress/custerr/en-us/500.htm b/IISExpress/custerr/en-us/500.htm deleted file mode 100644 index 072a2601b..000000000 --- a/IISExpress/custerr/en-us/500.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -500 - Internal server error. - - - - -
-
-

500 - Internal server error.

-

There is a problem with the resource you are looking for, and it cannot be displayed.

-
-
- - diff --git a/IISExpress/custerr/en-us/501.htm b/IISExpress/custerr/en-us/501.htm deleted file mode 100644 index 873cb9f21..000000000 --- a/IISExpress/custerr/en-us/501.htm +++ /dev/null @@ -1,28 +0,0 @@ - - - -501 - Header values specify a method that is not implemented. - - - - -
-
-

501 - Header values specify a method that is not implemented.

-

The page you are looking for cannot be displayed because a header value in the request does not match certain configuration settings on the Web server. For example, a request header might specify a POST to a static file that cannot be posted to, or specify a Transfer-Encoding value that cannot make use of compression.

-
-
- - diff --git a/IISExpress/defdoc.dll b/IISExpress/defdoc.dll deleted file mode 100644 index c2bbfa8be..000000000 Binary files a/IISExpress/defdoc.dll and /dev/null differ diff --git a/IISExpress/detoured.dll b/IISExpress/detoured.dll deleted file mode 100644 index 513cfccb2..000000000 Binary files a/IISExpress/detoured.dll and /dev/null differ diff --git a/IISExpress/en-us/iisres.dll.mui b/IISExpress/en-us/iisres.dll.mui deleted file mode 100644 index 24b9914ff..000000000 Binary files a/IISExpress/en-us/iisres.dll.mui and /dev/null differ diff --git a/IISExpress/gzip.dll b/IISExpress/gzip.dll deleted file mode 100644 index 2b8da3db4..000000000 Binary files a/IISExpress/gzip.dll and /dev/null differ diff --git a/IISExpress/hwebcore.dll b/IISExpress/hwebcore.dll deleted file mode 100644 index bc5a110db..000000000 Binary files a/IISExpress/hwebcore.dll and /dev/null differ diff --git a/IISExpress/iisRtl.dll b/IISExpress/iisRtl.dll deleted file mode 100644 index b95802ba1..000000000 Binary files a/IISExpress/iisRtl.dll and /dev/null differ diff --git a/IISExpress/iis_ssi.dll b/IISExpress/iis_ssi.dll deleted file mode 100644 index c0cd4aa97..000000000 Binary files a/IISExpress/iis_ssi.dll and /dev/null differ diff --git a/IISExpress/iiscore.dll b/IISExpress/iiscore.dll deleted file mode 100644 index 471780cda..000000000 Binary files a/IISExpress/iiscore.dll and /dev/null differ diff --git a/IISExpress/iisexpress.exe b/IISExpress/iisexpress.exe deleted file mode 100644 index f8f44fbe2..000000000 Binary files a/IISExpress/iisexpress.exe and /dev/null differ diff --git a/IISExpress/iisexpress.exe.manifest b/IISExpress/iisexpress.exe.manifest deleted file mode 100644 index 20778a00a..000000000 --- a/IISExpress/iisexpress.exe.manifest +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/IISExpress/iisexpresshelper.dll b/IISExpress/iisexpresshelper.dll deleted file mode 100644 index 2d61e4ae1..000000000 Binary files a/IISExpress/iisexpresshelper.dll and /dev/null differ diff --git a/IISExpress/iisres.dll b/IISExpress/iisres.dll deleted file mode 100644 index bd73b83d4..000000000 Binary files a/IISExpress/iisres.dll and /dev/null differ diff --git a/IISExpress/iisutil2.dll b/IISExpress/iisutil2.dll deleted file mode 100644 index bc0c1c553..000000000 Binary files a/IISExpress/iisutil2.dll and /dev/null differ diff --git a/IISExpress/iisvermg.dll b/IISExpress/iisvermg.dll deleted file mode 100644 index 62e2155f8..000000000 Binary files a/IISExpress/iisvermg.dll and /dev/null differ diff --git a/IISExpress/license.rtf b/IISExpress/license.rtf deleted file mode 100644 index 366db337e..000000000 Binary files a/IISExpress/license.rtf and /dev/null differ diff --git a/IISExpress/modrqflt.dll b/IISExpress/modrqflt.dll deleted file mode 100644 index e673f846e..000000000 Binary files a/IISExpress/modrqflt.dll and /dev/null differ diff --git a/IISExpress/nativrd2.dll b/IISExpress/nativrd2.dll deleted file mode 100644 index caf5f68ab..000000000 Binary files a/IISExpress/nativrd2.dll and /dev/null differ diff --git a/IISExpress/redirect.dll b/IISExpress/redirect.dll deleted file mode 100644 index ab4345110..000000000 Binary files a/IISExpress/redirect.dll and /dev/null differ diff --git a/IISExpress/rsca2.dll b/IISExpress/rsca2.dll deleted file mode 100644 index ad5ce8dd0..000000000 Binary files a/IISExpress/rsca2.dll and /dev/null differ diff --git a/IISExpress/rscaext.dll b/IISExpress/rscaext.dll deleted file mode 100644 index 2053597ac..000000000 Binary files a/IISExpress/rscaext.dll and /dev/null differ diff --git a/IISExpress/rtinfo.dll b/IISExpress/rtinfo.dll deleted file mode 100644 index d6749de72..000000000 Binary files a/IISExpress/rtinfo.dll and /dev/null differ diff --git a/IISExpress/static.dll b/IISExpress/static.dll deleted file mode 100644 index 6691ccc5d..000000000 Binary files a/IISExpress/static.dll and /dev/null differ diff --git a/IISExpress/urlauthz.dll b/IISExpress/urlauthz.dll deleted file mode 100644 index d6f8871ea..000000000 Binary files a/IISExpress/urlauthz.dll and /dev/null differ diff --git a/IISExpress/validcfg.dll b/IISExpress/validcfg.dll deleted file mode 100644 index 862e6fb56..000000000 Binary files a/IISExpress/validcfg.dll and /dev/null differ diff --git a/IISExpress/w3dt.dll b/IISExpress/w3dt.dll deleted file mode 100644 index 317ee3bed..000000000 Binary files a/IISExpress/w3dt.dll and /dev/null differ diff --git a/IISExpress/w3tp.dll b/IISExpress/w3tp.dll deleted file mode 100644 index 5a490a2c9..000000000 Binary files a/IISExpress/w3tp.dll and /dev/null differ diff --git a/IISExpress/w3wphost.dll b/IISExpress/w3wphost.dll deleted file mode 100644 index c8481feb6..000000000 Binary files a/IISExpress/w3wphost.dll and /dev/null differ diff --git a/IISExpress/wbhst_pm.dll b/IISExpress/wbhst_pm.dll deleted file mode 100644 index 6f46a7d0b..000000000 Binary files a/IISExpress/wbhst_pm.dll and /dev/null differ diff --git a/NzbDrone.Api/NzbDrone.Api.csproj b/NzbDrone.Api/NzbDrone.Api.csproj index 29ebe1dd9..092d3fe5a 100644 --- a/NzbDrone.Api/NzbDrone.Api.csproj +++ b/NzbDrone.Api/NzbDrone.Api.csproj @@ -61,8 +61,9 @@ False ..\packages\Autofac.3.0.1\lib\net40\Autofac.Configuration.dll - - ..\packages\AutoMapper.2.2.0\lib\net40\AutoMapper.dll + + False + ..\packages\AutoMapper.2.2.1\lib\net40\AutoMapper.dll ..\packages\DotlessClientOnly.1.3.1.0\lib\dotless.ClientOnly.dll diff --git a/NzbDrone.Api/packages.config b/NzbDrone.Api/packages.config index d85739be2..a5e2d4c3a 100644 --- a/NzbDrone.Api/packages.config +++ b/NzbDrone.Api/packages.config @@ -1,7 +1,7 @@  - + diff --git a/NzbDrone.Core.Test/NzbDrone.Core.Test.ncrunchproject b/NzbDrone.Core.Test/NzbDrone.Core.Test.ncrunchproject index 925803202..937eca014 100644 --- a/NzbDrone.Core.Test/NzbDrone.Core.Test.ncrunchproject +++ b/NzbDrone.Core.Test/NzbDrone.Core.Test.ncrunchproject @@ -55,6 +55,5 @@ NzbDrone\.Core\.Test\.ParserTests\.ParserFixture\..* - ..\NzbDrone.Core\bin\Debug\Eloquera.Server.exe PostBuildEventDisabled \ No newline at end of file diff --git a/NzbDrone.Core.Test/TvTests/EpisodeProviderTests/EpisodeProviderTest.cs b/NzbDrone.Core.Test/TvTests/EpisodeProviderTests/EpisodeProviderTest.cs index 42b7a2b14..acfaa9618 100644 --- a/NzbDrone.Core.Test/TvTests/EpisodeProviderTests/EpisodeProviderTest.cs +++ b/NzbDrone.Core.Test/TvTests/EpisodeProviderTests/EpisodeProviderTest.cs @@ -1513,25 +1513,6 @@ namespace NzbDrone.Core.Test.TvTests.EpisodeProviderTests result.Single(e => e.SeasonNumber == 1).Ignored.Should().BeFalse(); } - [Test] - public void GetEpisode_with_EpisodeFile_should_have_quality_set_properly() - { - WithRealDb(); - - var fakeSeries = Builder.CreateNew().Build(); - var fakeFile = Builder.CreateNew().With(f => f.EpisodeFileId).With(c => c.Quality = QualityTypes.WEBDL1080p).Build(); - var fakeEpisodes = Builder.CreateListOfSize(5) - .All().With(e => e.SeriesId = 1).TheFirst(1).With(e => e.EpisodeFile = new EpisodeFile { EpisodeFileId = 1 }).With(e => e.EpisodeFile = fakeFile).Build(); - - Db.Insert(fakeSeries); - Db.InsertMany(fakeEpisodes); - Db.Insert(fakeFile); - - //Act - var episode = Mocker.Resolve().GetEpisode(1); - //Assert - episode.EpisodeFile.Quality.Should().Be(QualityTypes.WEBDL1080p); - } } } diff --git a/NzbDrone.Services.Api/NzbDrone.Services.Api.csproj b/NzbDrone.Services.Api/NzbDrone.Services.Api.csproj index 86232e506..eae3ac7e2 100644 --- a/NzbDrone.Services.Api/NzbDrone.Services.Api.csproj +++ b/NzbDrone.Services.Api/NzbDrone.Services.Api.csproj @@ -48,15 +48,18 @@ False ..\packages\Autofac.3.0.1\lib\net40\Autofac.Configuration.dll - - ..\packages\AutoMapper.2.2.0\lib\net40\AutoMapper.dll + + False + ..\packages\AutoMapper.2.2.1\lib\net40\AutoMapper.dll - - ..\packages\mongocsharpdriver.1.7\lib\net35\MongoDB.Bson.dll + + False + ..\packages\mongocsharpdriver.1.7.1\lib\net35\MongoDB.Bson.dll - - ..\packages\mongocsharpdriver.1.7\lib\net35\MongoDB.Driver.dll + + False + ..\packages\mongocsharpdriver.1.7.1\lib\net35\MongoDB.Driver.dll False diff --git a/NzbDrone.Services.Api/packages.config b/NzbDrone.Services.Api/packages.config index b05d773bc..22ce1d9a6 100644 --- a/NzbDrone.Services.Api/packages.config +++ b/NzbDrone.Services.Api/packages.config @@ -1,8 +1,8 @@  - - + + diff --git a/NzbDrone.Web.UI.Test/AutomationTestBase.cs b/NzbDrone.Web.UI.Test/AutomationTestBase.cs deleted file mode 100644 index 6bdace82c..000000000 --- a/NzbDrone.Web.UI.Test/AutomationTestBase.cs +++ /dev/null @@ -1,256 +0,0 @@ -using System; -using System.Diagnostics; -using System.Drawing.Imaging; -using System.IO; -using System.Linq; -using NUnit.Framework; -using NzbDrone.Common; -using OpenQA.Selenium; -using OpenQA.Selenium.Firefox; -using OpenQA.Selenium.Remote; - -namespace NzbDrone.Web.UI.Automation -{ - [Explicit] - [TestFixture(Category = "Automation")] - public abstract class AutomationTestBase - { - private static readonly EnvironmentProvider environmentProvider = new EnvironmentProvider(); - - private readonly string _clonePackagePath; - private readonly string _masterPackagePath; - - protected string AppUrl - { - get - { - return "http://localhost:8989"; - } - } - - protected AutomationTestBase() - { - var rawPackagePath = Path.Combine(environmentProvider.ApplicationPath, "_rawPackage"); - _clonePackagePath = Path.Combine(rawPackagePath, "NzbDrone_Automation"); - _masterPackagePath = Path.Combine(rawPackagePath, "NzbDrone"); - } - - - protected RemoteWebDriver Driver { get; private set; } - - - - [SetUp] - public void AutomationSetup() - { - - } - - [TearDown] - public void AutomationTearDown() - { - - - if (!Directory.Exists(Directory.GetCurrentDirectory() + "\\Screenshots")) - { - Directory.CreateDirectory(Directory.GetCurrentDirectory() + "\\Screenshots"); - } - - foreach (var file in Directory.GetFiles(Directory.GetCurrentDirectory(), "*__*.png").Select(c => new FileInfo(c))) - { - File.Copy(file.FullName, Directory.GetCurrentDirectory() + "\\Screenshots\\" + file.Name, true); - file.Delete(); - } - } - - - [TestFixtureSetUp] - public void AutomationTestFixtureSetup() - { - StopNzbDrone(); - - - DeleteClone(); - ClonePackage(); - - //StartNzbDrone(); - InstallNzbDroneService(); - - new HttpProvider().DownloadString(AppUrl); - - Driver = new FirefoxDriver(); - } - - - - [TestFixtureTearDown] - public void AutomationTestFixtureTearDown() - { - Driver.Close(); - StopNzbDrone(); - } - - - protected void CaptureScreen() - { - var method = new StackFrame(1).GetMethod().Name; - - var fileName = String.Format("{0}__{1}.png", GetType().Name, method); - - ((ITakesScreenshot)Driver).GetScreenshot().SaveAsFile(fileName, ImageFormat.Png); - } - - - - private void StartNzbDrone() - { - StartProcess("nzbdrone.exe", false); - - } - - private void StopNzbDrone() - { - - foreach (var process in Process.GetProcesses()) - { - if (string.Equals(process.ProcessName, "NzbDrone", StringComparison.InvariantCultureIgnoreCase) - || string.Equals(process.ProcessName, "IISExpress", StringComparison.InvariantCultureIgnoreCase)) - { - process.Kill(); - process.WaitForExit(); - } - } - - try - { - StartProcess("ServiceUninstall.exe", true); - } - catch { } - - foreach (var process in Process.GetProcesses()) - { - if (string.Equals(process.ProcessName, "NzbDrone", StringComparison.InvariantCultureIgnoreCase) - || string.Equals(process.ProcessName, "IISExpress", StringComparison.InvariantCultureIgnoreCase) - || - string.Equals(process.ProcessName, "ServiceUninstall", StringComparison.InvariantCultureIgnoreCase)) - { - process.Kill(); - process.WaitForExit(); - } - } - - } - - private void InstallNzbDroneService() - { - StartProcess("ServiceInstall.exe", true); - } - - private void StartProcess(string fileName, bool waitForExit) - { - - var startInfo = new ProcessStartInfo - { - FileName = Path.Combine(_clonePackagePath, fileName), - RedirectStandardOutput = true, - RedirectStandardError = true, - UseShellExecute = false, - CreateNoWindow = true, - }; - - var nzbDroneProcess = new Process - { - StartInfo = startInfo - }; - - nzbDroneProcess.OutputDataReceived += (o, args) => Console.WriteLine(args.Data); - nzbDroneProcess.ErrorDataReceived += (o, args) => Console.WriteLine(args.Data); - - nzbDroneProcess.Start(); - - nzbDroneProcess.BeginErrorReadLine(); - nzbDroneProcess.BeginOutputReadLine(); - - if (waitForExit) - { - nzbDroneProcess.WaitForExit(); - } - } - - - private void ClonePackage() - { - new DiskProvider().CopyDirectory(_masterPackagePath, _clonePackagePath); - } - - private void DeleteClone() - { - if (Directory.Exists(_clonePackagePath)) - { - Directory.Delete(_clonePackagePath, true); - } - } - - private string CreatePackage() - { - Console.WriteLine("Creating NzbDrone Package"); - - StopNzbDrone(); - - var rootDirectory = new DirectoryInfo(environmentProvider.ApplicationPath); - - if (rootDirectory.GetDirectories("_rawPackage").Any()) - { - rootDirectory.GetDirectories("_rawPackage").ToList().ForEach(c => c.Delete(true)); - } - - var startInfo = new ProcessStartInfo - { - FileName = Path.Combine(rootDirectory.FullName, "package.bat"), - WorkingDirectory = rootDirectory.FullName - }; - - Process.Start(startInfo).WaitForExit(); - - var testFolder = Path.Combine(environmentProvider.SystemTemp, "NzbDroneAutomation"); - - if (Directory.Exists(testFolder)) - { - Directory.Delete(testFolder, true); - } - - Directory.Move(Path.Combine(rootDirectory.FullName, "_rawPackage", "nzbdrone"), testFolder); - - - - return testFolder; - } - - private void ResetUserData() - { - var appDataPath = Path.Combine(_clonePackagePath, "NzbDrone.Web", "app_data"); - - if (Directory.Exists(appDataPath)) - Directory.Delete(appDataPath, true); - } - - - private static void CleanBinFolder() - { - var folderName = "Debug"; - - if (EnvironmentProvider.IsDebug) - { - folderName = "Release"; - } - - var dirs = Directory.GetDirectories(environmentProvider.ApplicationPath, folderName, SearchOption.AllDirectories); - - - foreach (var dir in dirs) - { - Directory.Delete(dir, true); - } - } - } -} diff --git a/NzbDrone.Web.UI.Test/BasicPageFixture.cs b/NzbDrone.Web.UI.Test/BasicPageFixture.cs deleted file mode 100644 index d0452296f..000000000 --- a/NzbDrone.Web.UI.Test/BasicPageFixture.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System.Linq; -using NUnit.Framework; -using NzbDrone.Web.UI.Automation.Fluent; - -namespace NzbDrone.Web.UI.Automation -{ - public class BasicPageFixture : AutomationTestBase - { - [Test] - public void HomePage() - { - Driver.GivenHomePage(); - CaptureScreen(); - Driver.Should().BeNzbDronePage(); - } - - [Test] - public void HistoryPage() - { - Driver.GivenHistoryPage(); - CaptureScreen(); - Driver.Should().BeNzbDronePage(); - } - - [Test] - public void MissingPage() - { - Driver.GivenMissingPage(); - CaptureScreen(); - Driver.Should().BeNzbDronePage(); - } - - [Test] - public void SettingsPage() - { - Driver.GivenSettingsPage(); - CaptureScreen(); - Driver.Should().BeNzbDronePage(); - } - - } -} diff --git a/NzbDrone.Web.UI.Test/Drivers/chromedriver.exe b/NzbDrone.Web.UI.Test/Drivers/chromedriver.exe deleted file mode 100644 index 5178430dd..000000000 Binary files a/NzbDrone.Web.UI.Test/Drivers/chromedriver.exe and /dev/null differ diff --git a/NzbDrone.Web.UI.Test/Fluent/AssertionExtention.cs b/NzbDrone.Web.UI.Test/Fluent/AssertionExtention.cs deleted file mode 100644 index 15a4f9f36..000000000 --- a/NzbDrone.Web.UI.Test/Fluent/AssertionExtention.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.Linq; -using OpenQA.Selenium.Remote; - -namespace NzbDrone.Web.UI.Automation.Fluent -{ - public static class AssertionExtention - { - public static DriverAssertion Should(this RemoteWebDriver actualValue) - { - return new DriverAssertion(actualValue); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web.UI.Test/Fluent/DriverAssertion.cs b/NzbDrone.Web.UI.Test/Fluent/DriverAssertion.cs deleted file mode 100644 index 0cc64ce9b..000000000 --- a/NzbDrone.Web.UI.Test/Fluent/DriverAssertion.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System.Linq; -using FluentAssertions; -using OpenQA.Selenium.Remote; - -namespace NzbDrone.Web.UI.Automation.Fluent -{ - public class DriverAssertion - { - private readonly RemoteWebDriver _driver; - - public DriverAssertion(RemoteWebDriver driver) - { - _driver = driver; - } - - public void BeNzbDronePage() - { - _driver.Title.Should().EndWith("NzbDrone"); - } - } -} diff --git a/NzbDrone.Web.UI.Test/Fluent/NavigationExtention.cs b/NzbDrone.Web.UI.Test/Fluent/NavigationExtention.cs deleted file mode 100644 index ccc943b82..000000000 --- a/NzbDrone.Web.UI.Test/Fluent/NavigationExtention.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System.Linq; -using OpenQA.Selenium.Remote; - -namespace NzbDrone.Web.UI.Automation.Fluent -{ - public static class NavigationExtention - { - - private const string baseUrl = "http://localhost:8989/"; - - public static RemoteWebDriver GivenHomePage(this RemoteWebDriver driver) - { - driver.Navigate().GoToUrl(baseUrl); - return driver; - } - - public static RemoteWebDriver GivenSettingsPage(this RemoteWebDriver driver) - { - driver.Navigate().GoToUrl(baseUrl + "settings"); - return driver; - } - - public static RemoteWebDriver GivenUpcomingPage(this RemoteWebDriver driver) - { - driver.Navigate().GoToUrl(baseUrl + "Upcoming"); - return driver; - } - - public static RemoteWebDriver GivenHistoryPage(this RemoteWebDriver driver) - { - driver.Navigate().GoToUrl(baseUrl + "History"); - return driver; - } - - public static RemoteWebDriver GivenMissingPage(this RemoteWebDriver driver) - { - driver.Navigate().GoToUrl(baseUrl + "Missing"); - return driver; - } - } -} diff --git a/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.csproj b/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.csproj deleted file mode 100644 index 260bb62b3..000000000 --- a/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.csproj +++ /dev/null @@ -1,120 +0,0 @@ - - - - Debug - AnyCPU - 8.0.30703 - 2.0 - {3CCD64E1-84DA-4853-B7EF-98B02FD4E39E} - Library - Properties - NzbDrone.Web.UI.Automation - NzbDrone.Web.UI.Automation - v4.0 - 512 - ..\ - true - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - x86 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - x86 - - - true - bin\x86\Debug\ - DEBUG;TRACE - full - x86 - prompt - MinimumRecommendedRules.ruleset - - - bin\x86\Release\ - TRACE - true - pdbonly - x86 - prompt - MinimumRecommendedRules.ruleset - - - - False - ..\packages\FluentAssertions.2.0.0.1\lib\net40\FluentAssertions.dll - - - ..\packages\DotNetZip.1.9.1.8\lib\net20\Ionic.Zip.dll - - - ..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll - - - ..\packages\NUnit.2.6.2\lib\nunit.framework.dll - - - - - - - - - - - False - ..\packages\Selenium.WebDriver.2.25.1\lib\net40\WebDriver.dll - - - - - - - - - - - - - PreserveNewest - - - - - {F2BE0FDF-6E47-4827-A420-DD4EF82407F8} - NzbDrone.Common - - - {D12F7F2F-8A3C-415F-88FA-6DD061A84869} - NzbDrone - - - - - Always - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.ncrunchproject b/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.ncrunchproject deleted file mode 100644 index f74e5814a..000000000 --- a/NzbDrone.Web.UI.Test/NzbDrone.Web.UI.Automation.ncrunchproject +++ /dev/null @@ -1,37 +0,0 @@ - - false - false - false - true - false - false - false - false - true - true - false - true - true - 60000 - - - - AutoDetect - - - NzbDrone.Web.UI.Automation.BasicPageFixture.HistoryPage - - - NzbDrone.Web.UI.Automation.BasicPageFixture.HomePage - - - NzbDrone.Web.UI.Automation.BasicPageFixture.MissingPage - - - NzbDrone.Web.UI.Automation.BasicPageFixture.SettingsPage - - - .* - - - \ No newline at end of file diff --git a/NzbDrone.Web.UI.Test/Properties/AssemblyInfo.cs b/NzbDrone.Web.UI.Test/Properties/AssemblyInfo.cs deleted file mode 100644 index 25d236144..000000000 --- a/NzbDrone.Web.UI.Test/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("NzbDrone.Web.UI.Test")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("NzbDrone.Web.UI.Test")] -[assembly: AssemblyCopyright("Copyright © 2011")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("8fa28d95-f018-482c-a834-139d0d9f44f2")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/NzbDrone.Web.UI.Test/app.config b/NzbDrone.Web.UI.Test/app.config deleted file mode 100644 index f21d00089..000000000 --- a/NzbDrone.Web.UI.Test/app.config +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/NzbDrone.Web.UI.Test/packages.config b/NzbDrone.Web.UI.Test/packages.config deleted file mode 100644 index f008c2551..000000000 --- a/NzbDrone.Web.UI.Test/packages.config +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/App_Start/DataTablesMvc.cs b/NzbDrone.Web/App_Start/DataTablesMvc.cs deleted file mode 100644 index 8375e53ab..000000000 --- a/NzbDrone.Web/App_Start/DataTablesMvc.cs +++ /dev/null @@ -1,17 +0,0 @@ -using DataTables.Mvc.Core.Helpers; -using DataTables.Mvc.Core.Models; -using System.Web.Mvc; - -[assembly: WebActivator.PreApplicationStartMethod(typeof(NzbDrone.Web.App_Start.DataTablesModelBinderActivator), "Start")] - -namespace NzbDrone.Web.App_Start -{ - public static class DataTablesModelBinderActivator - { - public static void Start() - { - if (!ModelBinders.Binders.ContainsKey(typeof(DataTablesPageRequest))) - ModelBinders.Binders.Add(typeof(DataTablesPageRequest), new DataTablesModelBinder()); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/App_Start/Logging.cs b/NzbDrone.Web/App_Start/Logging.cs deleted file mode 100644 index 86f0f5126..000000000 --- a/NzbDrone.Web/App_Start/Logging.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Linq; -using NLog; -using NzbDrone.Common; - -[assembly: WebActivator.PreApplicationStartMethod(typeof(NzbDrone.Web.App_Start.Logging), "PreStart")] - -namespace NzbDrone.Web.App_Start -{ - - public static class Logging - { - public static void PreStart() - { - var environmentProvider = new EnvironmentProvider(); - - //LogManager.Configuration = new XmlLoggingConfiguration(environmentProvider.GetNlogConfigPath(), false); - - LogConfiguration.RegisterUdpLogger(); - LogConfiguration.RegisterRemote(); - LogConfiguration.RegisterConsoleLogger(LogLevel.Info, "NzbDrone.Web.MvcApplication"); - LogConfiguration.RegisterConsoleLogger(LogLevel.Info, "NzbDrone.Core.CentralDispatch"); - LogConfiguration.RegisterRollingFileLogger(environmentProvider.GetLogFileName(), LogLevel.Trace); - - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/App_Start/MiniProfiler.cs b/NzbDrone.Web/App_Start/MiniProfiler.cs deleted file mode 100644 index 0aaa711bc..000000000 --- a/NzbDrone.Web/App_Start/MiniProfiler.cs +++ /dev/null @@ -1,112 +0,0 @@ -using System; -using System.Web; -using System.Web.Mvc; -using System.Linq; -using StackExchange.Profiling; -using StackExchange.Profiling.MVCHelpers; -using Microsoft.Web.Infrastructure; -using Microsoft.Web.Infrastructure.DynamicModuleHelper; -//using System.Data; -//using System.Data.Entity; -//using System.Data.Entity.Infrastructure; -//using StackExchange.Profiling.Data.EntityFramework; -//using StackExchange.Profiling.Data.Linq2Sql; - -[assembly: WebActivator.PreApplicationStartMethod( - typeof(NzbDrone.Web.App_Start.MiniProfilerPackage), "PreStart")] - -[assembly: WebActivator.PostApplicationStartMethod( - typeof(NzbDrone.Web.App_Start.MiniProfilerPackage), "PostStart")] - - -namespace NzbDrone.Web.App_Start -{ - public static class MiniProfilerPackage - { - public static void PreStart() - { - - // Be sure to restart you ASP.NET Developement server, this code will not run until you do that. - - //TODO: See - _MINIPROFILER UPDATED Layout.cshtml - // For profiling to display in the UI you will have to include the line @StackExchange.Profiling.MiniProfiler.RenderIncludes() - // in your master layout - - //TODO: Non SQL Server based installs can use other formatters like: new StackExchange.Profiling.SqlFormatters.InlineFormatter() - MiniProfiler.Settings.SqlFormatter = new StackExchange.Profiling.SqlFormatters.SqlServerFormatter(); - - //TODO: To profile a standard DbConnection: - // var profiled = new ProfiledDbConnection(cnn, MiniProfiler.Current); - - //TODO: If you are profiling EF code first try: - // MiniProfilerEF.Initialize(); - - //Make sure the MiniProfiler handles BeginRequest and EndRequest - DynamicModuleUtility.RegisterModule(typeof(MiniProfilerStartupModule)); - - //Setup profiler for Controllers via a Global ActionFilter - GlobalFilters.Filters.Add(new ProfilingActionFilter()); - - // You can use this to check if a request is allowed to view results - //MiniProfiler.Settings.Results_Authorize = (request) => - //{ - // you should implement this if you need to restrict visibility of profiling on a per request basis - // return !DisableProfilingResults; - //}; - - // the list of all sessions in the store is restricted by default, you must return true to alllow it - //MiniProfiler.Settings.Results_List_Authorize = (request) => - //{ - // you may implement this if you need to restrict visibility of profiling lists on a per request basis - //return true; // all requests are kosher - //}; - } - - public static void PostStart() - { - // Intercept ViewEngines to profile all partial views and regular views. - // If you prefer to insert your profiling blocks manually you can comment this out - var copy = ViewEngines.Engines.ToList(); - ViewEngines.Engines.Clear(); - foreach (var item in copy) - { - ViewEngines.Engines.Add(new ProfilingViewEngine(item)); - } - } - } - - public class MiniProfilerStartupModule : IHttpModule - { - public void Init(HttpApplication context) - { - context.BeginRequest += (sender, e) => - { - var request = ((HttpApplication)sender).Request; - //TODO: By default only local requests are profiled, optionally you can set it up - // so authenticated users are always profiled - //if (request.IsLocal) { MiniProfiler.Start(); } - MiniProfiler.Start(); - }; - - - // TODO: You can control who sees the profiling information - /* - context.AuthenticateRequest += (sender, e) => - { - if (!CurrentUserIsAllowedToSeeProfiler()) - { - StackExchange.Profiling.MiniProfiler.Stop(discardResults: true); - } - }; - */ - - context.EndRequest += (sender, e) => - { - MiniProfiler.Stop(); - }; - } - - public void Dispose() { } - } -} - diff --git a/NzbDrone.Web/ClassDiagram1.cd b/NzbDrone.Web/ClassDiagram1.cd deleted file mode 100644 index 7b894197b..000000000 --- a/NzbDrone.Web/ClassDiagram1.cd +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/NzbDrone.Web/Content/ActionButton.css b/NzbDrone.Web/Content/ActionButton.css deleted file mode 100644 index 4727720a2..000000000 --- a/NzbDrone.Web/Content/ActionButton.css +++ /dev/null @@ -1,22 +0,0 @@ -.actionButton -{ - margin: 5px; - padding: 2px 5px; - background-repeat: no-repeat; - background-position: 5px center; - background-color: #cccccc; - display: inline-block; - font-size: 15px; -} - -.actionButton img -{ - cursor: pointer; - vertical-align: middle; - position: relative; - bottom: 3px; -} - -.delete -{ -} diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/css/jquery.dataTables.css b/NzbDrone.Web/Content/DataTables-NzbDrone/media/css/jquery.dataTables.css deleted file mode 100644 index ddd272f9d..000000000 --- a/NzbDrone.Web/Content/DataTables-NzbDrone/media/css/jquery.dataTables.css +++ /dev/null @@ -1,318 +0,0 @@ - -/* - * Table - */ -table.dataTable { - margin: 0 auto; - clear: both; - width: 100%; - border-style: none; - border-width: 1px; - border-spacing: 2px; - border-color: white; - border-collapse: collapse; -} - -table.dataTable thead th { - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - border-width: 300; - font-size: 17px; - padding: 2px; - border-style: none; - border-color: #EEEEEE; - padding-left: 7px; - text-align: left; - background-color: white; - font-weight: lighter; - cursor: pointer; - *cursor: hand; -} - -table.dataTable tfoot th { - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - border-width: 300; - font-size: 17px; - padding: 2px; - border-style: none; - border-color: #EEEEEE; - padding-left: 7px; - text-align: left; - background-color: white; - font-weight: lighter; - cursor: pointer; - *cursor: hand; -} - -table.dataTable td { - /*padding: 3px 10px;*/ - border-width: 1px; - border-style: solid; - border-color: #EEEEEE; - padding: 0px 8px 0px 8px; -} - -table.dataTable td.center, -table.dataTable td.dataTables_empty { - text-align: center; -} - -table.dataTable tr.odd { background-color: white; } -table.dataTable tr.even { background-color: #F0F5FF; } - -/* Disable Sorting Highlighting -table.dataTable tr.odd td.sorting_1 { background-color: #D3D6FF; } -table.dataTable tr.odd td.sorting_2 { background-color: #DADCFF; } -table.dataTable tr.odd td.sorting_3 { background-color: #E0E2FF; } -table.dataTable tr.even td.sorting_1 { background-color: #EAEBFF; } -table.dataTable tr.even td.sorting_2 { background-color: #F2F3FF; } -table.dataTable tr.even td.sorting_3 { background-color: #F9F9FF; } -*/ - - -/* - * Table wrapper - */ -.dataTables_wrapper { - position: relative; - clear: both; - *zoom: 1; -} - - -/* - * Page length menu - */ -.dataTables_length { - float: left; -} - - -/* - * Filter - */ -.dataTables_filter { - float: right; - text-align: right; -} - - -/* - * Table information - */ -.dataTables_info { - clear: both; - float: right; -} - - -/* - * Pagination - */ -.dataTables_paginate { - float: left; - text-align: right; -} - -/* Two button pagination - previous / next */ -/*.paginate_disabled_previous, -.paginate_enabled_previous, -.paginate_disabled_next, -.paginate_enabled_next { - height: 19px; - float: left; - cursor: pointer; - *cursor: hand; - color: #111 !important; -} -.paginate_disabled_previous:hover, -.paginate_enabled_previous:hover, -.paginate_disabled_next:hover, -.paginate_enabled_next:hover { - text-decoration: none !important; -} -.paginate_disabled_previous:active, -.paginate_enabled_previous:active, -.paginate_disabled_next:active, -.paginate_enabled_next:active { - outline: none; -} - -.paginate_disabled_previous, -.paginate_disabled_next { - color: #666 !important; -} -.paginate_disabled_previous, -.paginate_enabled_previous { - padding-left: 23px; -} -.paginate_disabled_next, -.paginate_enabled_next { - padding-right: 23px; - margin-left: 10px; -} - -.paginate_enabled_previous { background: url('../images/back_enabled.png') no-repeat top left; } -.paginate_enabled_previous:hover { background: url('../images/back_enabled_hover.png') no-repeat top left; } -.paginate_disabled_previous { background: url('../images/back_disabled.png') no-repeat top left; } - -.paginate_enabled_next { background: url('../images/forward_enabled.png') no-repeat top right; } -.paginate_enabled_next:hover { background: url('../images/forward_enabled_hover.png') no-repeat top right; } -.paginate_disabled_next { background: url('../images/forward_disabled.png') no-repeat top right; } -*/ -/* Four button pagination - first / previous / next / last */ -.paginate_disabled_previous, -.paginate_enabled_previous, -.paginate_disabled_next, -.paginate_enabled_next, -.paginate_disabled_first, -.paginate_enabled_first, -.paginate_disabled_last, -.paginate_enabled_last { - height: 19px; - float: left; - cursor: pointer; - *cursor: hand; - color: #111 !important; -} -.paginate_disabled_previous:hover, -.paginate_enabled_previous:hover, -.paginate_disabled_next:hover, -.paginate_enabled_next:hover, -.paginate_disabled_first:hover, -.paginate_enabled_first:hover, -.paginate_disabled_last:hover, -.paginate_enabled_last:hover { - text-decoration: none !important; -} -.paginate_disabled_previous:active, -.paginate_enabled_previous:active, -.paginate_disabled_next:active, -.paginate_enabled_next:active, -.paginate_disabled_first:active, -.paginate_enabled_first:active, -.paginate_disabled_last:active, -.paginate_enabled_last:active { - outline: none; -} - -.paginate_disabled_previous, -.paginate_disabled_next, -.paginate_disabled_first, -.paginate_disabled_last { - color: #666 !important; -} -.paginate_disabled_previous, -.paginate_enabled_previous, -.paginate_disabled_first, -.paginate_enabled_first { - padding-left: 23px; -} -.paginate_disabled_next, -.paginate_enabled_next, -.paginate_disabled_last, -.paginate_enabled_last { - padding-right: 23px; - margin-left: 10px; -} - -.paginate_enabled_first { background: url('../images/back.png') no-repeat top left; } -.paginate_enabled_first:hover { background: url('../images/back.png') no-repeat top left; } -.paginate_disabled_first { background: url('../images/back.png') no-repeat top left; } - -.paginate_enabled_previous { background: url('../images/back.png') no-repeat top left; } -.paginate_enabled_previous:hover { background: url('../images/back.png') no-repeat top left; } -.paginate_disabled_previous { background: url('../images/back.png') no-repeat top left; } - -.paginate_enabled_next { background: url('../images/forward.png') no-repeat top right; } -.paginate_enabled_next:hover { background: url('../images/forward.png') no-repeat top right; } -.paginate_disabled_next { background: url('../images/forward.png') no-repeat top right; } - -.paginate_enabled_last { background: url('../images/forward.png') no-repeat top right; } -.paginate_enabled_last:hover { background: url('../images/forward.png') no-repeat top right; } -.paginate_disabled_last { background: url('../images/forward.png') no-repeat top right; } - -/* Full number pagination */ -.paging_full_numbers { - height: 22px; - line-height: 22px; -} -.paging_full_numbers a:active { - outline: none -} -.paging_full_numbers a:hover { - text-decoration: none; -} - -.paging_full_numbers a.paginate_button, -.paging_full_numbers a.paginate_active { - border: 1px solid #aaa; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-radius: 5px; - padding: 2px 5px; - margin: 0 3px; - cursor: pointer; - *cursor: hand; - color: #333 !important; -} - -.paging_full_numbers a.paginate_button { - background-color: #ddd; -} - -.paging_full_numbers a.paginate_button:hover { - background-color: #ccc; - text-decoration: none !important; -} - -.paging_full_numbers a.paginate_active { - background-color: #99B3FF; -} - - -/* - * Processing indicator - */ -.dataTables_processing { - position: absolute; - top: 50%; - left: 50%; - width: 250px; - height: 30px; - margin-left: -125px; - margin-top: -15px; - padding: 14px 0 2px 0; - border: 1px solid #ddd; - text-align: center; - color: #999; - font-size: 14px; - background-color: white; -} - - -/* - * Sorting - */ -.sorting { background: url('../images/sort_both.png') no-repeat center right; } -.sorting_asc { background: url('../images/sort_asc.png') no-repeat center right; } -.sorting_desc { background: url('../images/sort_desc.png') no-repeat center right; } - -.sorting_asc_disabled { background: url('../images/sort_asc_disabled.png') no-repeat center right; } -.sorting_desc_disabled { background: url('../images/sort_desc_disabled.png') no-repeat center right; } - -table.dataTable th:active { - outline: none; -} - - -/* - * Scrolling - */ -.dataTables_scroll { - clear: both; -} - -.dataTables_scrollBody { - *margin-top: -1px; -} - diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/back.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/back.png deleted file mode 100644 index 52f92f914..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/back.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/forward.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/forward.png deleted file mode 100644 index 4ce836851..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/forward.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc.png deleted file mode 100644 index f50f188ae..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc_disabled.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc_disabled.png deleted file mode 100644 index f50f188ae..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_asc_disabled.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_both.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_both.png deleted file mode 100644 index 18670406b..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_both.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc.png deleted file mode 100644 index d7762422e..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc.png and /dev/null differ diff --git a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc_disabled.png b/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc_disabled.png deleted file mode 100644 index 7824973cc..000000000 Binary files a/NzbDrone.Web/Content/DataTables-NzbDrone/media/images/sort_desc_disabled.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Grid.css b/NzbDrone.Web/Content/Grid.css deleted file mode 100644 index b2d30e44e..000000000 --- a/NzbDrone.Web/Content/Grid.css +++ /dev/null @@ -1,126 +0,0 @@ -.gridImage, .gridAction, .grid-icon -{ - width: 17px; - padding: 3px 1px; - vertical-align: middle; - border: none; - display: inline-block !important; - text-decoration: none !important; - color: #000000; - font-size: 19px; - line-height: 19px; -} - -.gridAction:hover -{ - cursor: pointer; -} - -/* Custom Grid */ -.seriesTable -{ - width: 100%; - border-style: none; - border-collapse: collapse; -} - -.seriesTable th -{ - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - font-size: 17px; - padding: 2px; - border-style: none; - padding-left: 7px; - text-align: left; - background-color: white; - font-weight: lighter; -} - -.seriesTable td -{ - border-style: solid; - border-color: #EEEEEE; - border-width: 1px; - padding: 0px 8px 0px 8px; -} - -.title-row td -{ - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - font-size: 20px; - background-color: #CAD5E3; - font-weight: lighter; - color: #3C3C3C; -} - -.detail-row -{ - display: none; -} - -/* Colour alternating rows */ -.seriesTable .alt-row -{ - background: #f0f5ff; -} - -/* Episode Grid Row Colouring */ -.episodeIgnored -{ - background: rgb(229, 228, 228); - opacity: 0.7; -} - -.episodeMissing, table.dataTable tr.series-ended { - background-color: #f5d6d6; -} - -/*Hidden Grid to prevent FOUSC*/ -.hidden-grid -{ - display: none; -} - -.grid-container -{ - overflow: hidden; -} - -table.dataTable thead th.sorting_disabled -{ - cursor: default; -} - -.dataTables_paginate { - margin-top: 10px; -} - -table.dataTable thead th.sorting_desc, table.dataTable thead th.sorting_asc, table.dataTable thead th.sorting:hover -{ - background-color: #e7efff; -} - -.paginate_disabled_previous:hover, .paginate_disabled_next:hover, .paginate_disabled_first:hover, .paginate_disabled_last:hover, .paginate_disabled_previous, .paginate_disabled_next, .paginate_disabled_first, .paginate_disabled_last -{ - opacity: 0.2; - cursor: default; -} - -.paginate_enabled_previous, .paginate_enabled_next, .paginate_enabled_first, .paginate_enabled_last -{ - opacity: 0.7; -} - -.paginate_enabled_previous:hover, .paginate_enabled_next:hover, .paginate_enabled_first:hover, .paginate_enabled_last:hover -{ - opacity: 1; -} - -/* Icon color when ignored */ -.ignored { - color: gray !important; -} - -[data-status="Missing"] { - color: #B40404 !important; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/Images/Indexers/FileSharingTalk.png b/NzbDrone.Web/Content/Images/Indexers/FileSharingTalk.png deleted file mode 100644 index 019d2e963..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/FileSharingTalk.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/Newznab.png b/NzbDrone.Web/Content/Images/Indexers/Newznab.png deleted file mode 100644 index a6ffe3238..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/Newznab.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/Newznab_Nzbs.org.png b/NzbDrone.Web/Content/Images/Indexers/Newznab_Nzbs.org.png deleted file mode 100644 index 36e68a30f..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/Newznab_Nzbs.org.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/Newznab_dognzb.cr.png b/NzbDrone.Web/Content/Images/Indexers/Newznab_dognzb.cr.png deleted file mode 100644 index 895b0576f..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/Newznab_dognzb.cr.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/Newznab_nzb.su.png b/NzbDrone.Web/Content/Images/Indexers/Newznab_nzb.su.png deleted file mode 100644 index b47949de5..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/Newznab_nzb.su.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/NzbClub.png b/NzbDrone.Web/Content/Images/Indexers/NzbClub.png deleted file mode 100644 index 1f68226ad..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/NzbClub.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/NzbIndex.png b/NzbDrone.Web/Content/Images/Indexers/NzbIndex.png deleted file mode 100644 index d465fa352..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/NzbIndex.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/NzbsRus.png b/NzbDrone.Web/Content/Images/Indexers/NzbsRus.png deleted file mode 100644 index ed22b8ee4..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/NzbsRus.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/Unknown.png b/NzbDrone.Web/Content/Images/Indexers/Unknown.png deleted file mode 100644 index 7ac1ae7b6..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/Unknown.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/WomblesIndex.png b/NzbDrone.Web/Content/Images/Indexers/WomblesIndex.png deleted file mode 100644 index c9cfe0a19..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/WomblesIndex.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/nzbx.png b/NzbDrone.Web/Content/Images/Indexers/nzbx.png deleted file mode 100644 index ada2b0fcb..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/nzbx.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/Indexers/omgwtfnzbs.png b/NzbDrone.Web/Content/Images/Indexers/omgwtfnzbs.png deleted file mode 100644 index 2737f3455..000000000 Binary files a/NzbDrone.Web/Content/Images/Indexers/omgwtfnzbs.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/ajax-loader.gif b/NzbDrone.Web/Content/Images/ajax-loader.gif deleted file mode 100644 index 2e9d85eed..000000000 Binary files a/NzbDrone.Web/Content/Images/ajax-loader.gif and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/apple-touch-icon-114.png b/NzbDrone.Web/Content/Images/apple-touch-icon-114.png deleted file mode 100644 index 22cfed264..000000000 Binary files a/NzbDrone.Web/Content/Images/apple-touch-icon-114.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/apple-touch-icon-144.png b/NzbDrone.Web/Content/Images/apple-touch-icon-144.png deleted file mode 100644 index e606a1c5e..000000000 Binary files a/NzbDrone.Web/Content/Images/apple-touch-icon-144.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/background.jpg b/NzbDrone.Web/Content/Images/background.jpg deleted file mode 100644 index 64f983548..000000000 Binary files a/NzbDrone.Web/Content/Images/background.jpg and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/gritter.png b/NzbDrone.Web/Content/Images/gritter.png deleted file mode 100644 index 0ca3bc0a0..000000000 Binary files a/NzbDrone.Web/Content/Images/gritter.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/icon_source.url b/NzbDrone.Web/Content/Images/icon_source.url deleted file mode 100644 index 02066ae86..000000000 --- a/NzbDrone.Web/Content/Images/icon_source.url +++ /dev/null @@ -1,2 +0,0 @@ -[InternetShortcut] -URL=http://www.iconfinder.com/search/?q=iconset:onebit diff --git a/NzbDrone.Web/Content/Images/logo.png b/NzbDrone.Web/Content/Images/logo.png deleted file mode 100644 index 976acdffd..000000000 Binary files a/NzbDrone.Web/Content/Images/logo.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/logo_small.png b/NzbDrone.Web/Content/Images/logo_small.png deleted file mode 100644 index 574bad21a..000000000 Binary files a/NzbDrone.Web/Content/Images/logo_small.png and /dev/null differ diff --git a/NzbDrone.Web/Content/Images/thetvdb.png b/NzbDrone.Web/Content/Images/thetvdb.png deleted file mode 100644 index b09a0d523..000000000 Binary files a/NzbDrone.Web/Content/Images/thetvdb.png and /dev/null differ diff --git a/NzbDrone.Web/Content/IndexerSettings.css b/NzbDrone.Web/Content/IndexerSettings.css deleted file mode 100644 index 49bf0598f..000000000 --- a/NzbDrone.Web/Content/IndexerSettings.css +++ /dev/null @@ -1,142 +0,0 @@ -#bottom -{ - margin-top: -10px; - margin-left: 15px; -} - -#addNewznab -{ - text-decoration: none; - font-size: 16px; - color: black; - font-weight: bold; -} - -.titleText -{ - font-size: 1.5em; - line-height: 1; - margin-bottom: 1em; - display: inline; - position: absolute; - top: -1px; - left: 2px; - padding-bottom: 0px; - white-space: nowrap; -} - -.providerHeader -{ - min-height: 23px; - position: relative; -} - -.providerSection -{ - float: left; - width: 255px; - margin: 2px; - border: solid 1px #CCCCCD; - display: inline-block; - overflow: auto; - padding: 3px; -} - -.providerOptions label { - margin-top: 8px; - margin-left: 3px; - float: left; - font-weight: bold; - width: 50px; -} - -.providerOptions input, .providerOptions select { - font-size: 12px; - padding: 4px 2px; - border: solid 1px #aacfe4; - width: 170px; - margin-right: 2px; - float: right; -} - -.providerOptions select { - width: 176px; -} - -.providerOptions div { - overflow: hidden; - height: 35px; -} - -.providerOptions input[type="checkbox"] { - margin-top: 10px; -} - -.deleteProvider -{ - position: absolute; - top: 0px; - right: 0px; -} - -#newznabProviders -{ - overflow: auto; - margin-top: 5px; - margin-bottom: 10px; -} - -.indexerPanel -{ - overflow: auto; -} - -.indexer-global-settings -{ - padding-top: 20px; - overflow: hidden; -} - -.indexerStatusContainer -{ - margin-left: 12px; - margin-bottom: -4px; -} - -.indexerStatus -{ - padding: 6px 10px; - display: inline-block; - color: white; - margin: 3px; -} - -.enabled -{ - background-color: #065EFE; -} - -.disabled -{ - background-color: #616161; -} - -.remove-newznab -{ - padding: 3px 1px; - vertical-align: top; - border: none; - display: inline-block !important; - text-decoration: none !important; - color: #000000; - font-size: 19px; - line-height: 10px; -} - -.remove-newznab:before { - cursor: pointer; -} - -.add-newznab:before { - color: green; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/Menu.css b/NzbDrone.Web/Content/Menu.css deleted file mode 100644 index 25e764c3e..000000000 --- a/NzbDrone.Web/Content/Menu.css +++ /dev/null @@ -1,82 +0,0 @@ -#menu -{ - height: 60px; - display: inline-block; -} - -#menu ul -{ - margin: 0; - padding: 5px 0px 5px 0px; - list-style: none; - line-height: normal; - overflow: hidden; -} - -#menu li -{ - display: block; - float: left; - padding: 5px 15px 2px 10px; -} - -#menu a -{ - display: block; - float: left; - height: 26px; - padding: 0px 5px 7px 5px; - text-decoration: none; - text-align: center; - text-transform: lowercase; - font-size: 21px; - font-weight: normal; - vertical-align: middle; - font-family: "Segoe UI" , "Open Sans" , "Segoe UI Light" , sans-serif; -} - -#menu a:hover -{ - text-decoration: none; -} - -#menu li.current_page_item a -{ - border-bottom: 2px solid; - border-color: #065EFE; -} - - -.sub-menu -{ - padding-left: 5px; - margin-top: 0px; -} - -.sub-menu li -{ - display: inline; - list-style-type: circle; - margin-right: 12px; - padding-left: 4px; - padding-top: 2px; - border-left: 5px solid #85aeff; - cursor: pointer; -} - - -.sub-menu a -{ - text-decoration: none; - font-size: 21px; - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - color: #065EFE; - font-weight: 300; - text-transform: lowercase; -} - -.t-grid .sub-menu -{ - margin-left: -10px; - margin-bottom: 0px; -} diff --git a/NzbDrone.Web/Content/Messages.css b/NzbDrone.Web/Content/Messages.css deleted file mode 100644 index 8b85a7e3a..000000000 --- a/NzbDrone.Web/Content/Messages.css +++ /dev/null @@ -1,53 +0,0 @@ -/*Pinned messages*/ - -.infoBox, .successBox, .warningBox, .errorBox, .validationBox { - border: 0px solid; - margin: 10px 0px; - padding: 10px 10px 10px 10px; - background-repeat: no-repeat; - background-position: 10px center; - line-height: 20px; -} -.infoBox { - color: #00529B; - background-color: #f4f7f9; -} -.successBox { - color: #4F8A10; - background-color: #DFF2BF; -} -.warningBox { - color: #9F6000; - background-color: #FEEFB3; -} -.errorBox { - color: #D8000C; - background-color: #FFBABA; -} - -.infoBox i, .successBox i, .warningBox i, .errorBox i, .validationBox i { - font-size: 2.33em; - vertical-align: text-bottom; - padding-right: 8px; -} - -/*Progress Notification*/ -#msgBox -{ - display: none; - height: 30px; - background-color: #272525; - opacity: .9; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; - filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=85); - padding: 10px; - text-align: left; - position: fixed; - z-index: 999; - bottom: 0; - right: 0; - font-size: 20px; - color: White; - text-align: center; - white-space:nowrap; -} diff --git a/NzbDrone.Web/Content/NzbDrone.css b/NzbDrone.Web/Content/NzbDrone.css deleted file mode 100644 index dcf674f09..000000000 --- a/NzbDrone.Web/Content/NzbDrone.css +++ /dev/null @@ -1,324 +0,0 @@ -* -{ - font-family: "Segoe UI" , "Open Sans" , "Segoe UI Light" , sans-serif; -} - -body -{ - background: #191919 url(images/background.jpg) no-repeat right top; - font-size: 13px; - color: #3C3C3C; - background-attachment: fixed; -} - -#centered -{ - margin-right: auto; - width: 85%; - margin-left: auto; - min-width: 1050px; - max-width: 1400px; -} - -h1, h2, h3, h4, h5, h6 -{ - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - color: #3C3C3C; - font-weight: 300; -} - - -fieldset -{ - border-style: solid; - border-color: #065EFE; - border-width: 1px; -} - -a -{ - color: #065EFE; -} - -a:hover -{ - text-decoration: none; -} - -hr -{ - display: none; -} - -/* Page */ - -#page -{ - background-color: White; - padding: 10px 20px 100px 20px; - min-height: 300px; -} - - - -/** LOGO */ - -#logo -{ - height: 135px; - background: url(images/logo.png) no-repeat left top; - background-color: #065EFE; - color: white; /**color: rgb(40, 40, 40);**/ - text-transform: lowercase; - letter-spacing: -1px; - line-height: 110px; - padding-left: 140px; -} - -#logo span { - font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif; - font-weight: 100; - margin-top: 0; - padding-top: 0; - font-size: 110px; - margin-bottom: -20px; - display: inline-block; -} - -.stackframe -{ - font-family: Consolas, Monospace; -} - - -/* Footer */ -#footer -{ - margin-top: 5px; - margin-bottom: 30px; - padding: 1px 1px 1px 1px; - color: #065EFE; - text-align: center; - text-decoration: none; -} - -.sub-field -{ - width: 70%; - margin-top: 10px; - margin-bottom: 10px; -} - -.config-value -{ - float: right; -} - -.config-checkbox -{ - margin-right: 135px; -} - - -input[type=text], input[type=date], select -{ - font-size: small; - padding: 2px 2px; - border: solid 1px #aacfe4; - width: 200px; - margin: 2px 0 10px 0px; - height: 20px; -} - -select -{ - height: 26px; - min-width: 50px; - margin-left: 10px; -} - -button, input[type="button"], input[type="submit"], input[type="reset"] -{ - margin-left: 10px; -} - -/*select, button, input[type="button"], input[type="submit"], input[type="reset"] -{ - height: 26px; - min-width: 50px; - margin-left: 10px; -} - -/*This allows us to override center the text on the jQuery UI Buttons when we set the height above* -button span, input[type="button"] span, input[type="submit"] span, input[type="reset"] span -{ - margin-top: -3px; -}*/ - -.listButton -{ - padding: 2px 10px 2px 10px; - vertical-align: middle; - margin: 0px; -} - -.hiddenResult -{ - display: none; -} - -/* Add Series */ - -.tvDbSearchResults -{ - width: 400px; -} - -.rootDirectories -{ - width: 400px; -} - -.edit-group -{ - width: 435px; - display: block; - height: 25px; -} - -.dialog -{ - margin-left: auto; - margin-right: auto; -} - -.qualitySelector -{ - min-width: 60px; - width: auto; -} - -.delete-root { - color: red; - display: inline-block; - cursor: pointer; -} - -.delete-root i:before { - vertical-align: middle !important; - cursor: pointer !important; -} - -.ui-dialog-buttonset .ui-delete-button -{ - background: url("jQueryUI/images/ui-bg_flat_30_b40404_40x100.png") repeat-x scroll 50% 50% #B40404; - border: 1px solid #FFFFFF; - color: #FFFFFF; - font-weight: normal; -} - -.ui-dialog-buttonset .ui-delete-button:active -{ - background: url("jQueryUI/images/ui-bg_flat_30_616161_40x100.png") repeat-x scroll 50% 50% #616161; - border: 1px solid #FFFFFF; - color: #FFFFFF; - font-weight: normal; -} - -#footer a -{ - font-family: "Segoe UI" , "Open Sans" , "Segoe UI" , sans-serif; - font-size: 16px; - text-decoration: none; - font-weight: lighter; -} - -#footer a:hover -{ - text-decoration: underline; -} - -.series-delete-files { - padding-top: 15px; -} - - -/* Font-Awesome */ -i[class*="icon-"]:not(.gridAction):hover { - cursor: default; -} - -/* Donate */ -#donate a { - background-color: #065EFE; - color: #191919; -} - -/* Right Menu */ -#right-menu { - float: right; - display: inline-block; - height: 60px; -} - -#right-menu ul { - list-style: none; - overflow: hidden; -} - -#right-menu li -{ - display: block; - float: left; - padding: 0px 0px 10px 15px; -} - -#localSeriesLookup -{ - width: 220px; - border: 0px; - background: rgb(75, 75, 75); - color: rgb(169, 169, 169); - padding: 4px; -} - -.free-space { - display: inline-block; - margin-top: 2px; - padding-left: 5px; - padding-right: 5px; - height: 28px; - line-height: 28px; - background-color: #6e6e6e; - color: #d0d0d0; - /*color: #FFFFFF;*/ - cursor: default; -} - -.free-space span { - color: #191919; -} - -#free-space-small { - font-size: 18px; - display: none; - width: 23px; - margin-top: 2px; - padding-left: 3px; - padding-right: 3px; - height: 28px; - line-height: 24px; - background-color: #6e6e6e; - color: #d0d0d0; - cursor: default; -} - -@media all and (max-width: 1500px) { - .free-space { - display: none; - } - - #free-space-small { - display: inline-block; - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/Overrides.css b/NzbDrone.Web/Content/Overrides.css deleted file mode 100644 index 7238f6143..000000000 --- a/NzbDrone.Web/Content/Overrides.css +++ /dev/null @@ -1,69 +0,0 @@ -/*jQuery UI*/ -.ui-widget-header -{ - font-weight: normal; -} - -.t-combobox .t-input -{ - line-height: 25px; -} - -.ui-autocomplete -{ - border-color: #333333; - background: #333333; -} - -.ui-autocomplete .ui-state-hover -{ - background: #333333; - border-color: lightgrey; -} - - -.ui-progressbar-value -{ - background: #065EFE url(./jQueryUI/images/ui-bg_flat_30_065efe_40x100.png) 50% 50% repeat-x; -} - -.ui-dialog .ui-dialog-titlebar, .ui-dialog-title -{ - color: #3C3C3C; - font-size: 30px; - font-family: "Open Sans" , "Segoe UI Light" , "Segoe UI" , sans-serif; - font-weight: 300; - padding-top: 0px; - padding-bottom: 0px; - padding-left: 10px; -} - -.ui-autocomplete-loading -{ - background: white url('/Content/Images/ajax-loader.gif') 99% center no-repeat; - background-size: 18px 18px; -} - -.ui-menu-item .ui-corner-all -{ - font-size: 110%; - font-family: "Segoe UI" , "Open Sans" , "Segoe UI" , sans-serif; - color: lightgrey; -} - -.jquery-tabs -{ - margin-top: 10px; -} - -.ui-button .ui-state-default -{ - background: none; -} - -/*MiniProfiler*/ - -.profiler-button -{ - opacity: 0.6; -} diff --git a/NzbDrone.Web/Content/QualitySettings.css b/NzbDrone.Web/Content/QualitySettings.css deleted file mode 100644 index 200b92b2c..000000000 --- a/NzbDrone.Web/Content/QualitySettings.css +++ /dev/null @@ -1,140 +0,0 @@ -#top -{ - margin: 20px; - overflow: hidden; -} - -#top .settingsForm { - float: left; -} - -#profileContainer -{ - overflow: auto; -} - -#add-profile -{ - text-decoration: none; - font-size: 14px; - color: black; - font-weight: bold; - vertical-align: middle; -} - -#add-profile i:before { - color: green; - font-size: 20px; -} - -#profileHeader -{ - margin-bottom: 5px; -} - -#profiles -{ - overflow: auto; -} - -/* QualityProfileItem */ -.quality-selectee { - border-color: #065EFE; - border-style: solid; - border-width: 1px; - width: 75px; - padding: 1px; - padding-left: 3px; - padding-right: 3px; - margin: 2px; - float: left; - cursor: default; -} -.quality-selecting { - background: #85AEF9; -} - -.quality-selected { - background: #065EFE; - color: white; -} - -.quality-profile { - float: left; - width: 260px; - margin: 2px; - border:solid 1px #CCCCCD; - display: inline-block; - overflow: hidden; - padding: 5px 5px 5px 5px; - position: relative; -} - -.quality-profile-setting label { - width: 45px; - display: inline-block; -} - -.quality-profile-setting input { - margin-left: 10px; - width: 160px; -} - -.quality-profile-setting select { - width: 166px; -} - -.remove-profile { - position: absolute; - top: 0px; - right: 4px; - font-size: 20px; - color: #000000; - text-decoration: none; -} - -.remove-profile > i[class*="icon-"]:hover { - cursor: pointer !important; -} - -.titleText -{ - font-size: 1.5em; - line-height: 1; - margin-bottom: 1em; - display:inline; - position: absolute; - top: -1px; - left: 2px; - padding-bottom: 0px; - white-space:nowrap; -} - -.qualityHeader -{ - min-height: 23px; - position: relative; -} - -.sliders -{ - clear: both; - padding-bottom: 20px; - width: 600px; -} - -.quality-type { - margin-top: 5px; - margin-bottom: 5px; - padding: 4px 10px 4px 10px; - border: 1px solid lightgray; -} - -.quality-type .slider { - margin-top: 3px; - margin-bottom: 3px; -} - -#QualityForm .ui-accordion .ui-accordion-content { - padding: 1em 2em; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/SeriesEditor.css b/NzbDrone.Web/Content/SeriesEditor.css deleted file mode 100644 index 22366b2ce..000000000 --- a/NzbDrone.Web/Content/SeriesEditor.css +++ /dev/null @@ -1,73 +0,0 @@ -.masterControls { - margin-top: 10px; - overflow: hidden; -} - -.checkboxColumn { - width: 50px; - text-align: center; -} - -.buttons { - width: 600px; - text-align: center; -} - -table input[type="text"], table input[type="date"], table select { - margin: 2px 2px; -} - -td .path { - width: 290px; -} - -td .backlogSetting { - width: 100px; -} - -td .quality { - width: 120px; -} - -th .footer-control { - width: 100px; -} - -th .footer-control-quality { - width: 120px; -} - -td .start-date { - width: 80px; -} - -th .footer-control-boolean { - width: 90px; -} - -th .footer-control-start-date { - width: 80px; -} - - -#stylized, .settingsForm { - overflow: hidden; -} - -#stylized { - float: left; -} - -#changesOverview { - margin-top: 15px; - float: left; - font-size: 20px; -} - -#seriesEditorGrid tfoot { - background-color: lightgrey; -} - -#editToggleMaster { - margin-left: 5px; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/Settings.css b/NzbDrone.Web/Content/Settings.css deleted file mode 100644 index 24cf5e894..000000000 --- a/NzbDrone.Web/Content/Settings.css +++ /dev/null @@ -1,154 +0,0 @@ -p, h1, form, button { - border: 0; - margin: 0; - padding: 0; -} - -.jquery-tabs { - display: none; -} - -.spacer { - clear: both; - height: 1px; -} - -.settingsForm { - width: 620px; - padding: 14px; -} - - -#stylized p { - font-size: 11px; - color: #666666; - margin-bottom: 20px; - border-bottom: solid 1px #b7ddf2; - padding-bottom: 10px; -} - -#stylized .labelClass { - display: block; - font-weight: bold; - text-align: right; - width: 340px; - float: left; - margin-bottom: -10px; -} - -#stylized .small { - color: #666666; - display: block; - font-size: 11px; - font-weight: normal; - text-align: right; - width: 340px; -} - -#stylized .inputClass { - float: left; - padding: 2px 2px; - border: solid 1px #aacfe4; - width: 200px; - margin: 4px 0 20px 10px; -} - -#stylized .selectClass { - width: 206px; -} - -#stylized .checkClass { - margin: 12px 0px 20px 10px; - border: none; -} - -#stylized button { - clear: both; - margin-left: 220px; - margin-bottom: 10px; - margin-top: 10px; - width: 125px; - height: 31px; - text-align: center; - line-height: 31px; - font-size: 11px; -} - - -#saveAjax { - padding-left: 6px; - margin-bottom: -7px; - width: 20px; - height: 20px; - display: none; -} - -#save_button[disabled="disabled"] { - padding: 0px 6px 0px 6px; - border: 2px outset ButtonFace; - color: lightgrey; - cursor: progress; -} - -.ui-dialog-buttonset .ui-delete-button { - background: url("jQueryUI/images/ui-bg_flat_30_b40404_40x100.png") repeat-x scroll 50% 50% #B40404; - border: 1px solid #FFFFFF; - color: #FFFFFF; - font-weight: normal; -} - -.ui-dialog-buttonset .ui-delete-button:active { - background: url("jQueryUI/images/ui-bg_flat_30_616161_40x100.png") repeat-x scroll 50% 50% #616161; - border: 1px solid #FFFFFF; - color: #FFFFFF; - font-weight: normal; -} - -/* Common Validation Settings */ -.field-validation-error { - color: red; -} - -.input-validation-error { - background-color: #FFEEEE; - border: 1px solid #FF0000; -} - -.settingsForm .validation-error { - background: url("../Content/jQueryUI/images/ui-bg_flat_30_b40404_40x100.png") repeat-x scroll 50% 50% #B40404; -} - - -/* Navigation */ -.settings-navigation { - line-height: normal; - list-style: none outside none; - margin-left: 5px; - margin-bottom: 30px; - padding: 5px 0px 20px 0px; -} - -.settings-navigation li { - display: block; - float: left; - padding: 5px; -} - -.settings-navigation li.current_action a { - background-color: #065EFE; -} - -.settings-navigation a { - background-color: #191919; - color: white; - display: block; - float: left; - font-family: "Segoe UI","Open Sans","Segoe UI Light",sans-serif; - font-size: 16px; - font-weight: normal; - height: 26px; - padding: 2px 10px; - text-align: center; - text-decoration: none; - vertical-align: middle; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/font-awesome-ie7.css b/NzbDrone.Web/Content/font-awesome-ie7.css deleted file mode 100644 index c1dc3ac6b..000000000 --- a/NzbDrone.Web/Content/font-awesome-ie7.css +++ /dev/null @@ -1,645 +0,0 @@ -[class^="icon-"], -[class*=" icon-"] { - font-family: FontAwesome; - font-style: normal; - font-weight: normal; -} -.btn.dropdown-toggle [class^="icon-"], -.btn.dropdown-toggle [class*=" icon-"] { - /* keeps button heights with and without icons the same */ - - line-height: 1.4em; -} -.icon-large { - font-size: 1.3333em; -} -.icon-glass { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-music { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-search { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-envelope { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-heart { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-star { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-star-empty { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-user { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-film { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-th-large { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-th { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-th-list { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-ok { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-remove { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-zoom-in { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-zoom-out { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-off { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-signal { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-cog { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-trash { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-home { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-file { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-time { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-road { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-download-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-download { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-upload { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-inbox { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-play-circle { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-repeat { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-refresh { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-list-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-lock { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-flag { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-headphones { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-volume-off { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-volume-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-volume-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-qrcode { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-barcode { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-tag { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-tags { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-book { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bookmark { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-print { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-camera { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-font { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bold { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-italic { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-text-height { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-text-width { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-align-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-align-center { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-align-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-align-justify { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-list { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-indent-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-indent-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-facetime-video { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-picture { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-pencil { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-map-marker { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-adjust { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-tint { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-edit { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-share { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-check { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-move { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-step-backward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-fast-backward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-backward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-play { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-pause { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-stop { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-forward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-fast-forward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-step-forward { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-eject { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-chevron-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-chevron-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-plus-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-minus-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-remove-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-ok-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-question-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-info-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-screenshot { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-remove-circle { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-ok-circle { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-ban-circle { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-arrow-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-arrow-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-arrow-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-arrow-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-share-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-resize-full { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-resize-small { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-plus { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-minus { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-asterisk { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-exclamation-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-gift { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-leaf { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-fire { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-eye-open { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-eye-close { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-warning-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-plane { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-calendar { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-random { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-comment { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-magnet { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-chevron-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-chevron-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-retweet { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-shopping-cart { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-folder-close { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-folder-open { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-resize-vertical { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-resize-horizontal { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bar-chart { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-twitter-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-facebook-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-camera-retro { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-key { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-cogs { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-comments { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-thumbs-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-thumbs-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-star-half { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-heart-empty { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-signout { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-linkedin-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-pushpin { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-external-link { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-signin { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-trophy { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-github-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-upload-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-lemon { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-phone { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-check-empty { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bookmark-empty { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-phone-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-twitter { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-facebook { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-github { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-unlock { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-credit-card { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-rss { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-hdd { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bullhorn { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bell { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-certificate { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-hand-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-hand-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-hand-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-hand-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-circle-arrow-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-circle-arrow-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-circle-arrow-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-circle-arrow-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-globe { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-wrench { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-tasks { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-filter { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-briefcase { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-fullscreen { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-group { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-link { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-cloud { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-beaker { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-cut { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-copy { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-paper-clip { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-save { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-sign-blank { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-reorder { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-list-ul { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-list-ol { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-strikethrough { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-underline { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-table { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-magic { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-truck { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-pinterest { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-pinterest-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-google-plus-sign { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-google-plus { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-money { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-caret-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-caret-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-caret-left { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-caret-right { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-columns { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-sort { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-sort-down { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-sort-up { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-envelope-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-linkedin { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-undo { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-legal { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-dashboard { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-comment-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-comments-alt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-bolt { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-sitemap { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-umbrella { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-paste { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} -.icon-user-md { - *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); -} diff --git a/NzbDrone.Web/Content/font-awesome.css b/NzbDrone.Web/Content/font-awesome.css deleted file mode 100644 index 79100241d..000000000 --- a/NzbDrone.Web/Content/font-awesome.css +++ /dev/null @@ -1,303 +0,0 @@ -/* Font Awesome - the iconic font designed for use with Twitter Bootstrap - ------------------------------------------------------- - The full suite of pictographic icons, examples, and documentation - can be found at: http://fortawesome.github.com/Font-Awesome/ - - License - ------------------------------------------------------- - The Font Awesome webfont, CSS, and LESS files are licensed under CC BY 3.0: - http://creativecommons.org/licenses/by/3.0/ A mention of - 'Font Awesome - http://fortawesome.github.com/Font-Awesome' in human-readable - source code is considered acceptable attribution (most common on the web). - If human readable source code is not available to the end user, a mention in - an 'About' or 'Credits' screen is considered acceptable (most common in desktop - or mobile software). - - Contact - ------------------------------------------------------- - Email: dave@davegandy.com - Twitter: http://twitter.com/fortaweso_me - Work: http://lemonwi.se co-founder - - */ -@font-face { - font-family: "FontAwesome"; - src: url('font/fontawesome-webfont.eot'); - src: url('font/fontawesome-webfont.eot?#iefix') format('eot'), url('font/fontawesome-webfont.woff') format('woff'), url('font/fontawesome-webfont.ttf') format('truetype'), url('font/fontawesome-webfont.svg#FontAwesome') format('svg'); - font-weight: normal; - font-style: normal; -} - -/* Font Awesome styles - ------------------------------------------------------- */ -[class^="icon-"]:before, [class*=" icon-"]:before { - font-family: FontAwesome; - font-weight: normal; - font-style: normal; - display: inline-block; - text-decoration: inherit; -} -a [class^="icon-"], a [class*=" icon-"] { - display: inline-block; - text-decoration: inherit; -} -/* makes the font 33% larger relative to the icon container */ -.icon-large:before { - vertical-align: top; - font-size: 1.3333333333333333em; -} -.btn [class^="icon-"], .btn [class*=" icon-"] { - /* keeps button heights with and without icons the same */ - - line-height: .9em; -} -li [class^="icon-"], li [class*=" icon-"] { - display: inline-block; - width: 1.25em; - text-align: center; -} -li .icon-large[class^="icon-"], li .icon-large[class*=" icon-"] { - /* 1.5 increased font size for icon-large * 1.25 width */ - - width: 1.875em; -} -li[class^="icon-"], li[class*=" icon-"] { - margin-left: 0; - list-style-type: none; -} -li[class^="icon-"]:before, li[class*=" icon-"]:before { - text-indent: -2em; - text-align: center; -} -li[class^="icon-"].icon-large:before, li[class*=" icon-"].icon-large:before { - text-indent: -1.3333333333333333em; -} -/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen - readers do not read off random characters that represent icons */ -.icon-glass:before { content: "\f000"; } -.icon-music:before { content: "\f001"; } -.icon-search:before { content: "\f002"; } -.icon-envelope:before { content: "\f003"; } -.icon-heart:before { content: "\f004"; } -.icon-star:before { content: "\f005"; } -.icon-star-empty:before { content: "\f006"; } -.icon-user:before { content: "\f007"; } -.icon-film:before { content: "\f008"; } -.icon-th-large:before { content: "\f009"; } -.icon-th:before { content: "\f00a"; } -.icon-th-list:before { content: "\f00b"; } -.icon-ok:before { content: "\f00c"; } -.icon-remove:before { content: "\f00d"; } -.icon-zoom-in:before { content: "\f00e"; } - -.icon-zoom-out:before { content: "\f010"; } -.icon-off:before { content: "\f011"; } -.icon-signal:before { content: "\f012"; } -.icon-cog:before { content: "\f013"; } -.icon-trash:before { content: "\f014"; } -.icon-home:before { content: "\f015"; } -.icon-file:before { content: "\f016"; } -.icon-time:before { content: "\f017"; } -.icon-road:before { content: "\f018"; } -.icon-download-alt:before { content: "\f019"; } -.icon-download:before { content: "\f01a"; } -.icon-upload:before { content: "\f01b"; } -.icon-inbox:before { content: "\f01c"; } -.icon-play-circle:before { content: "\f01d"; } -.icon-repeat:before { content: "\f01e"; } - -/* \f020 doesn't work in Safari. all shifted one down */ -.icon-refresh:before { content: "\f021"; } -.icon-list-alt:before { content: "\f022"; } -.icon-lock:before { content: "\f023"; } -.icon-flag:before { content: "\f024"; } -.icon-headphones:before { content: "\f025"; } -.icon-volume-off:before { content: "\f026"; } -.icon-volume-down:before { content: "\f027"; } -.icon-volume-up:before { content: "\f028"; } -.icon-qrcode:before { content: "\f029"; } -.icon-barcode:before { content: "\f02a"; } -.icon-tag:before { content: "\f02b"; } -.icon-tags:before { content: "\f02c"; } -.icon-book:before { content: "\f02d"; } -.icon-bookmark:before { content: "\f02e"; } -.icon-print:before { content: "\f02f"; } - -.icon-camera:before { content: "\f030"; } -.icon-font:before { content: "\f031"; } -.icon-bold:before { content: "\f032"; } -.icon-italic:before { content: "\f033"; } -.icon-text-height:before { content: "\f034"; } -.icon-text-width:before { content: "\f035"; } -.icon-align-left:before { content: "\f036"; } -.icon-align-center:before { content: "\f037"; } -.icon-align-right:before { content: "\f038"; } -.icon-align-justify:before { content: "\f039"; } -.icon-list:before { content: "\f03a"; } -.icon-indent-left:before { content: "\f03b"; } -.icon-indent-right:before { content: "\f03c"; } -.icon-facetime-video:before { content: "\f03d"; } -.icon-picture:before { content: "\f03e"; } - -.icon-pencil:before { content: "\f040"; } -.icon-map-marker:before { content: "\f041"; } -.icon-adjust:before { content: "\f042"; } -.icon-tint:before { content: "\f043"; } -.icon-edit:before { content: "\f044"; } -.icon-share:before { content: "\f045"; } -.icon-check:before { content: "\f046"; } -.icon-move:before { content: "\f047"; } -.icon-step-backward:before { content: "\f048"; } -.icon-fast-backward:before { content: "\f049"; } -.icon-backward:before { content: "\f04a"; } -.icon-play:before { content: "\f04b"; } -.icon-pause:before { content: "\f04c"; } -.icon-stop:before { content: "\f04d"; } -.icon-forward:before { content: "\f04e"; } - -.icon-fast-forward:before { content: "\f050"; } -.icon-step-forward:before { content: "\f051"; } -.icon-eject:before { content: "\f052"; } -.icon-chevron-left:before { content: "\f053"; } -.icon-chevron-right:before { content: "\f054"; } -.icon-plus-sign:before { content: "\f055"; } -.icon-minus-sign:before { content: "\f056"; } -.icon-remove-sign:before { content: "\f057"; } -.icon-ok-sign:before { content: "\f058"; } -.icon-question-sign:before { content: "\f059"; } -.icon-info-sign:before { content: "\f05a"; } -.icon-screenshot:before { content: "\f05b"; } -.icon-remove-circle:before { content: "\f05c"; } -.icon-ok-circle:before { content: "\f05d"; } -.icon-ban-circle:before { content: "\f05e"; } - -.icon-arrow-left:before { content: "\f060"; } -.icon-arrow-right:before { content: "\f061"; } -.icon-arrow-up:before { content: "\f062"; } -.icon-arrow-down:before { content: "\f063"; } -.icon-share-alt:before { content: "\f064"; } -.icon-resize-full:before { content: "\f065"; } -.icon-resize-small:before { content: "\f066"; } -.icon-plus:before { content: "\f067"; } -.icon-minus:before { content: "\f068"; } -.icon-asterisk:before { content: "\f069"; } -.icon-exclamation-sign:before { content: "\f06a"; } -.icon-gift:before { content: "\f06b"; } -.icon-leaf:before { content: "\f06c"; } -.icon-fire:before { content: "\f06d"; } -.icon-eye-open:before { content: "\f06e"; } - -.icon-eye-close:before { content: "\f070"; } -.icon-warning-sign:before { content: "\f071"; } -.icon-plane:before { content: "\f072"; } -.icon-calendar:before { content: "\f073"; } -.icon-random:before { content: "\f074"; } -.icon-comment:before { content: "\f075"; } -.icon-magnet:before { content: "\f076"; } -.icon-chevron-up:before { content: "\f077"; } -.icon-chevron-down:before { content: "\f078"; } -.icon-retweet:before { content: "\f079"; } -.icon-shopping-cart:before { content: "\f07a"; } -.icon-folder-close:before { content: "\f07b"; } -.icon-folder-open:before { content: "\f07c"; } -.icon-resize-vertical:before { content: "\f07d"; } -.icon-resize-horizontal:before { content: "\f07e"; } - -.icon-bar-chart:before { content: "\f080"; } -.icon-twitter-sign:before { content: "\f081"; } -.icon-facebook-sign:before { content: "\f082"; } -.icon-camera-retro:before { content: "\f083"; } -.icon-key:before { content: "\f084"; } -.icon-cogs:before { content: "\f085"; } -.icon-comments:before { content: "\f086"; } -.icon-thumbs-up:before { content: "\f087"; } -.icon-thumbs-down:before { content: "\f088"; } -.icon-star-half:before { content: "\f089"; } -.icon-heart-empty:before { content: "\f08a"; } -.icon-signout:before { content: "\f08b"; } -.icon-linkedin-sign:before { content: "\f08c"; } -.icon-pushpin:before { content: "\f08d"; } -.icon-external-link:before { content: "\f08e"; } - -.icon-signin:before { content: "\f090"; } -.icon-trophy:before { content: "\f091"; } -.icon-github-sign:before { content: "\f092"; } -.icon-upload-alt:before { content: "\f093"; } -.icon-lemon:before { content: "\f094"; } -.icon-phone:before { content: "\f095"; } -.icon-check-empty:before { content: "\f096"; } -.icon-bookmark-empty:before { content: "\f097"; } -.icon-phone-sign:before { content: "\f098"; } -.icon-twitter:before { content: "\f099"; } -.icon-facebook:before { content: "\f09a"; } -.icon-github:before { content: "\f09b"; } -.icon-unlock:before { content: "\f09c"; } -.icon-credit-card:before { content: "\f09d"; } -.icon-rss:before { content: "\f09e"; } - -.icon-hdd:before { content: "\f0a0"; } -.icon-bullhorn:before { content: "\f0a1"; } -.icon-bell:before { content: "\f0a2"; } -.icon-certificate:before { content: "\f0a3"; } -.icon-hand-right:before { content: "\f0a4"; } -.icon-hand-left:before { content: "\f0a5"; } -.icon-hand-up:before { content: "\f0a6"; } -.icon-hand-down:before { content: "\f0a7"; } -.icon-circle-arrow-left:before { content: "\f0a8"; } -.icon-circle-arrow-right:before { content: "\f0a9"; } -.icon-circle-arrow-up:before { content: "\f0aa"; } -.icon-circle-arrow-down:before { content: "\f0ab"; } -.icon-globe:before { content: "\f0ac"; } -.icon-wrench:before { content: "\f0ad"; } -.icon-tasks:before { content: "\f0ae"; } - -.icon-filter:before { content: "\f0b0"; } -.icon-briefcase:before { content: "\f0b1"; } -.icon-fullscreen:before { content: "\f0b2"; } - -.icon-group:before { content: "\f0c0"; } -.icon-link:before { content: "\f0c1"; } -.icon-cloud:before { content: "\f0c2"; } -.icon-beaker:before { content: "\f0c3"; } -.icon-cut:before { content: "\f0c4"; } -.icon-copy:before { content: "\f0c5"; } -.icon-paper-clip:before { content: "\f0c6"; } -.icon-save:before { content: "\f0c7"; } -.icon-sign-blank:before { content: "\f0c8"; } -.icon-reorder:before { content: "\f0c9"; } -.icon-list-ul:before { content: "\f0ca"; } -.icon-list-ol:before { content: "\f0cb"; } -.icon-strikethrough:before { content: "\f0cc"; } -.icon-underline:before { content: "\f0cd"; } -.icon-table:before { content: "\f0ce"; } - -.icon-magic:before { content: "\f0d0"; } -.icon-truck:before { content: "\f0d1"; } -.icon-pinterest:before { content: "\f0d2"; } -.icon-pinterest-sign:before { content: "\f0d3"; } -.icon-google-plus-sign:before { content: "\f0d4"; } -.icon-google-plus:before { content: "\f0d5"; } -.icon-money:before { content: "\f0d6"; } -.icon-caret-down:before { content: "\f0d7"; } -.icon-caret-up:before { content: "\f0d8"; } -.icon-caret-left:before { content: "\f0d9"; } -.icon-caret-right:before { content: "\f0da"; } -.icon-columns:before { content: "\f0db"; } -.icon-sort:before { content: "\f0dc"; } -.icon-sort-down:before { content: "\f0dd"; } -.icon-sort-up:before { content: "\f0de"; } - -.icon-envelope-alt:before { content: "\f0e0"; } -.icon-linkedin:before { content: "\f0e1"; } -.icon-undo:before { content: "\f0e2"; } -.icon-legal:before { content: "\f0e3"; } -.icon-dashboard:before { content: "\f0e4"; } -.icon-comment-alt:before { content: "\f0e5"; } -.icon-comments-alt:before { content: "\f0e6"; } -.icon-bolt:before { content: "\f0e7"; } -.icon-sitemap:before { content: "\f0e8"; } -.icon-umbrella:before { content: "\f0e9"; } -.icon-paste:before { content: "\f0ea"; } - -.icon-user-md:before { content: "\f200"; } diff --git a/NzbDrone.Web/Content/font/fontawesome-webfont.eot b/NzbDrone.Web/Content/font/fontawesome-webfont.eot deleted file mode 100644 index 89070c1e6..000000000 Binary files a/NzbDrone.Web/Content/font/fontawesome-webfont.eot and /dev/null differ diff --git a/NzbDrone.Web/Content/font/fontawesome-webfont.svg b/NzbDrone.Web/Content/font/fontawesome-webfont.svg deleted file mode 100644 index 1245f92c2..000000000 --- a/NzbDrone.Web/Content/font/fontawesome-webfont.svg +++ /dev/null @@ -1,255 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/Content/font/fontawesome-webfont.ttf b/NzbDrone.Web/Content/font/fontawesome-webfont.ttf deleted file mode 100644 index c17e9f8d1..000000000 Binary files a/NzbDrone.Web/Content/font/fontawesome-webfont.ttf and /dev/null differ diff --git a/NzbDrone.Web/Content/font/fontawesome-webfont.woff b/NzbDrone.Web/Content/font/fontawesome-webfont.woff deleted file mode 100644 index 09f2469a1..000000000 Binary files a/NzbDrone.Web/Content/font/fontawesome-webfont.woff and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_diagonals-thick_30_a32d00_40x40.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_diagonals-thick_30_a32d00_40x40.png deleted file mode 100644 index 263c7568b..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_diagonals-thick_30_a32d00_40x40.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2ab..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_ffffff_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_ffffff_40x100.png deleted file mode 100644 index ac8b229af..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_0_ffffff_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_100__40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_100__40x100.png deleted file mode 100644 index 842d6f375..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_100__40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_20_ffffff_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_20_ffffff_40x100.png deleted file mode 100644 index ac8b229af..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_20_ffffff_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_065efe_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_065efe_40x100.png deleted file mode 100644 index 9c8ef82ce..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_065efe_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_616161_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_616161_40x100.png deleted file mode 100644 index b913bd7d1..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_616161_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_b40404_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_b40404_40x100.png deleted file mode 100644 index 08c16fc87..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_30_b40404_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_40_065efe_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_40_065efe_40x100.png deleted file mode 100644 index 9c8ef82ce..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_flat_40_065efe_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_white-lines_10_000000_40x100.png b/NzbDrone.Web/Content/jQueryUI/images/ui-bg_white-lines_10_000000_40x100.png deleted file mode 100644 index c5187eb35..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-bg_white-lines_10_000000_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_98d2fb_256x240.png b/NzbDrone.Web/Content/jQueryUI/images/ui-icons_98d2fb_256x240.png deleted file mode 100644 index 81c5eb0bc..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_98d2fb_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_9ccdfc_256x240.png b/NzbDrone.Web/Content/jQueryUI/images/ui-icons_9ccdfc_256x240.png deleted file mode 100644 index 2022d2105..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_9ccdfc_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_ffffff_256x240.png b/NzbDrone.Web/Content/jQueryUI/images/ui-icons_ffffff_256x240.png deleted file mode 100644 index 42f8f992c..000000000 Binary files a/NzbDrone.Web/Content/jQueryUI/images/ui-icons_ffffff_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/jQueryUI/jquery-ui-1.8.16.custom.css b/NzbDrone.Web/Content/jQueryUI/jquery-ui-1.8.16.custom.css deleted file mode 100644 index 1a6469163..000000000 --- a/NzbDrone.Web/Content/jQueryUI/jquery-ui-1.8.16.custom.css +++ /dev/null @@ -1,568 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,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:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - - -/* - * jQuery UI CSS Framework 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=&fwDefault=normal&fsDefault=&cornerRadius=1px&bgColorHeader=ffffff&bgTextureHeader=01_flat.png&bgImgOpacityHeader=0&borderColorHeader=ffffff&fcHeader=000000&iconColorHeader=98d2fb&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=20&borderColorContent=e8e8e8&fcContent=&iconColorContent=9ccdfc&bgColorDefault=616161&bgTextureDefault=01_flat.png&bgImgOpacityDefault=30&borderColorDefault=ffffff&fcDefault=ffffff&iconColorDefault=9ccdfc&bgColorHover=&bgTextureHover=01_flat.png&bgImgOpacityHover=100&borderColorHover=ffffff&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=065efe&bgTextureActive=01_flat.png&bgImgOpacityActive=40&borderColorActive=ffffff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=065efe&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=30&borderColorHighlight=065efe&fcHighlight=ffffff&iconColorHighlight=ffffff&bgColorError=a32d00&bgTextureError=08_diagonals_thick.png&bgImgOpacityError=30&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffffff&bgColorOverlay=000000&bgTextureOverlay=11_white_lines.png&bgImgOpacityOverlay=10&opacityOverlay=60&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=0px%20 - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: ; font-size: ; } -.ui-widget .ui-widget { font-size: 1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: ; font-size: 1em; } -.ui-widget-content { border: 1px solid #e8e8e8; background: #ffffff url(images/ui-bg_flat_20_ffffff_40x100.png) 50% 50% repeat-x; color: #; } -.ui-widget-content a { color: #; } -.ui-widget-header { border: 1px solid #ffffff; background: #ffffff url(images/ui-bg_flat_0_ffffff_40x100.png) 50% 50% repeat-x; color: #000000; font-weight: bold; } -.ui-widget-header a { color: #000000; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #ffffff; background: #616161 url(images/ui-bg_flat_30_616161_40x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #ffffff; text-decoration: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #ffffff; background: # url(images/ui-bg_flat_100__40x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff; } -.ui-state-hover a, .ui-state-hover a:hover { color: #ffffff; text-decoration: none; } -.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #ffffff; background: #065efe url(images/ui-bg_flat_40_065efe_40x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #ffffff; text-decoration: none; } -.ui-widget :active { outline: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #065efe; background: #065efe url(images/ui-bg_flat_30_065efe_40x100.png) 50% 50% repeat-x; color: #ffffff; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #ffffff; } -.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #a32d00 url(images/ui-bg_diagonals-thick_30_a32d00_40x40.png) 50% 50% repeat; color: #ffffff; } -.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_9ccdfc_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_9ccdfc_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_98d2fb_256x240.png); } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_9ccdfc_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 1px; -webkit-border-top-left-radius: 1px; -khtml-border-top-left-radius: 1px; border-top-left-radius: 1px; } -.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 1px; -webkit-border-top-right-radius: 1px; -khtml-border-top-right-radius: 1px; border-top-right-radius: 1px; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 1px; -webkit-border-bottom-left-radius: 1px; -khtml-border-bottom-left-radius: 1px; border-bottom-left-radius: 1px; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 1px; -webkit-border-bottom-right-radius: 1px; -khtml-border-bottom-right-radius: 1px; border-bottom-right-radius: 1px; } - -/* Overlays */ -.ui-widget-overlay { background: #000000 url(images/ui-bg_white-lines_10_000000_40x100.png) 50% 50% repeat; opacity: .60;filter:Alpha(Opacity=60); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 0px ; -khtml-border-radius: 0px ; -webkit-border-radius: 0px ; border-radius: 0px ; }/* - * jQuery UI Resizable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; 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;}/* - * jQuery UI Selectable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } -/* - * jQuery UI Accordion 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Accordion#theming - */ -/* IE/Win - Fix animation bug - #4615 */ -.ui-accordion { width: 100%; } -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; } -.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } -.ui-accordion .ui-accordion-content-active { display: block; } -/* - * jQuery UI Autocomplete 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ui-autocomplete { position: absolute; cursor: default; } - -/* workarounds */ -* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ - -/* - * jQuery UI Menu 1.8.16 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ui-menu { - list-style:none; - padding: 2px; - margin: 0; - display:block; - float: left; -} -.ui-menu .ui-menu { - margin-top: -3px; -} -.ui-menu .ui-menu-item { - margin:0; - padding: 0; - zoom: 1; - float: left; - clear: left; - width: 100%; -} -.ui-menu .ui-menu-item a { - text-decoration:none; - display:block; - padding:.2em .4em; - line-height:1.5; - zoom:1; -} -.ui-menu .ui-menu-item a.ui-state-hover, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; -} -/* - * jQuery UI Button 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Button#theming - */ -.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ -.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ -button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ -.ui-button-icons-only { width: 3.4em; } -button.ui-button-icons-only { width: 3.7em; } - -/*button text element */ -.ui-button .ui-button-text { display: block; line-height: 1.4; } -.ui-button-text-only .ui-button-text { padding: .4em 1em; } -.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } -.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; } -.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; } -.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } -/* no icon support for input elements, provide padding by default */ -input.ui-button { padding: .4em 1em; } - -/*button icon element(s) */ -.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } -.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } -.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; } -.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } -.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } - -/*button sets*/ -.ui-buttonset { margin-right: 7px; } -.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } - -/* workarounds */ -button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ -/* - * jQuery UI Dialog 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Dialog#theming - */ -.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } -.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } -.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } -/* - * jQuery UI Slider 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* - * jQuery UI Tabs 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Tabs#theming - */ -.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ -.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } -.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } -/* - * jQuery UI Datepicker 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -}/* - * jQuery UI Progressbar 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Progressbar#theming - */ -.ui-progressbar { height:2em; text-align: left; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/NzbDrone.Web/Content/jquery.gritter.css b/NzbDrone.Web/Content/jquery.gritter.css deleted file mode 100644 index 59c591781..000000000 --- a/NzbDrone.Web/Content/jquery.gritter.css +++ /dev/null @@ -1,134 +0,0 @@ -/* the norm */ -#gritter-notice-wrapper -{ - position: fixed; - top: 60px; - right: 20px; - width: 301px; - z-index: 9999; -} -#gritter-notice-wrapper.top-left -{ - left: 20px; - right: auto; -} -#gritter-notice-wrapper.bottom-right -{ - top: auto; - left: auto; - bottom: 20px; - right: 20px; -} -#gritter-notice-wrapper.bottom-left -{ - top: auto; - right: auto; - bottom: 20px; - left: 20px; -} -.gritter-item-wrapper -{ - position: relative; - margin: 0; -} -.gritter-top -{ - height: 10px; -} -.hover .gritter-top -{ - background-position: right -30px; -} -.gritter-bottom -{ - height: 8px; - margin: 0; -} -.hover .gritter-bottom -{ - background-position: bottom right; -} -.gritter-item -{ - display: block; - background-color: #272525; - opacity: .9; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; - filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=85); - color: #eee; - padding: 8px 11px; - font-size: 11px; - border-bottom-style: solid; - border-bottom-width: 5px; -} - -.gritter-success .gritter-item -{ - border-color: rgb(100, 135, 46); -} - -.gritter-fail .gritter-item -{ - border-color: rgb(212, 44, 44); -} - -.gritter-success .gritter-icon -{ - color: rgb(100, 135, 46); -} - -.gritter-fail .gritter-icon -{ - color: rgb(212, 44, 44); -} - -.hover .gritter-item -{ - background-position: right -40px; -} -.gritter-item p -{ - padding: 0; - margin: 0; -} -.gritter-close -{ - display: none; - position: absolute; - top: 0px; - right: -10px; - background: url(../content/images/gritter.png) no-repeat left top; - cursor: pointer; - width: 30px; - height: 30px; -} -.gritter-title -{ - font-size: 20px; - padding: 0; - display: block; - line-height: 1; - padding-bottom: 10px; - text-shadow: 1px 1px #000; /* Not supported by IE :( */ -} -.gritter-image -{ - width: 48px; - height: 48px; - float: left; -} -.gritter-with-image, .gritter-without-image -{ - padding: 0 0 5px 0; -} -.gritter-with-image -{ - width: 220px; - float: right; -} - -.gritter-icon { - font-size: 50px; - float: left; - line-height: 35px; -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2ab..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_75_ffffff_40x100.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index ac8b229af..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_flat_75_ffffff_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d6346e..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_65_ffffff_1x400.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba269..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_dadada_1x400.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47cb..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa65..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_95_fef1ec_1x400.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index 4443fdc1a..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_glass_95_fef1ec_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/NzbDrone.Web/Content/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c6e..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-icons_222222_256x240.png b/NzbDrone.Web/Content/themes/base/images/ui-icons_222222_256x240.png deleted file mode 100644 index ee039dc09..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-icons_2e83ff_256x240.png b/NzbDrone.Web/Content/themes/base/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index 45e8928e5..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-icons_454545_256x240.png b/NzbDrone.Web/Content/themes/base/images/ui-icons_454545_256x240.png deleted file mode 100644 index 7ec70d11b..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-icons_888888_256x240.png b/NzbDrone.Web/Content/themes/base/images/ui-icons_888888_256x240.png deleted file mode 100644 index 5ba708c39..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/images/ui-icons_cd0a0a_256x240.png b/NzbDrone.Web/Content/themes/base/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 7930a5580..000000000 Binary files a/NzbDrone.Web/Content/themes/base/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/jquery-ui.css b/NzbDrone.Web/Content/themes/base/jquery-ui.css deleted file mode 100644 index efd6e8c65..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery-ui.css +++ /dev/null @@ -1,563 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,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 { zoom: 1; } -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } -/* - * jQuery UI Accordion 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Accordion#theming - */ -/* IE/Win - Fix animation bug - #4615 */ -.ui-accordion { width: 100%; } -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } -.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } -.ui-accordion .ui-accordion-content-active { display: block; } -/* - * jQuery UI Autocomplete 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ui-autocomplete { position: absolute; cursor: default; } - -/* workarounds */ -* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ - -/* - * jQuery UI Menu 1.8.17 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ui-menu { - list-style:none; - padding: 2px; - margin: 0; - display:block; - float: left; -} -.ui-menu .ui-menu { - margin-top: -3px; -} -.ui-menu .ui-menu-item { - margin:0; - padding: 0; - zoom: 1; - float: left; - clear: left; - width: 100%; -} -.ui-menu .ui-menu-item a { - text-decoration:none; - display:block; - padding:.2em .4em; - line-height:1.5; - zoom:1; -} -.ui-menu .ui-menu-item a.ui-state-hover, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; -} -/* - * jQuery UI Button 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Button#theming - */ -.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ -.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ -button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ -.ui-button-icons-only { width: 3.4em; } -button.ui-button-icons-only { width: 3.7em; } - -/*button text element */ -.ui-button .ui-button-text { display: block; line-height: 1.4; } -.ui-button-text-only .ui-button-text { padding: .4em 1em; } -.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } -.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; } -.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; } -.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } -/* no icon support for input elements, provide padding by default */ -input.ui-button { padding: .4em 1em; } - -/*button icon element(s) */ -.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } -.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } -.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; } -.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } -.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } - -/*button sets*/ -.ui-buttonset { margin-right: 7px; } -.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } - -/* workarounds */ -button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ -/* - * jQuery UI Datepicker 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -}/* - * jQuery UI Dialog 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Dialog#theming - */ -.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } -.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } -.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } -/* - * jQuery UI Progressbar 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Progressbar#theming - */ -.ui-progressbar { height:2em; text-align: left; overflow: hidden; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/* - * jQuery UI Resizable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; 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;}/* - * jQuery UI Selectable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } -/* - * jQuery UI Slider 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* - * jQuery UI Tabs 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Tabs#theming - */ -.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ -.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } -.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/ - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; } -.ui-widget .ui-widget { font-size: 1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; } -.ui-widget-content a { color: #222222/*{fcContent}*/; } -.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; } -.ui-widget-header a { color: #222222/*{fcHeader}*/; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; } -.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; } -.ui-widget :active { outline: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; } -.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; } -.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -khtml-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -khtml-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; } -.ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -khtml-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; } \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.accordion.css b/NzbDrone.Web/Content/themes/base/jquery.ui.accordion.css deleted file mode 100644 index e426c7622..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.accordion.css +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery UI Accordion 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Accordion#theming - */ -/* IE/Win - Fix animation bug - #4615 */ -.ui-accordion { width: 100%; } -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } -.ui-accordion .ui-accordion-li-fix { display: inline; } -.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } -.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } -.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } -.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } -.ui-accordion .ui-accordion-content-active { display: block; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.all.css b/NzbDrone.Web/Content/themes/base/jquery.ui.all.css deleted file mode 100644 index 943c4abb4..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.all.css +++ /dev/null @@ -1,11 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming - */ -@import "jquery.ui.base.css"; -@import "jquery.ui.theme.css"; diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.autocomplete.css b/NzbDrone.Web/Content/themes/base/jquery.ui.autocomplete.css deleted file mode 100644 index 4613938ae..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.autocomplete.css +++ /dev/null @@ -1,53 +0,0 @@ -/* - * jQuery UI Autocomplete 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ui-autocomplete { position: absolute; cursor: default; } - -/* workarounds */ -* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ - -/* - * jQuery UI Menu 1.8.17 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ui-menu { - list-style:none; - padding: 2px; - margin: 0; - display:block; - float: left; -} -.ui-menu .ui-menu { - margin-top: -3px; -} -.ui-menu .ui-menu-item { - margin:0; - padding: 0; - zoom: 1; - float: left; - clear: left; - width: 100%; -} -.ui-menu .ui-menu-item a { - text-decoration:none; - display:block; - padding:.2em .4em; - line-height:1.5; - zoom:1; -} -.ui-menu .ui-menu-item a.ui-state-hover, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; -} diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.base.css b/NzbDrone.Web/Content/themes/base/jquery.ui.base.css deleted file mode 100644 index 63af44df1..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.base.css +++ /dev/null @@ -1,21 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming - */ -@import url("jquery.ui.core.css"); - -@import url("jquery.ui.accordion.css"); -@import url("jquery.ui.autocomplete.css"); -@import url("jquery.ui.button.css"); -@import url("jquery.ui.datepicker.css"); -@import url("jquery.ui.dialog.css"); -@import url("jquery.ui.progressbar.css"); -@import url("jquery.ui.resizable.css"); -@import url("jquery.ui.selectable.css"); -@import url("jquery.ui.slider.css"); -@import url("jquery.ui.tabs.css"); diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.button.css b/NzbDrone.Web/Content/themes/base/jquery.ui.button.css deleted file mode 100644 index a7565af80..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.button.css +++ /dev/null @@ -1,38 +0,0 @@ -/* - * jQuery UI Button 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Button#theming - */ -.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ -.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ -button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ -.ui-button-icons-only { width: 3.4em; } -button.ui-button-icons-only { width: 3.7em; } - -/*button text element */ -.ui-button .ui-button-text { display: block; line-height: 1.4; } -.ui-button-text-only .ui-button-text { padding: .4em 1em; } -.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } -.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; } -.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; } -.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } -/* no icon support for input elements, provide padding by default */ -input.ui-button { padding: .4em 1em; } - -/*button icon element(s) */ -.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } -.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } -.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; } -.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } -.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } - -/*button sets*/ -.ui-buttonset { margin-right: 7px; } -.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } - -/* workarounds */ -button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.core.css b/NzbDrone.Web/Content/themes/base/jquery.ui.core.css deleted file mode 100644 index bde176d27..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.core.css +++ /dev/null @@ -1,38 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,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 { zoom: 1; } -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.datepicker.css b/NzbDrone.Web/Content/themes/base/jquery.ui.datepicker.css deleted file mode 100644 index 6cb5aefc3..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.datepicker.css +++ /dev/null @@ -1,68 +0,0 @@ -/* - * jQuery UI Datepicker 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.dialog.css b/NzbDrone.Web/Content/themes/base/jquery.ui.dialog.css deleted file mode 100644 index a5914ff14..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.dialog.css +++ /dev/null @@ -1,21 +0,0 @@ -/* - * jQuery UI Dialog 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Dialog#theming - */ -.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } -.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } -.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } -.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } -.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } -.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } -.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } -.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } -.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } -.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } -.ui-draggable .ui-dialog-titlebar { cursor: move; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.menu.css b/NzbDrone.Web/Content/themes/base/jquery.ui.menu.css deleted file mode 100644 index 4c69487c8..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.menu.css +++ /dev/null @@ -1,30 +0,0 @@ -/*! - * jQuery UI Menu 1.9.0 - * http://jqueryui.com - * - * Copyright 2012 jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ui-menu { list-style:none; padding: 2px; margin: 0; display:block; outline: none; } -.ui-menu .ui-menu { margin-top: -3px; position: absolute; } -.ui-menu .ui-menu-item { margin: 0; padding: 0; zoom: 1; width: 100%; } -.ui-menu .ui-menu-divider { margin: 5px -2px 5px -2px; height: 0; font-size: 0; line-height: 0; border-width: 1px 0 0 0; } -.ui-menu .ui-menu-item a { text-decoration: none; display: block; padding: 2px .4em; line-height: 1.5; zoom: 1; font-weight: normal; } -.ui-menu .ui-menu-item a.ui-state-focus, -.ui-menu .ui-menu-item a.ui-state-active { font-weight: normal; margin: -1px; } - -.ui-menu .ui-state-disabled { font-weight: normal; margin: .4em 0 .2em; line-height: 1.5; } -.ui-menu .ui-state-disabled a { cursor: default; } - -/* icon support */ -.ui-menu-icons { position: relative; } -.ui-menu-icons .ui-menu-item a { position: relative; padding-left: 2em; } - -/* left-aligned */ -.ui-menu .ui-icon { position: absolute; top: .2em; left: .2em; } - -/* right-aligned */ -.ui-menu .ui-menu-icon { position: static; float: right; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.progressbar.css b/NzbDrone.Web/Content/themes/base/jquery.ui.progressbar.css deleted file mode 100644 index 630fab390..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.progressbar.css +++ /dev/null @@ -1,11 +0,0 @@ -/* - * jQuery UI Progressbar 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Progressbar#theming - */ -.ui-progressbar { height:2em; text-align: left; overflow: hidden; } -.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.resizable.css b/NzbDrone.Web/Content/themes/base/jquery.ui.resizable.css deleted file mode 100644 index 582bcb315..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.resizable.css +++ /dev/null @@ -1,20 +0,0 @@ -/* - * jQuery UI Resizable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; 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/NzbDrone.Web/Content/themes/base/jquery.ui.selectable.css b/NzbDrone.Web/Content/themes/base/jquery.ui.selectable.css deleted file mode 100644 index b36b89881..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.selectable.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Selectable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.slider.css b/NzbDrone.Web/Content/themes/base/jquery.ui.slider.css deleted file mode 100644 index 4cc548103..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.slider.css +++ /dev/null @@ -1,24 +0,0 @@ -/* - * jQuery UI Slider 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; } \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.spinner.css b/NzbDrone.Web/Content/themes/base/jquery.ui.spinner.css deleted file mode 100644 index 82223c27e..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.spinner.css +++ /dev/null @@ -1,24 +0,0 @@ -/*! - * jQuery UI Spinner 1.9.0 - * http://jqueryui.com - * - * Copyright 2012 jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Spinner#theming - */ -.ui-spinner { position:relative; display: inline-block; overflow: hidden; padding: 0; vertical-align: middle; } -.ui-spinner-input { border: none; background: none; padding: 0; margin: .2em 0; vertical-align: middle; margin-left: .4em; margin-right: 22px; } -.ui-spinner-button { width: 16px; height: 50%; font-size: .5em; padding: 0; margin: 0; z-index: 100; text-align: center; position: absolute; cursor: default; display: block; overflow: hidden; right: 0; } -.ui-spinner a.ui-spinner-button { border-top: none; border-bottom: none; border-right: none; } /* more specificity required here to overide default borders */ -.ui-spinner .ui-icon { position: absolute; margin-top: -8px; top: 50%; left: 0; } /* vertical centre icon */ -.ui-spinner-up { top: 0; } -.ui-spinner-down { bottom: 0; } - -/* TR overrides */ -span.ui-spinner { background: none; } -.ui-spinner .ui-icon-triangle-1-s { - /* need to fix icons sprite */ - background-position:-65px -16px; -} diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.tabs.css b/NzbDrone.Web/Content/themes/base/jquery.ui.tabs.css deleted file mode 100644 index fb827458e..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.tabs.css +++ /dev/null @@ -1,18 +0,0 @@ -/* - * jQuery UI Tabs 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Tabs#theming - */ -.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ -.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } -.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } -.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; } -.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } -.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; } -.ui-tabs .ui-tabs-hide { display: none !important; } diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.theme.css b/NzbDrone.Web/Content/themes/base/jquery.ui.theme.css deleted file mode 100644 index d0c93afbd..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.theme.css +++ /dev/null @@ -1,247 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/ - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; } -.ui-widget .ui-widget { font-size: 1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; } -.ui-widget-content a { color: #222222/*{fcContent}*/; } -.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; } -.ui-widget-header a { color: #222222/*{fcHeader}*/; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; } -.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; } -.ui-widget :active { outline: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; } -.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; } -.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; } -.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; } -.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; } -.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; } -.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -khtml-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -khtml-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; } -.ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -khtml-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; } \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/jquery.ui.tooltip.css b/NzbDrone.Web/Content/themes/base/jquery.ui.tooltip.css deleted file mode 100644 index d32438590..000000000 --- a/NzbDrone.Web/Content/themes/base/jquery.ui.tooltip.css +++ /dev/null @@ -1,22 +0,0 @@ -/*! - * jQuery UI Tooltip 1.9.0 - * http://jqueryui.com - * - * Copyright 2012 jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ -.ui-tooltip { - padding:8px; - position:absolute; - z-index:9999; - -o-box-shadow: 0 0 5px #aaa; - -moz-box-shadow: 0 0 5px #aaa; - -webkit-box-shadow: 0 0 5px #aaa; - box-shadow: 0 0 5px #aaa; -} -/* Fades and background-images don't work well together in IE6, drop the image */ -* html .ui-tooltip { - background-image: none; -} -body .ui-tooltip { border-width:2px; } diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_0_aaaaaa_40x100.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index 5b5dab2ab..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_75_ffffff_40x100.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index ac8b229af..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_flat_75_ffffff_40x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_55_fbf9ee_1x400.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d6346e..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_55_fbf9ee_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_65_ffffff_1x400.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba269..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_dadada_1x400.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47cb..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_dadada_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_e6e6e6_1x400.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index 86c2baa65..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_75_e6e6e6_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_95_fef1ec_1x400.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index 4443fdc1a..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_glass_95_fef1ec_1x400.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c6e..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-bg_highlight-soft_75_cccccc_1x100.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_222222_256x240.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_222222_256x240.png deleted file mode 100644 index ee039dc09..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_2e83ff_256x240.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index 45e8928e5..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_2e83ff_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_454545_256x240.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_454545_256x240.png deleted file mode 100644 index 7ec70d11b..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_888888_256x240.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_888888_256x240.png deleted file mode 100644 index 5ba708c39..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_888888_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_cd0a0a_256x240.png b/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 7930a5580..000000000 Binary files a/NzbDrone.Web/Content/themes/base/minified/images/ui-icons_cd0a0a_256x240.png and /dev/null differ diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery-ui.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery-ui.min.css deleted file mode 100644 index 2beeb3bc3..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery-ui.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ -.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,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{zoom:1;}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default!important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;}.ui-accordion{width:100%;}.ui-accordion .ui-accordion-header{cursor:pointer;position:relative;margin-top:1px;zoom:1;}.ui-accordion .ui-accordion-li-fix{display:inline;}.ui-accordion .ui-accordion-header-active{border-bottom:0!important;}.ui-accordion .ui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em .7em;}.ui-accordion-icons .ui-accordion-header a{padding-left:2.2em;}.ui-accordion .ui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px;}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;margin-top:-2px;position:relative;top:1px;margin-bottom:2px;overflow:auto;display:none;zoom:1;}.ui-accordion .ui-accordion-content-active{display:block;}.ui-autocomplete{position:absolute;cursor:default;}* html .ui-autocomplete{width:1px;}.ui-menu{list-style:none;padding:2px;margin:0;display:block;float:left;}.ui-menu .ui-menu{margin-top:-3px;}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;float:left;clear:left;width:100%;}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:.2em .4em;line-height:1.5;zoom:1;}.ui-menu .ui-menu-item a.ui-state-hover,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px;}.ui-button{display:inline-block;position:relative;padding:0;margin-right:.1em;text-decoration:none!important;cursor:pointer;text-align:center;zoom:1;overflow:visible;}.ui-button-icon-only{width:2.2em;}button.ui-button-icon-only{width:2.4em;}.ui-button-icons-only{width:3.4em;}button.ui-button-icons-only{width:3.7em;}.ui-button .ui-button-text{display:block;line-height:1.4;}.ui-button-text-only .ui-button-text{padding:.4em 1em;}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px;}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em;}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em;}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em;}input.ui-button{padding:.4em 1em;}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px;}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px;}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em;}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em;}.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em;}.ui-buttonset{margin-right:7px;}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em;}button.ui-button::-moz-focus-inner{border:0;padding:0;}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none;}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0;}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em;}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px;}.ui-datepicker .ui-datepicker-prev{left:2px;}.ui-datepicker .ui-datepicker-next{right:2px;}.ui-datepicker .ui-datepicker-prev-hover{left:1px;}.ui-datepicker .ui-datepicker-next-hover{right:1px;}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px;}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center;}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0;}.ui-datepicker select.ui-datepicker-month-year{width:100%;}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%;}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em;}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0;}.ui-datepicker td{border:0;padding:1px;}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none;}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0;}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible;}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left;}.ui-datepicker.ui-datepicker-multi{width:auto;}.ui-datepicker-multi .ui-datepicker-group{float:left;}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em;}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%;}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%;}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%;}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left;}.ui-datepicker-row-break{clear:both;width:100%;font-size:0;}.ui-datepicker-rtl{direction:rtl;}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto;}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto;}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right;}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left;}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right;}.ui-datepicker-rtl .ui-datepicker-group{float:right;}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-cover{display:none;display:block;position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px;}.ui-dialog{position:absolute;padding:.2em;width:300px;overflow:hidden;}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative;}.ui-dialog .ui-dialog-title{float:left;margin:.1em 16px .1em 0;}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:19px;margin:-10px 0 0 0;padding:1px;height:18px;}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin:1px;}.ui-dialog .ui-dialog-titlebar-close:hover,.ui-dialog .ui-dialog-titlebar-close:focus{padding:0;}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto;zoom:1;}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em;}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right;}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer;}.ui-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px;}.ui-draggable .ui-dialog-titlebar{cursor:move;}.ui-progressbar{height:2em;text-align:left;overflow:hidden;}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%;}.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:.1px;z-index:99999;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;}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black;}.ui-slider{position:relative;text-align:left;}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0;}.ui-slider-horizontal{height:.8em;}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em;}.ui-slider-horizontal .ui-slider-range{top:0;height:100%;}.ui-slider-horizontal .ui-slider-range-min{left:0;}.ui-slider-horizontal .ui-slider-range-max{right:0;}.ui-slider-vertical{width:.8em;height:100px;}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em;}.ui-slider-vertical .ui-slider-range{left:0;width:100%;}.ui-slider-vertical .ui-slider-range-min{bottom:0;}.ui-slider-vertical .ui-slider-range-max{top:0;}.ui-tabs{position:relative;padding:.2em;zoom:1;}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0;}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:1px;margin:0 .2em 1px 0;border-bottom:0!important;padding:0;white-space:nowrap;}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none;}.ui-tabs .ui-tabs-nav li.ui-tabs-selected{margin-bottom:0;padding-bottom:1px;}.ui-tabs .ui-tabs-nav li.ui-tabs-selected a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-state-processing a{cursor:text;}.ui-tabs .ui-tabs-nav li a,.ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a{cursor:pointer;}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none;}.ui-tabs .ui-tabs-hide{display:none!important;}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em;}.ui-widget .ui-widget{font-size:1em;}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em;}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222;}.ui-widget-content a{color:#222;}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold;}.ui-widget-header a{color:#222;}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555;}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none;}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-hover a,.ui-state-hover a:hover{color:#212121;text-decoration:none;}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none;}.ui-widget :active{outline:none;}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636;}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636;}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a;}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a;}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a;}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold;}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal;}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none;}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png);}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png);}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png);}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png);}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png);}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png);}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png);}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png);}.ui-icon-carat-1-n{background-position:0 0;}.ui-icon-carat-1-ne{background-position:-16px 0;}.ui-icon-carat-1-e{background-position:-32px 0;}.ui-icon-carat-1-se{background-position:-48px 0;}.ui-icon-carat-1-s{background-position:-64px 0;}.ui-icon-carat-1-sw{background-position:-80px 0;}.ui-icon-carat-1-w{background-position:-96px 0;}.ui-icon-carat-1-nw{background-position:-112px 0;}.ui-icon-carat-2-n-s{background-position:-128px 0;}.ui-icon-carat-2-e-w{background-position:-144px 0;}.ui-icon-triangle-1-n{background-position:0 -16px;}.ui-icon-triangle-1-ne{background-position:-16px -16px;}.ui-icon-triangle-1-e{background-position:-32px -16px;}.ui-icon-triangle-1-se{background-position:-48px -16px;}.ui-icon-triangle-1-s{background-position:-64px -16px;}.ui-icon-triangle-1-sw{background-position:-80px -16px;}.ui-icon-triangle-1-w{background-position:-96px -16px;}.ui-icon-triangle-1-nw{background-position:-112px -16px;}.ui-icon-triangle-2-n-s{background-position:-128px -16px;}.ui-icon-triangle-2-e-w{background-position:-144px -16px;}.ui-icon-arrow-1-n{background-position:0 -32px;}.ui-icon-arrow-1-ne{background-position:-16px -32px;}.ui-icon-arrow-1-e{background-position:-32px -32px;}.ui-icon-arrow-1-se{background-position:-48px -32px;}.ui-icon-arrow-1-s{background-position:-64px -32px;}.ui-icon-arrow-1-sw{background-position:-80px -32px;}.ui-icon-arrow-1-w{background-position:-96px -32px;}.ui-icon-arrow-1-nw{background-position:-112px -32px;}.ui-icon-arrow-2-n-s{background-position:-128px -32px;}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px;}.ui-icon-arrow-2-e-w{background-position:-160px -32px;}.ui-icon-arrow-2-se-nw{background-position:-176px -32px;}.ui-icon-arrowstop-1-n{background-position:-192px -32px;}.ui-icon-arrowstop-1-e{background-position:-208px -32px;}.ui-icon-arrowstop-1-s{background-position:-224px -32px;}.ui-icon-arrowstop-1-w{background-position:-240px -32px;}.ui-icon-arrowthick-1-n{background-position:0 -48px;}.ui-icon-arrowthick-1-ne{background-position:-16px -48px;}.ui-icon-arrowthick-1-e{background-position:-32px -48px;}.ui-icon-arrowthick-1-se{background-position:-48px -48px;}.ui-icon-arrowthick-1-s{background-position:-64px -48px;}.ui-icon-arrowthick-1-sw{background-position:-80px -48px;}.ui-icon-arrowthick-1-w{background-position:-96px -48px;}.ui-icon-arrowthick-1-nw{background-position:-112px -48px;}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px;}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px;}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px;}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px;}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px;}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px;}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px;}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px;}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px;}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px;}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px;}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px;}.ui-icon-arrowreturn-1-w{background-position:-64px -64px;}.ui-icon-arrowreturn-1-n{background-position:-80px -64px;}.ui-icon-arrowreturn-1-e{background-position:-96px -64px;}.ui-icon-arrowreturn-1-s{background-position:-112px -64px;}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px;}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px;}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px;}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px;}.ui-icon-arrow-4{background-position:0 -80px;}.ui-icon-arrow-4-diag{background-position:-16px -80px;}.ui-icon-extlink{background-position:-32px -80px;}.ui-icon-newwin{background-position:-48px -80px;}.ui-icon-refresh{background-position:-64px -80px;}.ui-icon-shuffle{background-position:-80px -80px;}.ui-icon-transfer-e-w{background-position:-96px -80px;}.ui-icon-transferthick-e-w{background-position:-112px -80px;}.ui-icon-folder-collapsed{background-position:0 -96px;}.ui-icon-folder-open{background-position:-16px -96px;}.ui-icon-document{background-position:-32px -96px;}.ui-icon-document-b{background-position:-48px -96px;}.ui-icon-note{background-position:-64px -96px;}.ui-icon-mail-closed{background-position:-80px -96px;}.ui-icon-mail-open{background-position:-96px -96px;}.ui-icon-suitcase{background-position:-112px -96px;}.ui-icon-comment{background-position:-128px -96px;}.ui-icon-person{background-position:-144px -96px;}.ui-icon-print{background-position:-160px -96px;}.ui-icon-trash{background-position:-176px -96px;}.ui-icon-locked{background-position:-192px -96px;}.ui-icon-unlocked{background-position:-208px -96px;}.ui-icon-bookmark{background-position:-224px -96px;}.ui-icon-tag{background-position:-240px -96px;}.ui-icon-home{background-position:0 -112px;}.ui-icon-flag{background-position:-16px -112px;}.ui-icon-calendar{background-position:-32px -112px;}.ui-icon-cart{background-position:-48px -112px;}.ui-icon-pencil{background-position:-64px -112px;}.ui-icon-clock{background-position:-80px -112px;}.ui-icon-disk{background-position:-96px -112px;}.ui-icon-calculator{background-position:-112px -112px;}.ui-icon-zoomin{background-position:-128px -112px;}.ui-icon-zoomout{background-position:-144px -112px;}.ui-icon-search{background-position:-160px -112px;}.ui-icon-wrench{background-position:-176px -112px;}.ui-icon-gear{background-position:-192px -112px;}.ui-icon-heart{background-position:-208px -112px;}.ui-icon-star{background-position:-224px -112px;}.ui-icon-link{background-position:-240px -112px;}.ui-icon-cancel{background-position:0 -128px;}.ui-icon-plus{background-position:-16px -128px;}.ui-icon-plusthick{background-position:-32px -128px;}.ui-icon-minus{background-position:-48px -128px;}.ui-icon-minusthick{background-position:-64px -128px;}.ui-icon-close{background-position:-80px -128px;}.ui-icon-closethick{background-position:-96px -128px;}.ui-icon-key{background-position:-112px -128px;}.ui-icon-lightbulb{background-position:-128px -128px;}.ui-icon-scissors{background-position:-144px -128px;}.ui-icon-clipboard{background-position:-160px -128px;}.ui-icon-copy{background-position:-176px -128px;}.ui-icon-contact{background-position:-192px -128px;}.ui-icon-image{background-position:-208px -128px;}.ui-icon-video{background-position:-224px -128px;}.ui-icon-script{background-position:-240px -128px;}.ui-icon-alert{background-position:0 -144px;}.ui-icon-info{background-position:-16px -144px;}.ui-icon-notice{background-position:-32px -144px;}.ui-icon-help{background-position:-48px -144px;}.ui-icon-check{background-position:-64px -144px;}.ui-icon-bullet{background-position:-80px -144px;}.ui-icon-radio-off{background-position:-96px -144px;}.ui-icon-radio-on{background-position:-112px -144px;}.ui-icon-pin-w{background-position:-128px -144px;}.ui-icon-pin-s{background-position:-144px -144px;}.ui-icon-play{background-position:0 -160px;}.ui-icon-pause{background-position:-16px -160px;}.ui-icon-seek-next{background-position:-32px -160px;}.ui-icon-seek-prev{background-position:-48px -160px;}.ui-icon-seek-end{background-position:-64px -160px;}.ui-icon-seek-start{background-position:-80px -160px;}.ui-icon-seek-first{background-position:-80px -160px;}.ui-icon-stop{background-position:-96px -160px;}.ui-icon-eject{background-position:-112px -160px;}.ui-icon-volume-off{background-position:-128px -160px;}.ui-icon-volume-on{background-position:-144px -160px;}.ui-icon-power{background-position:0 -176px;}.ui-icon-signal-diag{background-position:-16px -176px;}.ui-icon-signal{background-position:-32px -176px;}.ui-icon-battery-0{background-position:-48px -176px;}.ui-icon-battery-1{background-position:-64px -176px;}.ui-icon-battery-2{background-position:-80px -176px;}.ui-icon-battery-3{background-position:-96px -176px;}.ui-icon-circle-plus{background-position:0 -192px;}.ui-icon-circle-minus{background-position:-16px -192px;}.ui-icon-circle-close{background-position:-32px -192px;}.ui-icon-circle-triangle-e{background-position:-48px -192px;}.ui-icon-circle-triangle-s{background-position:-64px -192px;}.ui-icon-circle-triangle-w{background-position:-80px -192px;}.ui-icon-circle-triangle-n{background-position:-96px -192px;}.ui-icon-circle-arrow-e{background-position:-112px -192px;}.ui-icon-circle-arrow-s{background-position:-128px -192px;}.ui-icon-circle-arrow-w{background-position:-144px -192px;}.ui-icon-circle-arrow-n{background-position:-160px -192px;}.ui-icon-circle-zoomin{background-position:-176px -192px;}.ui-icon-circle-zoomout{background-position:-192px -192px;}.ui-icon-circle-check{background-position:-208px -192px;}.ui-icon-circlesmall-plus{background-position:0 -208px;}.ui-icon-circlesmall-minus{background-position:-16px -208px;}.ui-icon-circlesmall-close{background-position:-32px -208px;}.ui-icon-squaresmall-plus{background-position:-48px -208px;}.ui-icon-squaresmall-minus{background-position:-64px -208px;}.ui-icon-squaresmall-close{background-position:-80px -208px;}.ui-icon-grip-dotted-vertical{background-position:0 -224px;}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px;}.ui-icon-grip-solid-vertical{background-position:-32px -224px;}.ui-icon-grip-solid-horizontal{background-position:-48px -224px;}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px;}.ui-icon-grip-diagonal-se{background-position:-80px -224px;}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px;}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.accordion.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.accordion.min.css deleted file mode 100644 index 83ebfa034..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.accordion.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Accordion 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Accordion#theming - */ -.ui-accordion{width:100%;}.ui-accordion .ui-accordion-header{cursor:pointer;position:relative;margin-top:1px;zoom:1;}.ui-accordion .ui-accordion-li-fix{display:inline;}.ui-accordion .ui-accordion-header-active{border-bottom:0!important;}.ui-accordion .ui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em .7em;}.ui-accordion-icons .ui-accordion-header a{padding-left:2.2em;}.ui-accordion .ui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px;}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;margin-top:-2px;position:relative;top:1px;margin-bottom:2px;overflow:auto;display:none;zoom:1;}.ui-accordion .ui-accordion-content-active{display:block;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.all.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.all.min.css deleted file mode 100644 index ab3e6d59d..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.all.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming - */ -@import "jquery.ui.base.min.css";@import "jquery.ui.theme.min.css"; \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.autocomplete.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.autocomplete.min.css deleted file mode 100644 index bcf6882bb..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.autocomplete.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Autocomplete 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ui-autocomplete{position:absolute;cursor:default;}* html .ui-autocomplete{width:1px;}.ui-menu{list-style:none;padding:2px;margin:0;display:block;float:left;}.ui-menu .ui-menu{margin-top:-3px;}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;float:left;clear:left;width:100%;}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:.2em .4em;line-height:1.5;zoom:1;}.ui-menu .ui-menu-item a.ui-state-hover,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.base.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.base.min.css deleted file mode 100644 index d4bfac45d..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.base.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming - */ -@import url("jquery.ui.core.min.css");@import url("jquery.ui.accordion.min.css");@import url("jquery.ui.autocomplete.min.css");@import url("jquery.ui.button.min.css");@import url("jquery.ui.datepicker.min.css");@import url("jquery.ui.dialog.min.css");@import url("jquery.ui.progressbar.min.css");@import url("jquery.ui.resizable.min.css");@import url("jquery.ui.selectable.min.css");@import url("jquery.ui.slider.min.css");@import url("jquery.ui.tabs.min.css"); \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.button.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.button.min.css deleted file mode 100644 index b25ffbefc..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.button.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Button 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Button#theming - */ -.ui-button{display:inline-block;position:relative;padding:0;margin-right:.1em;text-decoration:none!important;cursor:pointer;text-align:center;zoom:1;overflow:visible;}.ui-button-icon-only{width:2.2em;}button.ui-button-icon-only{width:2.4em;}.ui-button-icons-only{width:3.4em;}button.ui-button-icons-only{width:3.7em;}.ui-button .ui-button-text{display:block;line-height:1.4;}.ui-button-text-only .ui-button-text{padding:.4em 1em;}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px;}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em;}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em;}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em;}input.ui-button{padding:.4em 1em;}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px;}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px;}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em;}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em;}.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em;}.ui-buttonset{margin-right:7px;}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em;}button.ui-button::-moz-focus-inner{border:0;padding:0;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.core.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.core.min.css deleted file mode 100644 index ee23d09e8..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.core.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ -.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,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{zoom:1;}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default!important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.datepicker.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.datepicker.min.css deleted file mode 100644 index f61ade674..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.datepicker.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Datepicker 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker{width:17em;padding:.2em .2em 0;display:none;}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0;}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em;}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px;}.ui-datepicker .ui-datepicker-prev{left:2px;}.ui-datepicker .ui-datepicker-next{right:2px;}.ui-datepicker .ui-datepicker-prev-hover{left:1px;}.ui-datepicker .ui-datepicker-next-hover{right:1px;}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px;}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center;}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0;}.ui-datepicker select.ui-datepicker-month-year{width:100%;}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%;}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em;}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0;}.ui-datepicker td{border:0;padding:1px;}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none;}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0;}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible;}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left;}.ui-datepicker.ui-datepicker-multi{width:auto;}.ui-datepicker-multi .ui-datepicker-group{float:left;}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em;}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%;}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%;}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%;}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left;}.ui-datepicker-row-break{clear:both;width:100%;font-size:0;}.ui-datepicker-rtl{direction:rtl;}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto;}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto;}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right;}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left;}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right;}.ui-datepicker-rtl .ui-datepicker-group{float:right;}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-cover{display:none;display:block;position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.dialog.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.dialog.min.css deleted file mode 100644 index dea4ecb16..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.dialog.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Dialog 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Dialog#theming - */ -.ui-dialog{position:absolute;padding:.2em;width:300px;overflow:hidden;}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative;}.ui-dialog .ui-dialog-title{float:left;margin:.1em 16px .1em 0;}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:19px;margin:-10px 0 0 0;padding:1px;height:18px;}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin:1px;}.ui-dialog .ui-dialog-titlebar-close:hover,.ui-dialog .ui-dialog-titlebar-close:focus{padding:0;}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto;zoom:1;}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em;}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right;}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer;}.ui-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px;}.ui-draggable .ui-dialog-titlebar{cursor:move;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.menu.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.menu.min.css deleted file mode 100644 index e05f105b8..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.menu.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.9.0 - 2012-10-05 -* http://jqueryui.com -* Includes: jquery.ui.menu.css -* Copyright 2012 jQuery Foundation and other contributors; Licensed MIT */ -.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:none}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;width:100%}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;zoom:1;font-weight:normal}.ui-menu .ui-menu-item a.ui-state-focus,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px}.ui-menu .ui-state-disabled{font-weight:normal;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.progressbar.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.progressbar.min.css deleted file mode 100644 index 632e539b8..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.progressbar.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Progressbar 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Progressbar#theming - */ -.ui-progressbar{height:2em;text-align:left;overflow:hidden;}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.resizable.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.resizable.min.css deleted file mode 100644 index adc7356f8..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.resizable.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Resizable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:.1px;z-index:99999;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/NzbDrone.Web/Content/themes/base/minified/jquery.ui.selectable.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.selectable.min.css deleted file mode 100644 index e6da8043f..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.selectable.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Selectable 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.slider.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.slider.min.css deleted file mode 100644 index 8e23cd54d..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.slider.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Slider 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider{position:relative;text-align:left;}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0;}.ui-slider-horizontal{height:.8em;}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em;}.ui-slider-horizontal .ui-slider-range{top:0;height:100%;}.ui-slider-horizontal .ui-slider-range-min{left:0;}.ui-slider-horizontal .ui-slider-range-max{right:0;}.ui-slider-vertical{width:.8em;height:100px;}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em;}.ui-slider-vertical .ui-slider-range{left:0;width:100%;}.ui-slider-vertical .ui-slider-range-min{bottom:0;}.ui-slider-vertical .ui-slider-range-max{top:0;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.spinner.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.spinner.min.css deleted file mode 100644 index 54fd2b207..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.spinner.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.9.0 - 2012-10-05 -* http://jqueryui.com -* Includes: jquery.ui.spinner.css -* Copyright 2012 jQuery Foundation and other contributors; Licensed MIT */ -.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;z-index:100;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}span.ui-spinner{background:none}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tabs.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tabs.min.css deleted file mode 100644 index 1064ea47a..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tabs.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/* - * jQuery UI Tabs 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Tabs#theming - */ -.ui-tabs{position:relative;padding:.2em;zoom:1;}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0;}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:1px;margin:0 .2em 1px 0;border-bottom:0!important;padding:0;white-space:nowrap;}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none;}.ui-tabs .ui-tabs-nav li.ui-tabs-selected{margin-bottom:0;padding-bottom:1px;}.ui-tabs .ui-tabs-nav li.ui-tabs-selected a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-state-processing a{cursor:text;}.ui-tabs .ui-tabs-nav li a,.ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a{cursor:pointer;}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none;}.ui-tabs .ui-tabs-hide{display:none!important;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.theme.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.theme.min.css deleted file mode 100644 index b132f63bb..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.theme.min.css +++ /dev/null @@ -1,12 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.17 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/ - */ -.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em;}.ui-widget .ui-widget{font-size:1em;}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em;}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222;}.ui-widget-content a{color:#222;}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold;}.ui-widget-header a{color:#222;}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555;}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none;}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-hover a,.ui-state-hover a:hover{color:#212121;text-decoration:none;}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none;}.ui-widget :active{outline:none;}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636;}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636;}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a;}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a;}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a;}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold;}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal;}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none;}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png);}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png);}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png);}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png);}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png);}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png);}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png);}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png);}.ui-icon-carat-1-n{background-position:0 0;}.ui-icon-carat-1-ne{background-position:-16px 0;}.ui-icon-carat-1-e{background-position:-32px 0;}.ui-icon-carat-1-se{background-position:-48px 0;}.ui-icon-carat-1-s{background-position:-64px 0;}.ui-icon-carat-1-sw{background-position:-80px 0;}.ui-icon-carat-1-w{background-position:-96px 0;}.ui-icon-carat-1-nw{background-position:-112px 0;}.ui-icon-carat-2-n-s{background-position:-128px 0;}.ui-icon-carat-2-e-w{background-position:-144px 0;}.ui-icon-triangle-1-n{background-position:0 -16px;}.ui-icon-triangle-1-ne{background-position:-16px -16px;}.ui-icon-triangle-1-e{background-position:-32px -16px;}.ui-icon-triangle-1-se{background-position:-48px -16px;}.ui-icon-triangle-1-s{background-position:-64px -16px;}.ui-icon-triangle-1-sw{background-position:-80px -16px;}.ui-icon-triangle-1-w{background-position:-96px -16px;}.ui-icon-triangle-1-nw{background-position:-112px -16px;}.ui-icon-triangle-2-n-s{background-position:-128px -16px;}.ui-icon-triangle-2-e-w{background-position:-144px -16px;}.ui-icon-arrow-1-n{background-position:0 -32px;}.ui-icon-arrow-1-ne{background-position:-16px -32px;}.ui-icon-arrow-1-e{background-position:-32px -32px;}.ui-icon-arrow-1-se{background-position:-48px -32px;}.ui-icon-arrow-1-s{background-position:-64px -32px;}.ui-icon-arrow-1-sw{background-position:-80px -32px;}.ui-icon-arrow-1-w{background-position:-96px -32px;}.ui-icon-arrow-1-nw{background-position:-112px -32px;}.ui-icon-arrow-2-n-s{background-position:-128px -32px;}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px;}.ui-icon-arrow-2-e-w{background-position:-160px -32px;}.ui-icon-arrow-2-se-nw{background-position:-176px -32px;}.ui-icon-arrowstop-1-n{background-position:-192px -32px;}.ui-icon-arrowstop-1-e{background-position:-208px -32px;}.ui-icon-arrowstop-1-s{background-position:-224px -32px;}.ui-icon-arrowstop-1-w{background-position:-240px -32px;}.ui-icon-arrowthick-1-n{background-position:0 -48px;}.ui-icon-arrowthick-1-ne{background-position:-16px -48px;}.ui-icon-arrowthick-1-e{background-position:-32px -48px;}.ui-icon-arrowthick-1-se{background-position:-48px -48px;}.ui-icon-arrowthick-1-s{background-position:-64px -48px;}.ui-icon-arrowthick-1-sw{background-position:-80px -48px;}.ui-icon-arrowthick-1-w{background-position:-96px -48px;}.ui-icon-arrowthick-1-nw{background-position:-112px -48px;}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px;}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px;}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px;}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px;}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px;}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px;}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px;}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px;}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px;}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px;}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px;}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px;}.ui-icon-arrowreturn-1-w{background-position:-64px -64px;}.ui-icon-arrowreturn-1-n{background-position:-80px -64px;}.ui-icon-arrowreturn-1-e{background-position:-96px -64px;}.ui-icon-arrowreturn-1-s{background-position:-112px -64px;}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px;}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px;}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px;}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px;}.ui-icon-arrow-4{background-position:0 -80px;}.ui-icon-arrow-4-diag{background-position:-16px -80px;}.ui-icon-extlink{background-position:-32px -80px;}.ui-icon-newwin{background-position:-48px -80px;}.ui-icon-refresh{background-position:-64px -80px;}.ui-icon-shuffle{background-position:-80px -80px;}.ui-icon-transfer-e-w{background-position:-96px -80px;}.ui-icon-transferthick-e-w{background-position:-112px -80px;}.ui-icon-folder-collapsed{background-position:0 -96px;}.ui-icon-folder-open{background-position:-16px -96px;}.ui-icon-document{background-position:-32px -96px;}.ui-icon-document-b{background-position:-48px -96px;}.ui-icon-note{background-position:-64px -96px;}.ui-icon-mail-closed{background-position:-80px -96px;}.ui-icon-mail-open{background-position:-96px -96px;}.ui-icon-suitcase{background-position:-112px -96px;}.ui-icon-comment{background-position:-128px -96px;}.ui-icon-person{background-position:-144px -96px;}.ui-icon-print{background-position:-160px -96px;}.ui-icon-trash{background-position:-176px -96px;}.ui-icon-locked{background-position:-192px -96px;}.ui-icon-unlocked{background-position:-208px -96px;}.ui-icon-bookmark{background-position:-224px -96px;}.ui-icon-tag{background-position:-240px -96px;}.ui-icon-home{background-position:0 -112px;}.ui-icon-flag{background-position:-16px -112px;}.ui-icon-calendar{background-position:-32px -112px;}.ui-icon-cart{background-position:-48px -112px;}.ui-icon-pencil{background-position:-64px -112px;}.ui-icon-clock{background-position:-80px -112px;}.ui-icon-disk{background-position:-96px -112px;}.ui-icon-calculator{background-position:-112px -112px;}.ui-icon-zoomin{background-position:-128px -112px;}.ui-icon-zoomout{background-position:-144px -112px;}.ui-icon-search{background-position:-160px -112px;}.ui-icon-wrench{background-position:-176px -112px;}.ui-icon-gear{background-position:-192px -112px;}.ui-icon-heart{background-position:-208px -112px;}.ui-icon-star{background-position:-224px -112px;}.ui-icon-link{background-position:-240px -112px;}.ui-icon-cancel{background-position:0 -128px;}.ui-icon-plus{background-position:-16px -128px;}.ui-icon-plusthick{background-position:-32px -128px;}.ui-icon-minus{background-position:-48px -128px;}.ui-icon-minusthick{background-position:-64px -128px;}.ui-icon-close{background-position:-80px -128px;}.ui-icon-closethick{background-position:-96px -128px;}.ui-icon-key{background-position:-112px -128px;}.ui-icon-lightbulb{background-position:-128px -128px;}.ui-icon-scissors{background-position:-144px -128px;}.ui-icon-clipboard{background-position:-160px -128px;}.ui-icon-copy{background-position:-176px -128px;}.ui-icon-contact{background-position:-192px -128px;}.ui-icon-image{background-position:-208px -128px;}.ui-icon-video{background-position:-224px -128px;}.ui-icon-script{background-position:-240px -128px;}.ui-icon-alert{background-position:0 -144px;}.ui-icon-info{background-position:-16px -144px;}.ui-icon-notice{background-position:-32px -144px;}.ui-icon-help{background-position:-48px -144px;}.ui-icon-check{background-position:-64px -144px;}.ui-icon-bullet{background-position:-80px -144px;}.ui-icon-radio-off{background-position:-96px -144px;}.ui-icon-radio-on{background-position:-112px -144px;}.ui-icon-pin-w{background-position:-128px -144px;}.ui-icon-pin-s{background-position:-144px -144px;}.ui-icon-play{background-position:0 -160px;}.ui-icon-pause{background-position:-16px -160px;}.ui-icon-seek-next{background-position:-32px -160px;}.ui-icon-seek-prev{background-position:-48px -160px;}.ui-icon-seek-end{background-position:-64px -160px;}.ui-icon-seek-start{background-position:-80px -160px;}.ui-icon-seek-first{background-position:-80px -160px;}.ui-icon-stop{background-position:-96px -160px;}.ui-icon-eject{background-position:-112px -160px;}.ui-icon-volume-off{background-position:-128px -160px;}.ui-icon-volume-on{background-position:-144px -160px;}.ui-icon-power{background-position:0 -176px;}.ui-icon-signal-diag{background-position:-16px -176px;}.ui-icon-signal{background-position:-32px -176px;}.ui-icon-battery-0{background-position:-48px -176px;}.ui-icon-battery-1{background-position:-64px -176px;}.ui-icon-battery-2{background-position:-80px -176px;}.ui-icon-battery-3{background-position:-96px -176px;}.ui-icon-circle-plus{background-position:0 -192px;}.ui-icon-circle-minus{background-position:-16px -192px;}.ui-icon-circle-close{background-position:-32px -192px;}.ui-icon-circle-triangle-e{background-position:-48px -192px;}.ui-icon-circle-triangle-s{background-position:-64px -192px;}.ui-icon-circle-triangle-w{background-position:-80px -192px;}.ui-icon-circle-triangle-n{background-position:-96px -192px;}.ui-icon-circle-arrow-e{background-position:-112px -192px;}.ui-icon-circle-arrow-s{background-position:-128px -192px;}.ui-icon-circle-arrow-w{background-position:-144px -192px;}.ui-icon-circle-arrow-n{background-position:-160px -192px;}.ui-icon-circle-zoomin{background-position:-176px -192px;}.ui-icon-circle-zoomout{background-position:-192px -192px;}.ui-icon-circle-check{background-position:-208px -192px;}.ui-icon-circlesmall-plus{background-position:0 -208px;}.ui-icon-circlesmall-minus{background-position:-16px -208px;}.ui-icon-circlesmall-close{background-position:-32px -208px;}.ui-icon-squaresmall-plus{background-position:-48px -208px;}.ui-icon-squaresmall-minus{background-position:-64px -208px;}.ui-icon-squaresmall-close{background-position:-80px -208px;}.ui-icon-grip-dotted-vertical{background-position:0 -224px;}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px;}.ui-icon-grip-solid-vertical{background-position:-32px -224px;}.ui-icon-grip-solid-horizontal{background-position:-48px -224px;}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px;}.ui-icon-grip-diagonal-se{background-position:-80px -224px;}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px;}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;} \ No newline at end of file diff --git a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tooltip.min.css b/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tooltip.min.css deleted file mode 100644 index 78e86737e..000000000 --- a/NzbDrone.Web/Content/themes/base/minified/jquery.ui.tooltip.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.9.0 - 2012-10-05 -* http://jqueryui.com -* Includes: jquery.ui.tooltip.css -* Copyright 2012 jQuery Foundation and other contributors; Licensed MIT */ -.ui-tooltip{padding:8px;position:absolute;z-index:9999;-o-box-shadow:0 0 5px #aaa;-moz-box-shadow:0 0 5px #aaa;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}* html .ui-tooltip{background-image:none}body .ui-tooltip{border-width:2px} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/CommandController.cs b/NzbDrone.Web/Controllers/CommandController.cs deleted file mode 100644 index 0813d1a7d..000000000 --- a/NzbDrone.Web/Controllers/CommandController.cs +++ /dev/null @@ -1,247 +0,0 @@ -using System.Web.Mvc; -using NLog; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.DownloadClients; -using NzbDrone.Web.Filters; -using NzbDrone.Web.Models; -using System; - -namespace NzbDrone.Web.Controllers -{ - public class CommandController : Controller - { - private readonly JobController _jobProvider; - private readonly SabProvider _sabProvider; - private readonly SmtpProvider _smtpProvider; - private readonly TwitterProvider _twitterProvider; - private readonly EpisodeProvider _episodeProvider; - private readonly GrowlProvider _growlProvider; - private readonly SeasonProvider _seasonProvider; - private readonly ProwlProvider _prowlProvider; - private readonly XbmcProvider _xbmcProvider; - private readonly PlexProvider _plexProvider; - private readonly NzbgetProvider _nzbgetProvider; - - private static readonly Logger logger = LogManager.GetCurrentClassLogger(); - - public CommandController(JobController jobProvider, SabProvider sabProvider, - SmtpProvider smtpProvider, TwitterProvider twitterProvider, - EpisodeProvider episodeProvider, GrowlProvider growlProvider, - SeasonProvider seasonProvider, ProwlProvider prowlProvider, - XbmcProvider xbmcProvider, PlexProvider plexProvider, - NzbgetProvider nzbgetProvider) - { - _jobProvider = jobProvider; - _sabProvider = sabProvider; - _smtpProvider = smtpProvider; - _twitterProvider = twitterProvider; - _episodeProvider = episodeProvider; - _growlProvider = growlProvider; - _seasonProvider = seasonProvider; - _prowlProvider = prowlProvider; - _xbmcProvider = xbmcProvider; - _plexProvider = plexProvider; - _nzbgetProvider = nzbgetProvider; - } - - public JsonResult RssSync() - { - _jobProvider.QueueJob(typeof(RssSyncJob)); - return JsonNotificationResult.Queued("RSS sync"); - } - - public JsonResult BacklogSearch() - { - _jobProvider.QueueJob(typeof(BacklogSearchJob)); - return JsonNotificationResult.Queued("Backlog search"); - } - - public JsonResult RecentBacklogSearch() - { - _jobProvider.QueueJob(typeof(RecentBacklogSearchJob)); - return JsonNotificationResult.Queued("Recent backlog search"); - } - - public JsonResult PastWeekBacklogSearch() - { - _jobProvider.QueueJob(typeof(PastWeekBacklogSearchJob)); - return JsonNotificationResult.Queued("Past Week backlog search"); - } - - public JsonResult ForceRefresh(int seriesId) - { - _jobProvider.QueueJob(typeof(UpdateInfoJob), new { SeriesId = seriesId }); - _jobProvider.QueueJob(typeof(DiskScanJob), new { SeriesId = seriesId }); - _jobProvider.QueueJob(typeof(RefreshEpisodeMetadata), new { SeriesId = seriesId }); - - return JsonNotificationResult.Queued("Episode update/Disk scan"); - } - - public JsonResult ForceRefreshAll() - { - _jobProvider.QueueJob(typeof(UpdateInfoJob)); - _jobProvider.QueueJob(typeof(DiskScanJob)); - _jobProvider.QueueJob(typeof(RefreshEpisodeMetadata)); - - return JsonNotificationResult.Queued("Episode update/Disk scan"); - } - - [HttpPost] - [JsonErrorFilter] - public JsonResult GetSabnzbdCategories(string host, int port, string apiKey, string username, string password) - { - return new JsonResult { Data = _sabProvider.GetCategories(host, port, apiKey, username, password) }; - } - - [HttpPost] - public JsonResult TestEmail(string server, int port, bool ssl, string username, string password, string fromAddress, string toAddresses) - { - if (_smtpProvider.SendTestEmail(server, port, ssl, username, password, fromAddress, toAddresses)) - return JsonNotificationResult.Info("Successful", "Test email sent."); - - return JsonNotificationResult.Oops("Couldn't send Email, please check your settings"); - } - - public JsonResult GetTwitterAuthorization() - { - var result = _twitterProvider.GetAuthorization(); - - if (result == null) - JsonNotificationResult.Oops("Couldn't get Twitter Authorization"); - - return new JsonResult { Data = result, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; - } - - public JsonResult VerifyTwitterAuthorization(string token, string verifier) - { - var result = _twitterProvider.GetAndSaveAccessToken(token, verifier); - - if (!result) - JsonNotificationResult.Oops("Couldn't verify Twitter Authorization"); - - return JsonNotificationResult.Info("Good News!", "Successfully verified Twitter Authorization."); - - } - - public JsonResult RegisterGrowl(string host, string password) - { - try - { - var split = host.Split(':'); - var hostname = split[0]; - var port = Convert.ToInt32(split[1]); - - _growlProvider.Register(hostname, port, password); - _growlProvider.TestNotification(hostname, port, password); - - return JsonNotificationResult.Info("Good News!", "Registered and tested growl successfully"); - } - catch(Exception ex) - { - logger.TraceException(ex.Message, ex); - return JsonNotificationResult.Oops("Couldn't register and test Growl"); - } - } - - [HttpPost] - [JsonErrorFilter] - public EmptyResult SaveSeasonIgnore(int seriesId, int seasonNumber, bool ignored) - { - _seasonProvider.SetIgnore(seriesId, seasonNumber, ignored); - return new EmptyResult(); - } - - [HttpPost] - [JsonErrorFilter] - public EmptyResult SaveEpisodeIgnore(int episodeId, bool ignored) - { - _episodeProvider.SetEpisodeIgnore(episodeId, ignored); - return new EmptyResult(); - } - - public JsonResult TestProwl(string apiKeys) - { - _prowlProvider.TestNotification(apiKeys); - return JsonNotificationResult.Info("Good News!", "Test message has been sent to Prowl"); - } - - public JsonResult TestSabnzbd(string host, int port, string apiKey, string username, string password) - { - //_prowlProvider.TestNotification(apiKeys); - var version = _sabProvider.Test(host, port, apiKey, username, password); - - if (String.IsNullOrWhiteSpace(version)) - return JsonNotificationResult.Oops("Failed to connect to SABnzbd, please check your settings"); - - return JsonNotificationResult.Info("Success!", "SABnzbd settings have been verified successfully! Version: " + version); - } - - public JsonResult TestNzbget(string host, int port, string username, string password) - { - //_prowlProvider.TestNotification(apiKeys); - var version = _nzbgetProvider.Test(host, port, username, password); - - if (String.IsNullOrWhiteSpace(version)) - return JsonNotificationResult.Oops("Failed to connect to Nzbget, please check your settings"); - - return JsonNotificationResult.Info("Success!", "Nzbget settings have been verified successfully! Version: " + version); - } - - public JsonResult TestXbmcNotification(string hosts) - { - try - { - _xbmcProvider.TestNotification(hosts); - return JsonNotificationResult.Info("Success!", "Test Notification sent successfully"); - } - catch(Exception) - { - } - - return JsonNotificationResult.Oops("Failed to send test notification, please review your settings."); - } - - public JsonResult TestXbmcJsonApi(string hosts, string username, string password) - { - try - { - _xbmcProvider.TestJsonApi(hosts, username, password); - return JsonNotificationResult.Info("Success!", "Successfully tested JSON API"); - } - catch (Exception) - { - } - - return JsonNotificationResult.Oops("Failed to test JSON API, please review your settings."); - } - - public JsonResult TestPlexNotification(string hosts, string username, string password) - { - try - { - _plexProvider.TestNotification(hosts, username, password); - return JsonNotificationResult.Info("Success!", "Test Notification sent successfully"); - } - catch (Exception) - { - } - - return JsonNotificationResult.Oops("Failed to send test notification, please review your settings."); - } - - public JsonResult TestPlexServer(string host) - { - try - { - _plexProvider.GetSectionKeys(host); - return JsonNotificationResult.Info("Success!", "Successfully tested Server settings"); - } - catch (Exception) - { - } - - return JsonNotificationResult.Oops("Failed to connect to server, please review your settings."); - } - } -} diff --git a/NzbDrone.Web/Controllers/DirectoryController.cs b/NzbDrone.Web/Controllers/DirectoryController.cs deleted file mode 100644 index 01e807618..000000000 --- a/NzbDrone.Web/Controllers/DirectoryController.cs +++ /dev/null @@ -1,65 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web.Mvc; -using NzbDrone.Common; -using NzbDrone.Web.Filters; - -namespace NzbDrone.Web.Controllers -{ - public class DirectoryController : Controller - { - private readonly DiskProvider _diskProvider; - - public DirectoryController(DiskProvider diskProvider) - { - _diskProvider = diskProvider; - } - - [HttpPost] - public JsonResult _autoCompletePath(string text, int? filterMode) - { - var data = GetDirectories(text); - - return new JsonResult - { - JsonRequestBehavior = JsonRequestBehavior.AllowGet, - Data = data - }; - } - - [HttpGet] - [JsonErrorFilter] - public JsonResult GetDirectories(string term) - { - IEnumerable dirs = null; - try - { - //Windows (Including UNC) - var windowsSep = term.LastIndexOf('\\'); - - if (windowsSep > -1) - { - dirs = _diskProvider.GetDirectories(term.Substring(0, windowsSep + 1)); - } - - //Unix - var index = term.LastIndexOf('/'); - - if (index > -1) - { - dirs = _diskProvider.GetDirectories(term.Substring(0, index + 1)); - } - } - catch (Exception) - { - return Json(new List(), JsonRequestBehavior.AllowGet); - //Swallow the exceptions so proper JSON is returned to the client (Empty results) - } - - if (dirs == null) - throw new Exception("A valid path was not provided"); - - return Json(dirs, JsonRequestBehavior.AllowGet); - } - } -} diff --git a/NzbDrone.Web/Controllers/EpisodeController.cs b/NzbDrone.Web/Controllers/EpisodeController.cs deleted file mode 100644 index 71579bb91..000000000 --- a/NzbDrone.Web/Controllers/EpisodeController.cs +++ /dev/null @@ -1,74 +0,0 @@ -using System; -using System.Web.Mvc; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Repository.Quality; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class EpisodeController : Controller - { - private readonly JobController _jobProvider; - private readonly MediaFileProvider _mediaFileProvider; - - public EpisodeController(JobController jobProvider, MediaFileProvider mediaFileProvider) - { - _jobProvider = jobProvider; - _mediaFileProvider = mediaFileProvider; - } - - public JsonResult Search(int episodeId) - { - _jobProvider.QueueJob(typeof(EpisodeSearchJob), new { EpisodeId = episodeId }); - return JsonNotificationResult.Queued("Episode search"); - } - - public JsonResult SearchSeason(int seriesId, int seasonNumber) - { - _jobProvider.QueueJob(typeof(SeasonSearchJob), new { SeriesId = seriesId, SeasonNumber = seasonNumber }); - return JsonNotificationResult.Queued("Season search"); - - } - - public JsonResult BacklogSeries(int seriesId) - { - _jobProvider.QueueJob(typeof(SeriesSearchJob), new { SeriesId = seriesId }); - return JsonNotificationResult.Queued("Series Backlog"); - - } - - public JsonResult RenameSeason(int seriesId, int seasonNumber) - { - _jobProvider.QueueJob(typeof(RenameSeasonJob), new { SeriesId = seriesId, SeasonNumber = seasonNumber }); - return JsonNotificationResult.Queued("Season rename"); - - } - - public JsonResult RenameSeries(int seriesId) - { - _jobProvider.QueueJob(typeof(RenameSeriesJob), new { SeriesId = seriesId }); - return JsonNotificationResult.Queued("Series rename"); - } - - public JsonResult RenameAllSeries() - { - _jobProvider.QueueJob(typeof(RenameSeriesJob)); - return JsonNotificationResult.Queued("Series rename"); - } - - [HttpPost] - public JsonResult ChangeEpisodeQuality(int episodeFileId, QualityTypes quality) - { - _mediaFileProvider.ChangeQuality(episodeFileId, quality); - return Json("ok"); - } - - [HttpPost] - public JsonResult ChangeSeasonQuality(int seriesId, int seasonNumber, QualityTypes quality) - { - _mediaFileProvider.ChangeQuality(seriesId, seasonNumber, quality); - return Json("ok"); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/HealthController.cs b/NzbDrone.Web/Controllers/HealthController.cs deleted file mode 100644 index 5ab512bfc..000000000 --- a/NzbDrone.Web/Controllers/HealthController.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.Web.Mvc; -using StackExchange.Profiling; - -namespace NzbDrone.Web.Controllers -{ - public class HealthController : Controller - { - [HttpGet] - public JsonResult Index() - { - MiniProfiler.Stop(true); - return Json("OK", JsonRequestBehavior.AllowGet); - } - - } -} diff --git a/NzbDrone.Web/Controllers/HistoryController.cs b/NzbDrone.Web/Controllers/HistoryController.cs deleted file mode 100644 index b708d882d..000000000 --- a/NzbDrone.Web/Controllers/HistoryController.cs +++ /dev/null @@ -1,104 +0,0 @@ -using System; -using System.Globalization; -using System.Linq; -using System.Linq.Dynamic; -using System.Web.Mvc; -using System.Web.Script.Serialization; -using DataTables.Mvc.Core.Models; -using NzbDrone.Core.Helpers; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.Core; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class HistoryController : Controller - { - private readonly HistoryProvider _historyProvider; - private readonly JobController _jobProvider; - private readonly ConfigProvider _configProvider; - - public HistoryController(HistoryProvider historyProvider, JobController jobProvider, - ConfigProvider configProvider) - { - _historyProvider = historyProvider; - _jobProvider = jobProvider; - _configProvider = configProvider; - } - - public ActionResult Index() - { - return View(); - } - - public ActionResult AjaxBinding(DataTablesPageRequest pageRequest) - { - var pageResult = _historyProvider.GetPagedItems(pageRequest); - var totalItems = _historyProvider.Count(); - var ignoreArticles = _configProvider.IgnoreArticlesWhenSortingSeries; - - var items = pageResult.Items.Select(h => new HistoryModel - { - HistoryId = h.HistoryId, - SeriesId = h.SeriesId, - EpisodeNumbering = string.Format("{0}x{1:00}", h.SeasonNumber, h.EpisodeNumber), - EpisodeTitle = h.EpisodeTitle, - EpisodeOverview = h.EpisodeOverview, - SeriesTitle = h.SeriesTitle, - SeriesTitleSorter = ignoreArticles ? h.SeriesTitle.IgnoreArticles() : h.SeriesTitle, - NzbTitle = h.NzbTitle, - Quality = h.Quality.ToString(), - IsProper = h.IsProper, - Date = h.Date.ToString(), - DateSorter = h.Date.ToString("o", CultureInfo.InvariantCulture), - Indexer = h.Indexer, - EpisodeId = h.EpisodeId, - NzbInfoUrl = h.NzbInfoUrl, - ReleaseGroup = h.ReleaseGroup - }); - - return Json(new - { - sEcho = pageRequest.Echo, - iTotalRecords = totalItems, - iTotalDisplayRecords = pageResult.TotalItems, - aaData = items - }, - JsonRequestBehavior.AllowGet); - } - - public JsonResult Trim() - { - _historyProvider.Trim(); - return JsonNotificationResult.Info("Trimmed History"); - } - - public JsonResult Purge() - { - _historyProvider.Purge(); - return JsonNotificationResult.Info("History Cleared"); - } - - [HttpPost] - public JsonResult Delete(int historyId) - { - //Delete the existing item from history - _historyProvider.Delete(historyId); - - return JsonNotificationResult.Info("History Item Deleted"); - } - - [HttpPost] - public JsonResult Redownload(int historyId, int episodeId) - { - //Delete the existing item from history - _historyProvider.Delete(historyId); - - //Queue a job to download the replacement episode - _jobProvider.QueueJob(typeof(EpisodeSearchJob), new { EpisodeId = episodeId }); - - return JsonNotificationResult.Queued("Episode search"); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/ImageController.cs b/NzbDrone.Web/Controllers/ImageController.cs deleted file mode 100644 index e46185d9d..000000000 --- a/NzbDrone.Web/Controllers/ImageController.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using NzbDrone.Common; - -namespace NzbDrone.Web.Controllers -{ - public class ImageController : Controller - { - private readonly DiskProvider _diskProvider; - - public ImageController(DiskProvider diskProvider) - { - _diskProvider = diskProvider; - } - - public ActionResult Newznab(string name) - { - var dir = Server.MapPath("/Content/Images/Indexers"); - var path = Path.Combine(dir, String.Format("{0}.png", name)); - - if (_diskProvider.FileExists(path)) - return File(path, "image/png"); - - return File(Path.Combine(dir, "Newznab.png"), "image/png"); - } - } -} diff --git a/NzbDrone.Web/Controllers/LogController.cs b/NzbDrone.Web/Controllers/LogController.cs deleted file mode 100644 index ea23d01d7..000000000 --- a/NzbDrone.Web/Controllers/LogController.cs +++ /dev/null @@ -1,76 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Linq.Dynamic; -using System.Text; -using System.Web.Mvc; -using DataTables.Mvc.Core; -using DataTables.Mvc.Core.Models; -using NzbDrone.Common; -using NzbDrone.Core.Instrumentation; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class LogController : Controller - { - private readonly LogProvider _logProvider; - private readonly EnvironmentProvider _environmentProvider; - private readonly DiskProvider _diskProvider; - - public LogController(LogProvider logProvider, EnvironmentProvider environmentProvider, - DiskProvider diskProvider) - { - _logProvider = logProvider; - _environmentProvider = environmentProvider; - _diskProvider = diskProvider; - } - - public FileContentResult File() - { - string log = string.Empty; - - if (_diskProvider.FileExists(_environmentProvider.GetArchivedLogFileName())) - { - log = _diskProvider.ReadAllText(_environmentProvider.GetArchivedLogFileName()); - } - - log += _diskProvider.ReadAllText(_environmentProvider.GetLogFileName()); - - return new FileContentResult(Encoding.ASCII.GetBytes(log), "text/plain"); - } - - public JsonResult Clear() - { - _logProvider.DeleteAll(); - - return JsonNotificationResult.Info("Logs Cleared"); - } - - public ActionResult AjaxBinding(DataTablesPageRequest pageRequest) - { - var pageResult = _logProvider.GetPagedItems(pageRequest); - var totalItems = _logProvider.Count(); - - var items = pageResult.Items.Select(l => new LogModel - { - Time = l.Time.ToString(), - Level = l.Level, - Source = l.Logger, - Message = l.Message, - Method = l.Method, - ExceptionType = l.ExceptionType, - Exception = l.Exception - }); - - return Json(new - { - sEcho = pageRequest.Echo, - iTotalRecords = totalItems, - iTotalDisplayRecords = pageResult.TotalItems, - aaData = items - }, - JsonRequestBehavior.AllowGet); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/MissingController.cs b/NzbDrone.Web/Controllers/MissingController.cs deleted file mode 100644 index b55208871..000000000 --- a/NzbDrone.Web/Controllers/MissingController.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using System.Web.Script.Serialization; -using NzbDrone.Core; -using NzbDrone.Core.Helpers; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.Core; -using NzbDrone.Web.Models; -using ServiceStack.Text; - -namespace NzbDrone.Web.Controllers -{ - public class MissingController : Controller - { - private readonly EpisodeProvider _episodeProvider; - private readonly ConfigProvider _configProvider; - - public MissingController(EpisodeProvider episodeProvider, ConfigProvider configProvider) - { - _episodeProvider = episodeProvider; - _configProvider = configProvider; - } - - public ActionResult Index() - { - var missingEpisodes = _episodeProvider.EpisodesWithoutFiles(false); - var ignoreArticles = _configProvider.IgnoreArticlesWhenSortingSeries; - - var missing = missingEpisodes.Select(e => new MissingEpisodeModel - { - EpisodeId = e.EpisodeId, - SeriesId = e.SeriesId, - EpisodeNumbering = string.Format("{0}x{1:00}", e.SeasonNumber, e.EpisodeNumber), - EpisodeTitle = e.Title, - Overview = e.Overview, - SeriesTitle = e.Series.Title, - SeriesTitleSorter = ignoreArticles ? e.Series.Title.IgnoreArticles() : e.Series.Title, - AirDateSorter = e.AirDate.Value.ToString("o", CultureInfo.InvariantCulture), - AirDate = e.AirDate.Value.ToBestDateString() - }); - - JsConfig.IncludeNullValues = true; - return View(missing); - } - } -} diff --git a/NzbDrone.Web/Controllers/NotificationController.cs b/NzbDrone.Web/Controllers/NotificationController.cs deleted file mode 100644 index eeaa50a66..000000000 --- a/NzbDrone.Web/Controllers/NotificationController.cs +++ /dev/null @@ -1,48 +0,0 @@ -using System.Threading; -using System.Web.Mvc; -using System.Web.UI; -using NzbDrone.Core.Providers; -using StackExchange.Profiling; - -namespace NzbDrone.Web.Controllers -{ - public class NotificationController : Controller - { - private readonly NotificationProvider _notificationProvider; - - // - // GET: /Notification/ - - public NotificationController(NotificationProvider notificationProvider) - { - _notificationProvider = notificationProvider; - } - - [HttpGet] - [OutputCache(NoStore = true, Location = OutputCacheLocation.None)] - public JsonResult Comet(string message) - { - MiniProfiler.Stop(true); - - var currentMessage = GetCurrentMessage(); - - while (message == currentMessage) - { - Thread.Sleep(250); - currentMessage = GetCurrentMessage(); - } - - return Json(currentMessage, JsonRequestBehavior.AllowGet); - } - - private string GetCurrentMessage() - { - var notification = _notificationProvider.GetCurrent(); - - if (notification != null) - return notification.CurrentMessage; - - return string.Empty; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/SearchHistoryController.cs b/NzbDrone.Web/Controllers/SearchHistoryController.cs deleted file mode 100644 index 0e9f35d3a..000000000 --- a/NzbDrone.Web/Controllers/SearchHistoryController.cs +++ /dev/null @@ -1,93 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using NzbDrone.Core; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Repository.Search; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class SearchHistoryController : Controller - { - private readonly SearchHistoryProvider _searchHistoryProvider; - - public SearchHistoryController(SearchHistoryProvider searchHistoryProvider) - { - _searchHistoryProvider = searchHistoryProvider; - } - - public ActionResult Index() - { - var results = _searchHistoryProvider.AllSearchHistory(); - - var model = results.Select(s => new SearchHistoryModel - { - Id = s.Id, - SearchTime = s.SearchTime.ToString(), - DisplayName = GetDisplayName(s), - ReportCount = s.TotalItems, - Successful = s.SuccessfulCount > 0 - }); - - return View(model); - } - - public ActionResult Details(int searchId) - { - var searchResult = _searchHistoryProvider.GetSearchHistory(searchId); - var model = new SearchDetailsModel - { - Id = searchResult.Id, - DisplayName = GetDisplayName(searchResult), - SearchHistoryItems = - searchResult.SearchHistoryItems.Select(s => new SearchItemModel - { - Id = s.Id, - ReportTitle = s.ReportTitle, - Indexer = s.Indexer, - NzbUrl = s.NzbUrl, - NzbInfoUrl = s.NzbInfoUrl, - Success = s.Success, - SearchError = s.SearchError.AddSpacesToEnum().Replace("None", "Grabbed"), - Quality = s.Quality.ToString(), - QualityInt = s.Quality.Weight, - Proper = s.Proper, - Age = s.Age, - Size = s.Size.ToBestFileSize(1), - Language = s.Language.ToString() - }).ToList() - }; - - return View(model); - } - - public JsonResult ForceDownload(int id) - { - _searchHistoryProvider.ForceDownload(id); - - return JsonNotificationResult.Info("Success", "Requested episode has been sent to download client"); - } - - public string GetDisplayName(SearchHistory searchResult) - { - if (!searchResult.EpisodeNumber.HasValue) - { - return String.Format("{0} - Season {1}", searchResult.SeriesTitle, searchResult.SeasonNumber); - } - - string episodeString; - - if (searchResult.IsDaily) - episodeString = searchResult.AirDate.ToShortDateString().Replace('/', '-'); - - else - episodeString = String.Format("S{0:00}E{1:00}", searchResult.SeasonNumber, - searchResult.EpisodeNumber); - - return String.Format("{0} - {1} - {2}", searchResult.SeriesTitle, episodeString, searchResult.EpisodeTitle); - } - } -} diff --git a/NzbDrone.Web/Controllers/SeriesController.cs b/NzbDrone.Web/Controllers/SeriesController.cs deleted file mode 100644 index 9b2ba4b8d..000000000 --- a/NzbDrone.Web/Controllers/SeriesController.cs +++ /dev/null @@ -1,298 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Web.Mvc; -using System.Web.Script.Serialization; -using NzbDrone.Common.Model; -using NzbDrone.Core; -using NzbDrone.Core.Helpers; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Model; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.Core; -using NzbDrone.Core.Repository; -using NzbDrone.Core.Repository.Quality; -using NzbDrone.Web.Filters; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - [HandleError] - public class SeriesController : Controller - { - private readonly QualityProvider _qualityProvider; - private readonly SeriesProvider _seriesProvider; - private readonly JobController _jobProvider; - private readonly SeasonProvider _seasonProvider; - private readonly ConfigProvider _configProvider; - // - // GET: /Series/ - - public SeriesController(SeriesProvider seriesProvider, QualityProvider qualityProvider, - JobController jobProvider, SeasonProvider seasonProvider, - ConfigProvider configProvider) - { - _seriesProvider = seriesProvider; - _qualityProvider = qualityProvider; - _jobProvider = jobProvider; - _seasonProvider = seasonProvider; - _configProvider = configProvider; - } - - public ActionResult Index() - { - return View(); - } - - [HttpGet] - public ActionResult Series() - { - var series = GetSeriesModels(_seriesProvider.GetAllSeriesWithEpisodeCount()); - - return Json(new { aaData = series }, JsonRequestBehavior.AllowGet); - } - - public ActionResult Edit(int seriesId) - { - var profiles = _qualityProvider.All(); - ViewData["SelectList"] = new SelectList(profiles, "QualityProfileId", "Name"); - - var backlogStatusTypes = new List>(); - - foreach (BacklogSettingType backlogStatusType in Enum.GetValues(typeof(BacklogSettingType))) - { - backlogStatusTypes.Add(new KeyValuePair((int)backlogStatusType, backlogStatusType.ToString())); - } - - ViewData["BacklogSettingSelectList"] = new SelectList(backlogStatusTypes, "Key", "Value"); - - var series = GetSeriesModels(new List{_seriesProvider.GetSeries(seriesId)}).Single(); - return View(series); - } - - [HttpPost] - public EmptyResult Edit(SeriesModel seriesModel) - { - var series = _seriesProvider.GetSeries(seriesModel.SeriesId); - series.Monitored = seriesModel.Monitored; - series.SeasonFolder = seriesModel.SeasonFolder; - series.QualityProfileId = seriesModel.QualityProfileId; - - var oldPath = series.Path; - - series.Path = seriesModel.Path; - series.BacklogSetting = (BacklogSettingType)seriesModel.BacklogSetting; - - if (!String.IsNullOrWhiteSpace(seriesModel.CustomStartDate)) - series.CustomStartDate = DateTime.Parse(seriesModel.CustomStartDate, null, DateTimeStyles.RoundtripKind); - - else - series.CustomStartDate = null; - - _seriesProvider.UpdateSeries(series); - - if(oldPath != series.Path) - _jobProvider.QueueJob(typeof(DiskScanJob), new {SeriesId = series.SeriesId}); - - return new EmptyResult(); - } - - [HttpPost] - public EmptyResult Delete(int seriesId, bool deleteFiles) - { - _jobProvider.QueueJob(typeof(DeleteSeriesJob), new { SeriesId = seriesId, DeleteFiles = deleteFiles }); - - return new EmptyResult(); - } - - [JsonErrorFilter] - public JsonResult LocalSearch(string term) - { - var results = _seriesProvider.SearchForSeries(term).Select(s => new SeriesSearchResultModel - { - Id = s.SeriesId, - Title = s.Title - }).ToList(); - - return Json(results, JsonRequestBehavior.AllowGet); - } - - public ActionResult Details(int seriesId) - { - var series = _seriesProvider.GetSeries(seriesId); - - var model = new SeriesDetailsModel(); - - if (series.AirsDayOfWeek != null) - { - model.AirsDayOfWeek = series.AirsDayOfWeek.Value.ToString(); - } - else - { - model.AirsDayOfWeek = "N/A"; - } - model.Overview = series.Overview; - model.Title = series.Title; - model.SeriesId = series.SeriesId; - model.HasBanner = !String.IsNullOrEmpty(series.BannerUrl); - - var seasons = _seasonProvider.All(seriesId).Select(s => new SeasonModel - { - SeriesId = seriesId, - SeasonNumber = s.SeasonNumber, - Ignored = s.Ignored, - Episodes = GetEpisodeModels(s.Episodes).OrderByDescending(e => e.EpisodeNumber).ToList(), - CommonStatus = GetCommonStatus(s.Episodes) - }).ToList(); - model.Seasons = seasons; - - var qualities = QualityTypes.All().ToList(); - - model.QualitySelectList = new SelectList(qualities.Where(q => q.Id > 0), "Id", "Name"); - - return View(model); - } - - public ActionResult Editor() - { - var profiles = _qualityProvider.All(); - ViewData["QualityProfiles"] = profiles; - - //Create the select lists - var masterProfiles = profiles.ToList(); - masterProfiles.Insert(0, new QualityProfile {QualityProfileId = -10, Name = "Select..."}); - ViewData["MasterProfileSelectList"] = new SelectList(masterProfiles, "QualityProfileId", "Name"); - - ViewData["BoolSelectList"] = new SelectList(new List> - { - new KeyValuePair(-10, "Select..."), - new KeyValuePair(1, "True"), - new KeyValuePair(0, "False") - }, "Key", "Value" - ); - - var backlogSettingTypes = new List>(); - - foreach (BacklogSettingType backlogSettingType in Enum.GetValues(typeof(BacklogSettingType))) - { - backlogSettingTypes.Add(new KeyValuePair((int)backlogSettingType, backlogSettingType.ToString())); - } - - ViewData["BacklogSettingTypes"] = backlogSettingTypes; - - var masterBacklogList = backlogSettingTypes.ToList(); - masterBacklogList.Insert(0, new KeyValuePair(-10, "Select...")); - ViewData["MasterBacklogSettingSelectList"] = new SelectList(masterBacklogList, "Key", "Value"); - - var series = GetSeriesModels(_seriesProvider.GetAllSeries()); - - return View(series); - } - - [HttpPost] - public JsonResult Editor(List series) - { - //Save edits - if (series == null || series.Count == 0) - return JsonNotificationResult.Oops("Invalid post data"); - - _seriesProvider.UpdateFromSeriesEditor(series.Select(s => new Series - { - SeriesId = s.SeriesId, - QualityProfileId = s.QualityProfileId, - Monitored = s.Monitored, - SeasonFolder = s.SeasonFolder, - BacklogSetting = (BacklogSettingType)s.BacklogSetting, - Path = s.Path, - CustomStartDate = String.IsNullOrWhiteSpace(s.CustomStartDate) ? (DateTime?)null - : DateTime.Parse(s.CustomStartDate, null, DateTimeStyles.RoundtripKind) - } - ).ToList()); - return JsonNotificationResult.Info("Series Mass Edit Saved"); - } - - private List GetSeriesModels(IList seriesInDb) - { - var ignoreArticles = _configProvider.IgnoreArticlesWhenSortingSeries; - - var series = seriesInDb.Select(s => new SeriesModel - { - SeriesId = s.SeriesId, - Title = s.Title, - TitleSorter = ignoreArticles? s.Title.IgnoreArticles() : s.Title, - AirsDayOfWeek = s.AirsDayOfWeek.ToString(), - Monitored = s.Monitored, - Overview = s.Overview, - Path = s.Path, - QualityProfileId = s.QualityProfileId, - QualityProfileName = s.QualityProfile.Name, - Network = s.Network, - SeasonFolder = s.SeasonFolder, - BacklogSetting = (int)s.BacklogSetting, - Status = s.Status, - SeasonsCount = s.SeasonCount, - EpisodeCount = s.EpisodeCount, - EpisodeFileCount = s.EpisodeFileCount, - NextAiring = s.NextAiring == null ? String.Empty : s.NextAiring.Value.ToBestDateString(), - NextAiringSorter = s.NextAiring == null ? new DateTime(9999, 12, 31).ToString("o", CultureInfo.InvariantCulture) : s.NextAiring.Value.ToString("o", CultureInfo.InvariantCulture), - AirTime = s.AirTime, - CustomStartDate = s.CustomStartDate.HasValue ? s.CustomStartDate.Value.ToString("yyyy-MM-dd") : String.Empty - }).ToList(); - - return series; - } - - private List GetEpisodeModels(IList episodesInDb) - { - var episodes = new List(); - - foreach (var e in episodesInDb) - { - var episodeFileId = 0; - var episodePath = String.Empty; - var episodeQuality = "N/A"; - var episodeQualityId = 0; - - if (e.EpisodeFile != null) - { - episodePath = e.EpisodeFile.Path; - episodeFileId = e.EpisodeFile.EpisodeFileId; - episodeQuality = e.EpisodeFile.Quality.ToString(); - episodeQualityId = (int)e.EpisodeFile.Quality; - } - - var airDate = String.Empty; - - if (e.AirDate != null) - airDate = e.AirDate.Value.ToBestDateString(); - - episodes.Add(new EpisodeModel - { - EpisodeId = e.EpisodeId, - EpisodeFileId = episodeFileId, - EpisodeNumber = e.EpisodeNumber, - SeasonNumber = e.SeasonNumber, - Title = e.Title, - Overview = e.Overview, - AirDate = airDate, - Path = episodePath, - Status = e.Status.ToString(), - Quality = episodeQuality, - QualityId = episodeQualityId, - Ignored = e.Ignored - }); - } - - return episodes; - } - - private string GetCommonStatus(IList episodes) - { - var commonStatusList = episodes.Select(s => s.Status).Distinct().ToList(); - var commonStatus = commonStatusList.Count > 1 ? "Missing" : commonStatusList.First().ToString(); - return commonStatus; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/SettingsController.cs b/NzbDrone.Web/Controllers/SettingsController.cs deleted file mode 100644 index 4a01ff48e..000000000 --- a/NzbDrone.Web/Controllers/SettingsController.cs +++ /dev/null @@ -1,727 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web.Mvc; -using NLog; -using NzbDrone.Common; -using NzbDrone.Common.Model; -using NzbDrone.Core.Helpers; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Model; -using NzbDrone.Core.Model.Nzbget; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.Core; -using NzbDrone.Core.Providers.ExternalNotification; -using NzbDrone.Core.Providers.Indexer; -using NzbDrone.Core.Repository; -using NzbDrone.Core.Repository.Quality; -using NzbDrone.Web.Filters; -using NzbDrone.Web.Models; -using QualityModel = NzbDrone.Web.Models.QualityModel; - -namespace NzbDrone.Web.Controllers -{ - [HandleError] - public class SettingsController : Controller - { - private readonly ConfigProvider _configProvider; - private readonly IndexerProvider _indexerProvider; - private readonly QualityProvider _qualityProvider; - private readonly AutoConfigureProvider _autoConfigureProvider; - private readonly SeriesProvider _seriesProvider; - private readonly ExternalNotificationProvider _externalNotificationProvider; - private readonly QualityTypeProvider _qualityTypeProvider; - private readonly ConfigFileProvider _configFileProvider; - private readonly NewznabProvider _newznabProvider; - private readonly MetadataProvider _metadataProvider; - private readonly JobController _jobProvider; - - private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); - - public SettingsController(ConfigProvider configProvider, IndexerProvider indexerProvider, - QualityProvider qualityProvider, AutoConfigureProvider autoConfigureProvider, - SeriesProvider seriesProvider, ExternalNotificationProvider externalNotificationProvider, - QualityTypeProvider qualityTypeProvider, ConfigFileProvider configFileProvider, - NewznabProvider newznabProvider, MetadataProvider metadataProvider, - JobController jobProvider) - { - _externalNotificationProvider = externalNotificationProvider; - _qualityTypeProvider = qualityTypeProvider; - _configFileProvider = configFileProvider; - _newznabProvider = newznabProvider; - _metadataProvider = metadataProvider; - _jobProvider = jobProvider; - _configProvider = configProvider; - _indexerProvider = indexerProvider; - _qualityProvider = qualityProvider; - _autoConfigureProvider = autoConfigureProvider; - _seriesProvider = seriesProvider; - } - - - public ActionResult Index() - { - return RedirectToAction("Naming", "Settings"); - } - - public ActionResult Naming() - { - var model = new EpisodeNamingModel(); - - model.SeriesName = _configProvider.SortingIncludeSeriesName; - model.EpisodeName = _configProvider.SortingIncludeEpisodeTitle; - model.ReplaceSpaces = _configProvider.SortingReplaceSpaces; - model.AppendQuality = _configProvider.SortingAppendQuality; - model.SeasonFolders = _configProvider.UseSeasonFolder; - model.SeasonFolderFormat = _configProvider.SortingSeasonFolderFormat; - model.SeparatorStyle = _configProvider.SortingSeparatorStyle; - model.NumberStyle = _configProvider.SortingNumberStyle; - model.MultiEpisodeStyle = _configProvider.SortingMultiEpisodeStyle; - model.SceneName = _configProvider.SortingUseSceneName; - - model.SeparatorStyles = new SelectList(EpisodeSortingHelper.GetSeparatorStyles(), "Id", "Name"); - model.NumberStyles = new SelectList(EpisodeSortingHelper.GetNumberStyles(), "Id", "Name"); - model.MultiEpisodeStyles = new SelectList(EpisodeSortingHelper.GetMultiEpisodeStyles(), "Id", "Name"); - - //Metadata - model.MetadataXbmcEnabled = _metadataProvider.GetSettings(typeof(Core.Providers.Metadata.Xbmc)).Enable; - model.MetadataUseBanners = _configProvider.MetadataUseBanners; - - return View(model); - } - - public ActionResult Indexers() - { - return View(new IndexerSettingsModel - { - Retention = _configProvider.Retention, - - NzbsrusUId = _configProvider.NzbsrusUId, - NzbsrusHash = _configProvider.NzbsrusHash, - - FileSharingTalkUid = _configProvider.FileSharingTalkUid, - FileSharingTalkSecret = _configProvider.FileSharingTalkSecret, - - OmgwtfnzbsUsername = _configProvider.OmgwtfnzbsUsername, - OmgwtfnzbsApiKey = _configProvider.OmgwtfnzbsApiKey, - - NzbsRUsEnabled = _indexerProvider.GetSettings(typeof(NzbsRUs)).Enable, - NewznabEnabled = _indexerProvider.GetSettings(typeof(Newznab)).Enable, - WomblesEnabled = _indexerProvider.GetSettings(typeof(Wombles)).Enable, - FileSharingTalkEnabled = _indexerProvider.GetSettings(typeof(FileSharingTalk)).Enable, - NzbIndexEnabled = _indexerProvider.GetSettings(typeof(NzbIndex)).Enable, - NzbClubEnabled = _indexerProvider.GetSettings(typeof(NzbClub)).Enable, - OmgwtfnzbsEnabled = _indexerProvider.GetSettings(typeof(Omgwtfnzbs)).Enable, - NzbxEnabled = _indexerProvider.GetSettings(typeof(Nzbx)).Enable, - - RssSyncInterval = _configProvider.RssSyncInterval, - - NewznabDefinitions = _newznabProvider.All(), - }); - } - - public ActionResult DownloadClient() - { - var tvCategory = _configProvider.SabTvCategory; - var tvCategorySelectList = new SelectList(new[] { tvCategory }); - - var downloadClientTypes = new List>(); - - foreach (DownloadClientType downloadClientType in Enum.GetValues(typeof(DownloadClientType))) - downloadClientTypes.Add(new KeyValuePair((int)downloadClientType, downloadClientType.ToString())); - - var model = new DownloadClientSettingsModel - { - SabHost = _configProvider.SabHost, - SabPort = _configProvider.SabPort, - SabApiKey = _configProvider.SabApiKey, - SabUsername = _configProvider.SabUsername, - SabPassword = _configProvider.SabPassword, - SabTvCategory = tvCategory, - SabBacklogTvPriority = _configProvider.SabBacklogTvPriority, - SabRecentTvPriority = _configProvider.SabRecentTvPriority, - DownloadClientDropDirectory = _configProvider.DownloadClientTvDirectory, - SabTvCategorySelectList = tvCategorySelectList, - DownloadClient = (int)_configProvider.DownloadClient, - BlackholeDirectory = _configProvider.BlackholeDirectory, - DownloadClientSelectList = new SelectList(downloadClientTypes, "Key", "Value"), - PneumaticDirectory = _configProvider.PneumaticDirectory, - UseSceneName = _configProvider.DownloadClientUseSceneName, - NzbgetHost = _configProvider.NzbgetHost, - NzbgetPort = _configProvider.NzbgetPort, - NzbgetUsername = _configProvider.NzbgetUsername, - NzbgetPassword = _configProvider.NzbgetPassword, - NzbgetTvCategory = _configProvider.NzbgetTvCategory, - NzbgetBacklogTvPriority = (Int32)_configProvider.NzbgetBacklogTvPriority, - NzbgetRecentTvPriority = (Int32)_configProvider.NzbgetRecentTvPriority - }; - - model.NzbgetPrioritySelectList = new SelectList(new List - { - new { Key = "Very Low", Value = "-100" }, - new { Key = "Low", Value = "-50" }, - new { Key = "Normal", Value = "0" }, - new { Key = "High", Value = "-50" }, - new { Key = "Very High", Value = "100" } - }, "Value", "Key"); - - return View(model); - } - - public ActionResult Quality() - { - var profiles = _qualityProvider.All(); - - var defaultQualityQualityProfileId = Convert.ToInt32(_configProvider.DefaultQualityProfile); - var qualityProfileSelectList = new SelectList(profiles, "QualityProfileId", "Name"); - var qualityTypesFromDb = _qualityTypeProvider.All(); - - var model = new QualityModel - { - DefaultQualityProfileId = defaultQualityQualityProfileId, - QualityProfileSelectList = qualityProfileSelectList, - SdtvMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize, - DvdMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize, - HdtvMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize, - Webdl720pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize, - Webdl1080pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize, - Bluray720pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize, - Bluray1080pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize - }; - - ViewData["Profiles"] = profiles.Select(s => s.QualityProfileId).ToList(); - - return View(model); - } - - public ActionResult Notifications() - { - var model = new NotificationSettingsModel - { - XbmcEnabled = _externalNotificationProvider.GetSettings(typeof(Xbmc)).Enable, - XbmcNotifyOnGrab = _configProvider.XbmcNotifyOnGrab, - XbmcNotifyOnDownload = _configProvider.XbmcNotifyOnDownload, - XbmcUpdateLibrary = _configProvider.XbmcUpdateLibrary, - XbmcCleanLibrary = _configProvider.XbmcCleanLibrary, - XbmcHosts = _configProvider.XbmcHosts, - XbmcUsername = _configProvider.XbmcUsername, - XbmcPassword = _configProvider.XbmcPassword, - XbmcUpdateWhenPlaying = _configProvider.XbmcUpdateWhenPlaying, - SmtpEnabled = _externalNotificationProvider.GetSettings(typeof(Smtp)).Enable, - SmtpNotifyOnGrab = _configProvider.SmtpNotifyOnGrab, - SmtpNotifyOnDownload = _configProvider.SmtpNotifyOnDownload, - SmtpServer = _configProvider.SmtpServer, - SmtpPort = _configProvider.SmtpPort, - SmtpUseSsl = _configProvider.SmtpUseSsl, - SmtpUsername = _configProvider.SmtpUsername, - SmtpPassword = _configProvider.SmtpPassword, - SmtpFromAddress = _configProvider.SmtpFromAddress, - SmtpToAddresses = _configProvider.SmtpToAddresses, - TwitterEnabled = _externalNotificationProvider.GetSettings(typeof(Twitter)).Enable, - TwitterNotifyOnGrab = _configProvider.TwitterNotifyOnGrab, - TwitterNotifyOnDownload = _configProvider.TwitterNotifyOnDownload, - GrowlEnabled = _externalNotificationProvider.GetSettings(typeof(Growl)).Enable, - GrowlNotifyOnGrab = _configProvider.GrowlNotifyOnGrab, - GrowlNotifyOnDownload = _configProvider.GrowlNotifyOnDownload, - GrowlHost = _configProvider.GrowlHost, - GrowlPassword = _configProvider.GrowlPassword, - ProwlEnabled = _externalNotificationProvider.GetSettings(typeof(Prowl)).Enable, - ProwlNotifyOnGrab = _configProvider.ProwlNotifyOnGrab, - ProwlNotifyOnDownload = _configProvider.ProwlNotifyOnDownload, - ProwlApiKeys = _configProvider.ProwlApiKeys, - ProwlPriority = _configProvider.ProwlPriority, - ProwlPrioritySelectList = GetProwlPrioritySelectList(), - PlexEnabled = _externalNotificationProvider.GetSettings(typeof(Plex)).Enable, - PlexNotifyOnGrab = _configProvider.PlexNotifyOnGrab, - PlexNotifyOnDownload = _configProvider.PlexNotifyOnDownload, - PlexUpdateLibrary = _configProvider.PlexUpdateLibrary, - PlexServerHost = _configProvider.PlexServerHost, - PlexClientHosts = _configProvider.PlexClientHosts, - PlexUsername = _configProvider.PlexUsername, - PlexPassword = _configProvider.PlexPassword, - }; - - return View(model); - } - - public ActionResult System() - { - var selectedAuthenticationType = _configFileProvider.AuthenticationType; - var authenticationTypes = new List(); - - foreach (AuthenticationType authenticationType in Enum.GetValues(typeof(AuthenticationType))) - { - authenticationTypes.Add(authenticationType); - } - - var authTypeSelectList = new SelectList(authenticationTypes, selectedAuthenticationType); - - var model = new SystemSettingsModel(); - model.Port = _configFileProvider.Port; - model.LaunchBrowser = _configFileProvider.LaunchBrowser; - model.AuthenticationType = selectedAuthenticationType; - model.AuthTypeSelectList = authTypeSelectList; - model.RecycleBin = _configProvider.RecycleBin; - - return View(model); - } - - public ActionResult Misc() - { - var model = new MiscSettingsModel(); - model.EnableBacklogSearching = _configProvider.EnableBacklogSearching; - model.AutoIgnorePreviouslyDownloadedEpisodes = _configProvider.AutoIgnorePreviouslyDownloadedEpisodes; - model.AllowedReleaseGroups = _configProvider.AllowedReleaseGroups; - model.IgnoreArticlesWhenSortingSeries = _configProvider.IgnoreArticlesWhenSortingSeries; - - return View(model); - } - - public PartialViewResult AddProfile() - { - var qualityProfile = new QualityProfile - { - Name = "New Profile", - Allowed = new List { QualityTypes.Unknown }, - Cutoff = QualityTypes.Unknown - }; - - var qualityProfileId = _qualityProvider.Add(qualityProfile); - - return GetQualityProfileView(qualityProfileId); - } - - public PartialViewResult GetQualityProfileView(int profileId) - { - var profile = _qualityProvider.Get(profileId); - - var model = new QualityProfileModel(); - model.QualityProfileId = profile.QualityProfileId; - model.Name = profile.Name; - model.Allowed = profile.Allowed; - model.Sdtv = profile.Allowed.Contains(QualityTypes.SDTV); - model.Dvd = profile.Allowed.Contains(QualityTypes.DVD); - model.Hdtv = profile.Allowed.Contains(QualityTypes.HDTV720p); - model.Webdl720p = profile.Allowed.Contains(QualityTypes.WEBDL720p); - model.Webdl1080p = profile.Allowed.Contains(QualityTypes.WEBDL1080p); - model.Bluray720p = profile.Allowed.Contains(QualityTypes.Bluray720p); - model.Bluray1080p = profile.Allowed.Contains(QualityTypes.Bluray1080p); - model.Cutoff = (int)profile.Cutoff; - - model.SdtvId = QualityTypes.SDTV.Id; - model.DvdId = QualityTypes.DVD.Id; - model.HdtvId = QualityTypes.HDTV720p.Id; - model.Webdl720pId = QualityTypes.WEBDL720p.Id; - model.Webdl1080pId = QualityTypes.WEBDL1080p.Id; - model.Bluray720pId = QualityTypes.Bluray720p.Id; - model.Bluray1080pId = QualityTypes.Bluray1080p.Id; - - return PartialView("QualityProfileItem", model); - } - - [HttpPost] - [JsonErrorFilter] - public JsonResult DeleteQualityProfile(int profileId) - { - if (_seriesProvider.GetAllSeries().Where(s => s.QualityProfileId == profileId).Count() != 0) - return JsonNotificationResult.Oops("Profile is still in use."); - - _qualityProvider.Delete(profileId); - - return Json("ok"); - } - - public PartialViewResult AddNewznabProvider() - { - var newznab = new NewznabDefinition - { - Enable = false, - Name = "Newznab Provider" - }; - - var id = _newznabProvider.Save(newznab); - newznab.Id = id; - - ViewData["ProviderId"] = id; - - return PartialView("NewznabProvider", newznab); - } - - public ActionResult GetNewznabProviderView(NewznabDefinition provider) - { - ViewData["ProviderId"] = provider.Id; - - return PartialView("NewznabProvider", provider); - } - - [JsonErrorFilter] - public EmptyResult DeleteNewznabProvider(int providerId) - { - _newznabProvider.Delete(providerId); - return new EmptyResult(); - } - - public QualityModel GetUpdatedProfileList() - { - var profiles = _qualityProvider.All().ToList(); - var defaultQualityQualityProfileId = - Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", profiles[0].QualityProfileId)); - var selectList = new SelectList(profiles, "QualityProfileId", "Name"); - - return new QualityModel { DefaultQualityProfileId = defaultQualityQualityProfileId, QualityProfileSelectList = selectList }; - } - - public JsonResult AutoConfigureSab() - { - try - { - var info = _autoConfigureProvider.AutoConfigureSab(); - - if (info != null) - return Json(info, JsonRequestBehavior.AllowGet); - } - - catch (Exception) - { - } - - return JsonNotificationResult.Error("Auto-Configure Failed", "Please enter your SAB Settings Manually"); - } - - [HttpPost] - public JsonResult SaveIndexers(IndexerSettingsModel data) - { - if (ModelState.IsValid) - { - _configProvider.Retention = data.Retention; - - var nzbsRUsSettings = _indexerProvider.GetSettings(typeof(NzbsRUs)); - nzbsRUsSettings.Enable = data.NzbsRUsEnabled; - _indexerProvider.SaveSettings(nzbsRUsSettings); - - var newznabSettings = _indexerProvider.GetSettings(typeof(Newznab)); - newznabSettings.Enable = data.NewznabEnabled; - _indexerProvider.SaveSettings(newznabSettings); - - var womblesSettings = _indexerProvider.GetSettings(typeof(Wombles)); - womblesSettings.Enable = data.WomblesEnabled; - _indexerProvider.SaveSettings(womblesSettings); - - var fileSharingTalkSettings = _indexerProvider.GetSettings(typeof(FileSharingTalk)); - fileSharingTalkSettings.Enable = data.FileSharingTalkEnabled; - _indexerProvider.SaveSettings(fileSharingTalkSettings); - - var nzbIndexSettings = _indexerProvider.GetSettings(typeof(NzbIndex)); - nzbIndexSettings.Enable = data.NzbIndexEnabled; - _indexerProvider.SaveSettings(nzbIndexSettings); - - var nzbClubSettings = _indexerProvider.GetSettings(typeof(NzbClub)); - nzbClubSettings.Enable = data.NzbClubEnabled; - _indexerProvider.SaveSettings(nzbClubSettings); - - var omgwtfnzbsSettings = _indexerProvider.GetSettings(typeof(Omgwtfnzbs)); - omgwtfnzbsSettings.Enable = data.OmgwtfnzbsEnabled; - _indexerProvider.SaveSettings(omgwtfnzbsSettings); - - var nzbxSettings = _indexerProvider.GetSettings(typeof(Nzbx)); - nzbxSettings.Enable = data.NzbxEnabled; - _indexerProvider.SaveSettings(nzbxSettings); - - _configProvider.NzbsrusUId = data.NzbsrusUId; - _configProvider.NzbsrusHash = data.NzbsrusHash; - - _configProvider.FileSharingTalkUid = data.FileSharingTalkUid; - _configProvider.FileSharingTalkSecret = data.FileSharingTalkSecret; - - _configProvider.OmgwtfnzbsUsername = data.OmgwtfnzbsUsername; - _configProvider.OmgwtfnzbsApiKey = data.OmgwtfnzbsApiKey; - - //Save the interval to config and immediately apply it the the job (to avoid a restart) - _configProvider.RssSyncInterval = data.RssSyncInterval; - - /* var rssSyncJob = _jobProvider.GetDefinition(typeof(RssSyncJob)); - rssSyncJob.Interval = data.RssSyncInterval; - _jobProvider.SaveDefinition(rssSyncJob);*/ - - try - { - if (data.NewznabDefinitions != null) - _newznabProvider.SaveAll(data.NewznabDefinitions); - } - catch(Exception) - { - return JsonNotificationResult.Oops("Invalid Nzbnab Indexer found, please check your settings"); - } - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - [HttpPost] - public JsonResult SaveDownloadClient(DownloadClientSettingsModel data) - { - if (ModelState.IsValid) - { - _configProvider.SabHost = data.SabHost; - _configProvider.SabPort = data.SabPort; - _configProvider.SabApiKey = data.SabApiKey; - _configProvider.SabPassword = data.SabPassword; - _configProvider.SabTvCategory = data.SabTvCategory; - _configProvider.SabUsername = data.SabUsername; - _configProvider.SabBacklogTvPriority = data.SabBacklogTvPriority; - _configProvider.SabRecentTvPriority = data.SabRecentTvPriority; - _configProvider.DownloadClientTvDirectory = data.DownloadClientDropDirectory; - _configProvider.BlackholeDirectory = data.BlackholeDirectory; - _configProvider.DownloadClient = (DownloadClientType)data.DownloadClient; - _configProvider.PneumaticDirectory = data.PneumaticDirectory; - _configProvider.DownloadClientUseSceneName = data.UseSceneName; - _configProvider.NzbgetHost = data.NzbgetHost; - _configProvider.NzbgetPort = data.NzbgetPort; - _configProvider.NzbgetUsername = data.NzbgetUsername; - _configProvider.NzbgetPassword = data.NzbgetPassword; - _configProvider.NzbgetTvCategory = data.NzbgetTvCategory; - _configProvider.NzbgetBacklogTvPriority = (PriorityType)data.NzbgetBacklogTvPriority; - _configProvider.NzbgetRecentTvPriority = (PriorityType)data.NzbgetRecentTvPriority; - - return GetSuccessResult(); - } - - return JsonNotificationResult.Oops("Invalid Data"); - } - - [HttpPost] - public JsonResult SaveQuality(QualityModel data) - { - if (ModelState.IsValid) - { - _configProvider.DefaultQualityProfile = data.DefaultQualityProfileId; - - //Saves only the Default Quality, skips User Profiles since none exist - if (data.Profiles == null) - return GetSuccessResult(); - - foreach (var profileModel in data.Profiles) - { - Logger.Debug(String.Format("Updating Profile: {0}", profileModel)); - - var profile = new QualityProfile(); - profile.QualityProfileId = profileModel.QualityProfileId; - profile.Name = profileModel.Name; - profile.Cutoff = (QualityTypes)profileModel.Cutoff; - - profile.Allowed = new List(); - - if (profileModel.Sdtv) - profile.Allowed.Add(QualityTypes.SDTV); - - if (profileModel.Dvd) - profile.Allowed.Add(QualityTypes.DVD); - - if (profileModel.Hdtv) - profile.Allowed.Add(QualityTypes.HDTV720p); - - if (profileModel.Webdl720p) - profile.Allowed.Add(QualityTypes.WEBDL720p); - - if (profileModel.Webdl1080p) - profile.Allowed.Add(QualityTypes.WEBDL1080p); - - if (profileModel.Bluray720p) - profile.Allowed.Add(QualityTypes.Bluray720p); - - if (profileModel.Bluray1080p) - profile.Allowed.Add(QualityTypes.Bluray1080p); - - //If the Cutoff value selected is not in the allowed list then return an error - if (!profile.Allowed.Contains(profile.Cutoff)) - return GetInvalidModelResult(); - - _qualityProvider.Update(profile); - } - - var qualityTypesFromDb = _qualityTypeProvider.All(); - - qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize = data.SdtvMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize = data.DvdMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize = data.HdtvMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize = data.Webdl720pMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize = data.Webdl1080pMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize = data.Bluray720pMaxSize; - qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize = data.Bluray1080pMaxSize; - - _qualityTypeProvider.UpdateAll(qualityTypesFromDb); - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - [HttpPost] - public JsonResult SaveNotifications(NotificationSettingsModel data) - { - if (ModelState.IsValid) - { - //XBMC Enabled - var xbmcSettings = _externalNotificationProvider.GetSettings(typeof(Xbmc)); - xbmcSettings.Enable = data.XbmcEnabled; - _externalNotificationProvider.SaveSettings(xbmcSettings); - - _configProvider.XbmcNotifyOnGrab = data.XbmcNotifyOnGrab; - _configProvider.XbmcNotifyOnDownload = data.XbmcNotifyOnDownload; - _configProvider.XbmcUpdateLibrary = data.XbmcUpdateLibrary; - _configProvider.XbmcCleanLibrary = data.XbmcCleanLibrary; - _configProvider.XbmcHosts = data.XbmcHosts; - _configProvider.XbmcUsername = data.XbmcUsername; - _configProvider.XbmcPassword = data.XbmcPassword; - _configProvider.XbmcUpdateWhenPlaying = data.XbmcUpdateWhenPlaying; - - //SMTP - var smtpSettings = _externalNotificationProvider.GetSettings(typeof(Smtp)); - smtpSettings.Enable = data.SmtpEnabled; - _externalNotificationProvider.SaveSettings(smtpSettings); - - _configProvider.SmtpNotifyOnGrab = data.SmtpNotifyOnGrab; - _configProvider.SmtpNotifyOnDownload = data.SmtpNotifyOnDownload; - _configProvider.SmtpServer = data.SmtpServer; - _configProvider.SmtpPort = data.SmtpPort; - _configProvider.SmtpUseSsl = data.SmtpUseSsl; - _configProvider.SmtpUsername = data.SmtpUsername; - _configProvider.SmtpPassword = data.SmtpPassword; - _configProvider.SmtpFromAddress = data.SmtpFromAddress; - _configProvider.SmtpToAddresses = data.SmtpToAddresses; - - //Twitter - var twitterSettings = _externalNotificationProvider.GetSettings(typeof(Twitter)); - twitterSettings.Enable = data.TwitterEnabled; - _externalNotificationProvider.SaveSettings(twitterSettings); - - _configProvider.TwitterNotifyOnGrab = data.TwitterNotifyOnGrab; - _configProvider.TwitterNotifyOnDownload = data.TwitterNotifyOnDownload; - - //Growl - var growlSettings = _externalNotificationProvider.GetSettings(typeof(Growl)); - growlSettings.Enable = data.GrowlEnabled; - _externalNotificationProvider.SaveSettings(growlSettings); - - _configProvider.GrowlNotifyOnGrab = data.GrowlNotifyOnGrab; - _configProvider.GrowlNotifyOnDownload = data.GrowlNotifyOnDownload; - _configProvider.GrowlHost = data.GrowlHost; - _configProvider.GrowlPassword = data.GrowlPassword; - - //Prowl - var prowlSettings = _externalNotificationProvider.GetSettings(typeof(Prowl)); - prowlSettings.Enable = data.ProwlEnabled; - _externalNotificationProvider.SaveSettings(prowlSettings); - - _configProvider.ProwlNotifyOnGrab = data.ProwlNotifyOnGrab; - _configProvider.ProwlNotifyOnDownload = data.ProwlNotifyOnDownload; - _configProvider.ProwlApiKeys = data.ProwlApiKeys; - _configProvider.ProwlPriority = data.ProwlPriority; - - //Plex - var plexSettings = _externalNotificationProvider.GetSettings(typeof(Plex)); - plexSettings.Enable = data.PlexEnabled; - _externalNotificationProvider.SaveSettings(plexSettings); - - _configProvider.PlexNotifyOnGrab = data.PlexNotifyOnGrab; - _configProvider.PlexNotifyOnDownload = data.PlexNotifyOnDownload; - _configProvider.PlexUpdateLibrary = data.PlexUpdateLibrary; - _configProvider.PlexServerHost = data.PlexServerHost; - _configProvider.PlexClientHosts = data.PlexClientHosts; - _configProvider.PlexUsername = data.PlexUsername; - _configProvider.PlexPassword = data.PlexPassword; - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - [HttpPost] - public JsonResult SaveNaming(EpisodeNamingModel data) - { - if (ModelState.IsValid) - { - _configProvider.SortingIncludeSeriesName = data.SeriesName; - _configProvider.SortingIncludeEpisodeTitle = data.EpisodeName; - _configProvider.SortingReplaceSpaces = data.ReplaceSpaces; - _configProvider.SortingAppendQuality = data.AppendQuality; - _configProvider.UseSeasonFolder = data.SeasonFolders; - _configProvider.SortingSeasonFolderFormat = data.SeasonFolderFormat; - _configProvider.SortingSeparatorStyle = data.SeparatorStyle; - _configProvider.SortingNumberStyle = data.NumberStyle; - _configProvider.SortingMultiEpisodeStyle = data.MultiEpisodeStyle; - _configProvider.SortingUseSceneName = data.SceneName; - - //Metadata - _configProvider.MetadataUseBanners = data.MetadataUseBanners; - - //Xbmc - var xbmc = _metadataProvider.GetSettings(typeof(Core.Providers.Metadata.Xbmc)); - xbmc.Enable = data.MetadataXbmcEnabled; - _metadataProvider.SaveSettings(xbmc); - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - [HttpPost] - public JsonResult SaveSystem(SystemSettingsModel data) - { - if (ModelState.IsValid) - { - _configFileProvider.Port = data.Port; - _configFileProvider.LaunchBrowser = data.LaunchBrowser; - _configFileProvider.AuthenticationType = data.AuthenticationType; - _configProvider.RecycleBin = data.RecycleBin; - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - [HttpPost] - public JsonResult SaveMisc(MiscSettingsModel data) - { - if (ModelState.IsValid) - { - _configProvider.EnableBacklogSearching = data.EnableBacklogSearching; - _configProvider.AutoIgnorePreviouslyDownloadedEpisodes = data.AutoIgnorePreviouslyDownloadedEpisodes; - _configProvider.AllowedReleaseGroups = data.AllowedReleaseGroups; - _configProvider.IgnoreArticlesWhenSortingSeries = data.IgnoreArticlesWhenSortingSeries; - - return GetSuccessResult(); - } - - return GetInvalidModelResult(); - } - - private JsonResult GetSuccessResult() - { - return JsonNotificationResult.Info("Settings Saved"); - } - - private JsonResult GetInvalidModelResult() - { - return JsonNotificationResult.Oops("Invalid post data"); - } - - private SelectList GetProwlPrioritySelectList() - { - var list = new List(); - list.Add(new ProwlPrioritySelectListModel { Name = "Very Low", Value = -2 }); - list.Add(new ProwlPrioritySelectListModel { Name = "Moderate", Value = -1 }); - list.Add(new ProwlPrioritySelectListModel { Name = "Normal", Value = 0 }); - list.Add(new ProwlPrioritySelectListModel { Name = "High", Value = 1 }); - list.Add(new ProwlPrioritySelectListModel { Name = "Emergency", Value = 2 }); - - return new SelectList(list, "Value", "Name"); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/SharedController.cs b/NzbDrone.Web/Controllers/SharedController.cs deleted file mode 100644 index 3ca431803..000000000 --- a/NzbDrone.Web/Controllers/SharedController.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System.Web.Mvc; -using NzbDrone.Common; -using NzbDrone.Core.Providers; -using NzbDrone.Core.RootFolders; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class SharedController : Controller - { - private readonly EnvironmentProvider _environmentProvider; - private readonly RootFolderService _rootFolderService; - - public SharedController(EnvironmentProvider environmentProvider, RootFolderService rootFolderService) - { - _environmentProvider = environmentProvider; - _rootFolderService = rootFolderService; - } - - public ActionResult Index() - { - return RedirectToAction("Index", "Series"); - } - - [ChildActionOnly] - [OutputCache(Duration = 3600)] - public ActionResult Footer() - { - return PartialView(new FooterModel { BuildTime = _environmentProvider.BuildDateTime, Version = _environmentProvider.Version }); - } - - [ChildActionOnly] - [OutputCache(Duration = 600)] - public ActionResult FreeSpace() - { - var rootDirs = _rootFolderService.FreeSpaceOnDrives(); - - return PartialView(rootDirs); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/SystemController.cs b/NzbDrone.Web/Controllers/SystemController.cs deleted file mode 100644 index 3c1cd6d3f..000000000 --- a/NzbDrone.Web/Controllers/SystemController.cs +++ /dev/null @@ -1,213 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Web.Mvc; -using System.Web.Script.Serialization; -using NzbDrone.Common; -using NzbDrone.Core; -using NzbDrone.Core.Helpers; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Lifecycle; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Providers.Core; -using NzbDrone.Core.Providers.DownloadClients; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class SystemController : Controller - { - private readonly JobController _jobProvider; - private readonly IndexerProvider _indexerProvider; - private readonly ConfigProvider _configProvider; - private readonly DiskProvider _diskProvider; - private readonly BackupProvider _backupProvider; - private readonly StatsProvider _statsProvider; - private readonly IJobRepository _jobRepository; - - public SystemController(JobController jobProvider, IndexerProvider indexerProvider, - ConfigProvider configProvider, DiskProvider diskProvider, - BackupProvider backupProvider, StatsProvider statsProvider,IJobRepository jobRepository) - { - _jobProvider = jobProvider; - _indexerProvider = indexerProvider; - _configProvider = configProvider; - _diskProvider = diskProvider; - _backupProvider = backupProvider; - _statsProvider = statsProvider; - _jobRepository = jobRepository; - } - - public ActionResult Index() - { - return View(); - } - - public ActionResult Logs() - { - return View(); - } - - public ActionResult Jobs() - { - var queue = _jobProvider.Queue.Select(c => new JobQueueItemModel - { - Name = c.JobType.Name, - Options = c.Options - }); - - var serializedQueue = new JavaScriptSerializer().Serialize(queue); - - ViewData["Queue"] = serializedQueue; - - var jobs = _jobRepository.All().Select(j => new JobModel - { - Id = j.OID, - Enable = j.Enable, - TypeName = j.TypeName, - Name = j.Name, - Interval = j.Interval, - LastExecution = j.LastExecution.ToString(), - Success = j.Success - }).OrderBy(j => j.Interval); - - var serializedJobs = new JavaScriptSerializer().Serialize(jobs); - - return View((object)serializedJobs); - } - - public ActionResult Indexers() - { - var indexers = _indexerProvider.All(); - var serialized = new JavaScriptSerializer().Serialize(indexers); - - return View((object)serialized); - } - - public ActionResult Config() - { - var config = _configProvider.All(); - var serialized = new JavaScriptSerializer().Serialize(config); - - return View((object)serialized); - } - - //PostDownloadView - public ActionResult PendingProcessing() - { - ViewData["DropDir"] = _configProvider.DownloadClientTvDirectory; - - var dropDir = _configProvider.DownloadClientTvDirectory; - var subFolders = _diskProvider.GetDirectories(dropDir); - - var models = new List(); - - //Get the CreationTime and Files - foreach (var folder in subFolders) - { - var model = new PendingProcessingModel(); - model.Name = new DirectoryInfo(folder).Name; - model.Created = _diskProvider.DirectoryDateCreated(folder).ToString(); - model.Path = folder.Replace(Path.DirectorySeparatorChar, '|').Replace(Path.VolumeSeparatorChar, '^').Replace('\'', '`'); - - var files = _diskProvider.GetFileInfos(folder, "*.*", SearchOption.AllDirectories); - - var fileResult = "
Name
Size
"; - - foreach (var fileInfo in files) - { - fileResult += String.Format("
{0}
{1}
", fileInfo.Name, - fileInfo.Length.ToBestFileSize(1)); - } - - model.Files = fileResult; - - models.Add(model); - } - - var serialized = new JavaScriptSerializer().Serialize(models); - - return View((object)serialized); - } - - public JsonResult RenamePendingProcessing(string path) - { - path = path.Replace('|', Path.DirectorySeparatorChar).Replace('^', Path.VolumeSeparatorChar).Replace('`', '\''); - - var di = new DirectoryInfo(path); - var dropDir = di.Parent.FullName; - var folder = di.Name; - - if (!folder.StartsWith("_UNPACK_") && !folder.StartsWith("_FAILED_")) - return new JsonResult { Data = "no change" }; - - folder = folder.Substring(8); - var newPath = dropDir + Path.DirectorySeparatorChar + folder; - _diskProvider.MoveDirectory(path, newPath); - - return new JsonResult { Data = "ok" }; - } - - public JsonResult RunJob(string typeName) - { - if (!_jobProvider.QueueJob(typeName)) - return JsonNotificationResult.Oops("Invalid Job Name"); - - return JsonNotificationResult.Info("Job Queued"); - } - - public ActionResult Backup() - { - var file = _backupProvider.CreateBackupZip(); - var fileInfo = new FileInfo(file); - - return File(fileInfo.FullName, "application/binary", fileInfo.Name); - } - - public ActionResult Stats() - { - var model = _statsProvider.GetStats(); - - return View(model); - } - - public JsonResult Restart() - { - _jobProvider.QueueJob(typeof(AppRestartJob)); - return JsonNotificationResult.Info("NzbDrone will restart shortly"); - } - - public JsonResult Shutdown() - { - _jobProvider.QueueJob(typeof(AppShutdownJob)); - return JsonNotificationResult.Info("NzbDrone will shutdown shortly"); - } - - public JsonResult SelectConfigAjax() - { - var config = _configProvider.All(); - - return Json(new - { - iTotalRecords = config.Count(), - iTotalDisplayRecords = config.Count(), - aaData = config - }, JsonRequestBehavior.AllowGet); - } - - [HttpPost] - public string SaveConfigAjax(string id, string value) - { - _configProvider.SetValue(id, value); - return value; - } - - [HttpPost] - public string InsertConfigAjax(string key, string value) - { - _configProvider.SetValue(key, value); - return key; - } - } -} diff --git a/NzbDrone.Web/Controllers/UpcomingController.cs b/NzbDrone.Web/Controllers/UpcomingController.cs deleted file mode 100644 index 06f2cb261..000000000 --- a/NzbDrone.Web/Controllers/UpcomingController.cs +++ /dev/null @@ -1,70 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web.Mvc; -using NzbDrone.Core; -using NzbDrone.Core.Providers; -using NzbDrone.Core.Repository; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class UpcomingController : Controller - { - private readonly UpcomingEpisodesProvider _upcomingEpisodesProvider; - - public UpcomingController(UpcomingEpisodesProvider upcomingEpisodesProvider) - { - _upcomingEpisodesProvider = upcomingEpisodesProvider; - } - - // - // GET: /Upcoming/ - - public ActionResult Index() - { - var upcomingEpisodes = GetUpcomingEpisodeModels(_upcomingEpisodesProvider.UpcomingEpisodes()); - - - var upcoming = new UpcomingEpisodesModel - { - Yesterday = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(-1)).ToList(), - Today = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today).ToList(), - Tomorrow = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(1)).ToList(), - TwoDays = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(2)).ToList(), - ThreeDays = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(3)).ToList(), - FourDays = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(4)).ToList(), - FiveDays = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(5)).ToList(), - SixDays = upcomingEpisodes.Where(e => e.AirDateTime.Date == DateTime.Today.AddDays(6)).ToList(), - Later = upcomingEpisodes.Where(e => e.AirDateTime.Date >= DateTime.Today.AddDays(7)).ToList() - }; - - return View(upcoming); - } - - private List GetUpcomingEpisodeModels(List episodes) - { - return episodes.Select(u => new UpcomingEpisodeModel - { - SeriesId = u.Series.SeriesId, - EpisodeId = u.EpisodeId, - SeriesTitle = u.Series.Title, - EpisodeNumbering = String.Format("{0}x{1:00}", u.SeasonNumber, u.EpisodeNumber), - Title = u.Title, - Overview = u.Overview, - AirDateTime = GetDateTime(u.AirDate.Value, u.Series.AirTime), - AirDate = u.AirDate.Value.ToBestDateString(), - AirTime = String.IsNullOrEmpty(u.Series.AirTime) ? "?" : Convert.ToDateTime(u.Series.AirTime).ToShortTimeString(), - Status = u.Status.ToString() - }).OrderBy(e => e.AirDateTime).ToList(); - } - - private DateTime GetDateTime(DateTime airDate, string airTime) - { - if (String.IsNullOrWhiteSpace(airTime)) - return airDate; - - return airDate.Add(Convert.ToDateTime(airTime).TimeOfDay); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/UpdateController.cs b/NzbDrone.Web/Controllers/UpdateController.cs deleted file mode 100644 index 5e67eb711..000000000 --- a/NzbDrone.Web/Controllers/UpdateController.cs +++ /dev/null @@ -1,65 +0,0 @@ -using System; -using System.Linq; -using System.Web.Mvc; -using NzbDrone.Common; -using NzbDrone.Core.Jobs; -using NzbDrone.Core.Lifecycle; -using NzbDrone.Core.Providers; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Controllers -{ - public class UpdateController : Controller - { - private readonly UpdateProvider _updateProvider; - private readonly JobController _jobProvider; - private readonly EnvironmentProvider _environmentProvider; - private readonly DiskProvider _diskProvider; - - public UpdateController(UpdateProvider updateProvider, JobController jobProvider, - EnvironmentProvider environmentProvider, DiskProvider diskProvider) - { - _updateProvider = updateProvider; - _jobProvider = jobProvider; - _environmentProvider = environmentProvider; - _diskProvider = diskProvider; - } - - public ActionResult Index() - { - var updateModel = new UpdateModel(); - updateModel.UpdatePackage = _updateProvider.GetAvilableUpdate(_environmentProvider.Version); - updateModel.LogFiles = _updateProvider.UpdateLogFile(); - updateModel.LogFolder = _environmentProvider.GetUpdateLogFolder(); - - return View(updateModel); - } - - public ActionResult StartUpdate() - { - _jobProvider.QueueJob(typeof(AppUpdateJob)); - - return JsonNotificationResult.Info("Update will begin shortly", "NzbDrone will restart automatically."); - } - - public ActionResult ViewLog( string filepath) - { - ViewBag.Log = _diskProvider.ReadAllText(filepath).Replace(Environment.NewLine, "
"); - return View(); - } - - [HttpGet] - public ActionResult Post(string expectedVersion) - { - var model = new PostUpgradeModel(); - model.CurrentVersion = _environmentProvider.Version; - model.ExpectedVersion = Version.Parse(expectedVersion); - model.Success = model.CurrentVersion >= model.ExpectedVersion; - - if (!model.Success) - model.LogFile = _updateProvider.UpdateLogFile().FirstOrDefault(); - - return View(model); - } - } -} diff --git a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.dll b/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.dll deleted file mode 100644 index 969974724..000000000 Binary files a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.dll and /dev/null differ diff --git a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.fakesconfig b/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.fakesconfig deleted file mode 100644 index af950a0f6..000000000 Binary files a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.fakesconfig and /dev/null differ diff --git a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.messages b/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.messages deleted file mode 100644 index 59b9caa8b..000000000 --- a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.messages +++ /dev/null @@ -1,27 +0,0 @@ -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate stub for Ninject.Web.Mvc.FilterBindingSyntax.BindingRootExtensions: type is sealed. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate stub for Ninject.Web.Mvc.FilterBindingSyntax.IConstructorArgumentSyntaxExtensions: type is sealed. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.Filter.INinjectFilter: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.Filter.NinjectFilterProvider+<>c__DisplayClass1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.BindingRootExtensions+<>c__DisplayClass0`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.BindingRootExtensions+<>c__DisplayClass2`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWhenSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingInSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingNamedSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWithSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingOnSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWhenInNamedWithOrOnSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingInNamedWithOrOnSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingNamedWithOrOnSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWithOrOnSyntax`1: type is an interface. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass12: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass15`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass18`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass1b: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass1e`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass2: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass21`1: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass24: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass6: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClass9: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClassc: type is not supported because of internal limitations. -C:\Users\Mark\Dropbox\Dev\NzbDrone\NzbDrone.Web\Fakes\Ninject.Web.Mvc.fakes : warning : Cannot generate shim for Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1+<>c__DisplayClassf: type is not supported because of internal limitations. diff --git a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.xml b/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.xml deleted file mode 100644 index ecb0d8bfa..000000000 --- a/NzbDrone.Web/FakesAssemblies/Ninject.Web.Mvc.Fakes.xml +++ /dev/null @@ -1,2087 +0,0 @@ - - - - Ninject.Web.Mvc.Fakes - - - - Shim type of Ninject.Web.Mvc.MvcModule - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of MvcModule.MvcModule() - - - Sets the shim of MvcModule.Load() - - - Sets the shim of MvcModule.<Load>b__0(IContext ctx) - - - Sets the shim of MvcModule.<Load>b__1(IContext ctx) - - - Define shims for all instances members - - - Sets the shim of MvcModule.Load() - - - Shim type of Ninject.Web.Mvc.NinjectDependencyResolver - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectDependencyResolver.NinjectDependencyResolver(IResolutionRoot resolutionRoot) - - - Sets the shim of NinjectDependencyResolver.GetService(Type serviceType) - - - Sets the shim of NinjectDependencyResolver.GetServices(Type serviceType) - - - Define shims for all instances members - - - Sets the shim of NinjectDependencyResolver.GetService(Type serviceType) - - - Sets the shim of NinjectDependencyResolver.GetServices(Type serviceType) - - - Shim type of Ninject.Web.Mvc.NinjectMvcHttpApplicationPlugin - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectMvcHttpApplicationPlugin.NinjectMvcHttpApplicationPlugin(IKernel kernel) - - - Sets the shim of NinjectMvcHttpApplicationPlugin.CreateDependencyResolver() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.RemoveDefaultAttributeFilterProvider() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.get_RequestScope() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.Start() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.Stop() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.<RemoveDefaultAttributeFilterProvider>b__0(IFilterProvider f) - - - Define shims for all instances members - - - Sets the shim of NinjectMvcHttpApplicationPlugin.CreateDependencyResolver() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.get_RequestScope() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.Start() - - - Sets the shim of NinjectMvcHttpApplicationPlugin.Stop() - - - Stub type of Ninject.Web.Mvc.MvcModule - - - Initializes a new instance - - - Sets the stub of NinjectModule.AddBinding(IBinding binding) - - - Sets the stub of NinjectModule.AddBinding(IBinding binding) - - - Sets the stub of DisposableObject.Dispose(Boolean disposing) - - - Sets the stub of DisposableObject.Dispose(Boolean disposing) - - - Initializes a new instance of type StubMvcModule - - - Sets the stub of NinjectModule.get_KernelInstance() - - - Sets the stub of MvcModule.Load() - - - Sets the stub of MvcModule.Load() - - - Sets the stub of NinjectModule.get_Name() - - - Sets the stub of NinjectModule.RemoveBinding(IBinding binding) - - - Sets the stub of NinjectModule.RemoveBinding(IBinding binding) - - - Sets the stub of NinjectModule.Unbind(Type service) - - - Sets the stub of NinjectModule.Unbind(Type service) - - - Sets the stub of GlobalKernelRegistrationModule`1.Unload() - - - Sets the stub of GlobalKernelRegistrationModule`1.Unload() - - - Sets the stub of NinjectModule.VerifyRequiredModulesAreLoaded() - - - Sets the stub of NinjectModule.VerifyRequiredModulesAreLoaded() - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Sets the stub of NinjectModule.get_KernelInstance() - - - Sets the stub of NinjectModule.get_Name() - - - Stub type of Ninject.Web.Mvc.NinjectDependencyResolver - - - Initializes a new instance - - - Initializes a new instance of type StubNinjectDependencyResolver - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.NinjectMvcHttpApplicationPlugin - - - Initializes a new instance - - - Sets the stub of DisposableObject.Dispose(Boolean disposing) - - - Sets the stub of DisposableObject.Dispose(Boolean disposing) - - - Initializes a new instance of type StubNinjectMvcHttpApplicationPlugin - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Shim type of Ninject.Web.Mvc.Filter.FilterContextParameter - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Sets the shim of FilterContextParameter.get_ActionDescriptor() - - - Sets the shim of FilterContextParameter.set_ActionDescriptor(ActionDescriptor value) - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of FilterContextParameter.FilterContextParameter(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the shim of FilterContextParameter.get_ControllerContext() - - - Sets the shim of FilterContextParameter.set_ControllerContext(ControllerContext value) - - - Sets the shim of FilterContextParameter.<.ctor>b__0(IContext ctx) - - - Define shims for all instances members - - - Sets the shim of FilterContextParameter.get_ActionDescriptor() - - - Sets the shim of FilterContextParameter.set_ActionDescriptor(ActionDescriptor value) - - - Sets the shim of FilterContextParameter.get_ControllerContext() - - - Sets the shim of FilterContextParameter.set_ControllerContext(ControllerContext value) - - - Shim type of Ninject.Web.Mvc.Filter.NinjectFilter`1 - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectFilter`1.BuildFilter(FilterContextParameter parameter) - - - Sets the shim of NinjectFilter`1.NinjectFilter`1(IKernel kernel, FilterScope scope, Nullable`1<Int32> order, Guid filterId) - - - Sets the shim of NinjectFilter`1.<BuildFilter>b__0(IBindingMetadata m) - - - Define shims for all instances members - - - Sets the shim of NinjectFilter`1.BuildFilter(FilterContextParameter parameter) - - - Sets the shim of NinjectFilter`1.<BuildFilter>b__0(IBindingMetadata m) - - - Shim type of Ninject.Web.Mvc.Filter.NinjectFilterAttributeFilterProvider - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectFilterAttributeFilterProvider.NinjectFilterAttributeFilterProvider(IKernel kernel) - - - Sets the shim of NinjectFilterAttributeFilterProvider.GetActionAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the shim of NinjectFilterAttributeFilterProvider.GetControllerAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Define shims for all instances members - - - Sets the shim of NinjectFilterAttributeFilterProvider.GetActionAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the shim of NinjectFilterAttributeFilterProvider.GetControllerAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Shim type of Ninject.Web.Mvc.Filter.NinjectFilterProvider - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectFilterProvider.NinjectFilterProvider(IKernel kernel) - - - Sets the shim of NinjectFilterProvider.GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Define shims for all instances members - - - Sets the shim of NinjectFilterProvider.GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Stub type of Ninject.Web.Mvc.Filter.FilterContextParameter - - - Initializes a new instance - - - Sets the stub of Parameter.Equals(Object obj) - - - Sets the stub of Parameter.Equals(Object obj) - - - Sets the stub of Parameter.GetHashCode() - - - Sets the stub of Parameter.GetHashCode() - - - Initializes a new instance of type StubFilterContextParameter - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.Filter.INinjectFilter - - - Initializes a new instance of type StubINinjectFilter - - - Sets the stub of INinjectFilter.BuildFilter(FilterContextParameter parameter) - - - Sets the stub of INinjectFilter.BuildFilter(FilterContextParameter parameter) - - - Stub type of Ninject.Web.Mvc.Filter.NinjectFilter`1 - - - Initializes a new instance - - - Initializes a new instance of type StubNinjectFilter - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.Filter.NinjectFilterAttributeFilterProvider - - - Initializes a new instance - - - Sets the stub of NinjectFilterAttributeFilterProvider.GetActionAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the stub of NinjectFilterAttributeFilterProvider.GetActionAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the stub of NinjectFilterAttributeFilterProvider.GetControllerAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the stub of NinjectFilterAttributeFilterProvider.GetControllerAttributes(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the stub of FilterAttributeFilterProvider.GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Sets the stub of FilterAttributeFilterProvider.GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor) - - - Initializes a new instance of type StubNinjectFilterAttributeFilterProvider - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.Filter.NinjectFilterProvider - - - Initializes a new instance - - - Initializes a new instance of type StubNinjectFilterProvider - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Shim type of Ninject.Web.Mvc.FilterBindingSyntax.AttributeValueSelector`1 - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Sets the shim of AttributeValueSelector`1.GetValue(Func`2<!0,!!0> valueSelector) - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of AttributeValueSelector`1.AttributeValueSelector`1(!0 attribute) - - - Define shims for all instances members - - - Sets the shim of AttributeValueSelector`1.GetValue(Func`2<!0,!!0> valueSelector) - - - Shim type of Ninject.Web.Mvc.FilterBindingSyntax.BindingRootExtensions - - - Initializes a new shim instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Sets the shim of BindingRootExtensions.BindFilter(IBindingRoot kernel, Expression`1<Func`2<IConstructorArgumentSyntax,!!0>> newExpression, FilterScope scope, Nullable`1<Int32> order) - - - Sets the shim of BindingRootExtensions.BindFilter(IBindingRoot kernel, FilterScope scope, Nullable`1<Int32> order) - - - Assigns the behavior for all methods of the shimmed type - - - Shim type of Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1 - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Binds the members of the interface to the shim. - - - Sets the shim of FilterFilterBindingBuilder`1.WhenActionMethodHas() - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerHas() - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerType() - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of FilterFilterBindingBuilder`1.get_BindingConfiguration() - - - Sets the shim of FilterFilterBindingBuilder`1.FilterFilterBindingBuilder`1(IBindingWhenInNamedWithOrOnSyntax`1<NinjectFilter`1<!0>> ninjectFilterBindingSyntax, IBindingWhenInNamedWithOrOnSyntax`1<!0> filterBindingSyntax) - - - Sets the shim of FilterFilterBindingBuilder`1.GetFilterContextParameter(IContext ctx) - - - Sets the shim of FilterFilterBindingBuilder`1.InRequestScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the shim of FilterFilterBindingBuilder`1.InScope(Func`2<IContext,Object> scope) - - - Sets the shim of FilterFilterBindingBuilder`1.InSingletonScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InThreadScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InTransientScope() - - - Sets the shim of FilterFilterBindingBuilder`1.get_Kernel() - - - Sets the shim of FilterFilterBindingBuilder`1.Named(String name) - - - Sets the shim of FilterFilterBindingBuilder`1.Ninject.Syntax.IFluentSyntax.GetType() - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`1<!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnDeactivation(Action`1<!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenActionMethodHas(Type attributeType) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerHas(Type attributeType) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerType(Type controllerType) - - - Sets the shim of FilterFilterBindingBuilder`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the shim of FilterFilterBindingBuilder`1.When(Func`2<IRequest,Boolean> condition) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Object value) - - - Sets the shim of FilterFilterBindingBuilder`1.WithMetadata(String key, Object value) - - - Sets the shim of FilterFilterBindingBuilder`1.WithParameter(IParameter parameter) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Object value) - - - Define shims for all instances members - - - Sets the shim of FilterFilterBindingBuilder`1.WhenActionMethodHas() - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerHas() - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerType() - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.get_BindingConfiguration() - - - Sets the shim of FilterFilterBindingBuilder`1.InRequestScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the shim of FilterFilterBindingBuilder`1.InScope(Func`2<IContext,Object> scope) - - - Sets the shim of FilterFilterBindingBuilder`1.InSingletonScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InThreadScope() - - - Sets the shim of FilterFilterBindingBuilder`1.InTransientScope() - - - Sets the shim of FilterFilterBindingBuilder`1.get_Kernel() - - - Sets the shim of FilterFilterBindingBuilder`1.Named(String name) - - - Sets the shim of FilterFilterBindingBuilder`1.Ninject.Syntax.IFluentSyntax.GetType() - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnActivation(Action`1<!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.OnDeactivation(Action`1<!0> action) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenActionMethodHas(Type attributeType) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerHas(Type attributeType) - - - Sets the shim of FilterFilterBindingBuilder`1.WhenControllerType(Type controllerType) - - - Sets the shim of FilterFilterBindingBuilder`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the shim of FilterFilterBindingBuilder`1.When(Func`2<IRequest,Boolean> condition) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithConstructorArgument(String name, Object value) - - - Sets the shim of FilterFilterBindingBuilder`1.WithMetadata(String key, Object value) - - - Sets the shim of FilterFilterBindingBuilder`1.WithParameter(IParameter parameter) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the shim of FilterFilterBindingBuilder`1.WithPropertyValue(String name, Object value) - - - Shim type of Ninject.Web.Mvc.FilterBindingSyntax.IConstructorArgumentSyntaxExtensions - - - Initializes a new shim instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Sets the shim of IConstructorArgumentSyntaxExtensions.FromActionAttribute(IConstructorArgumentSyntax syntax) - - - Sets the shim of IConstructorArgumentSyntaxExtensions.FromControllerAttribute(IConstructorArgumentSyntax syntax) - - - Assigns the behavior for all methods of the shimmed type - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.AttributeValueSelector`1 - - - Initializes a new instance - - - Initializes a new instance of type StubAttributeValueSelector - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.FilterFilterBindingBuilder`1 - - - Initializes a new instance - - - Initializes a new instance of type StubFilterFilterBindingBuilder - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingInNamedWithOrOnSyntax`1 - - - Initializes a new instance of type StubIFilterBindingInNamedWithOrOnSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets stubs of WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets stubs of WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingInSyntax`1 - - - Initializes a new instance of type StubIFilterBindingInSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingNamedSyntax`1 - - - Initializes a new instance of type StubIFilterBindingNamedSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingNamedWithOrOnSyntax`1 - - - Initializes a new instance of type StubIFilterBindingNamedWithOrOnSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets stubs of WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets stubs of WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingOnSyntax`1 - - - Initializes a new instance of type StubIFilterBindingOnSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWhenInNamedWithOrOnSyntax`1 - - - Initializes a new instance of type StubIFilterBindingWhenInNamedWithOrOnSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingInSyntax`1.InRequestScope() - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`2<IContext,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InScope(Func`4<IContext,ControllerContext,ActionDescriptor,Object> scope) - - - Sets the stub of IFilterBindingInSyntax`1.InSingletonScope() - - - Sets the stub of IFilterBindingInSyntax`1.InThreadScope() - - - Sets the stub of IFilterBindingInSyntax`1.InTransientScope() - - - Sets the stub of IFilterBindingNamedSyntax`1.Named(String name) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`2<IRequest,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas(Type attributeType) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas(Type attributeType) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType(Type controllerType) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets stubs of WhenActionMethodHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas(Type attributeType) - - - Sets stubs of WhenControllerHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas(Type attributeType) - - - Sets stubs of WhenControllerType() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType(Type controllerType) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`2<IRequest,Boolean> condition) - - - Sets stubs of WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets stubs of WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWhenSyntax`1 - - - Initializes a new instance of type StubIFilterBindingWhenSyntax - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`2<IRequest,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas(Type attributeType) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas(Type attributeType) - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType(Type controllerType) - - - Sets stubs of WhenActionMethodHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenActionMethodHas(Type attributeType) - - - Sets stubs of WhenControllerHas() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerHas(Type attributeType) - - - Sets stubs of WhenControllerType() - - - Sets the stub of IFilterBindingWhenSyntax`1.WhenControllerType(Type controllerType) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`3<ControllerContext,ActionDescriptor,Boolean> condition) - - - Sets the stub of IFilterBindingWhenSyntax`1.When(Func`2<IRequest,Boolean> condition) - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWithOrOnSyntax`1 - - - Initializes a new instance of type StubIFilterBindingWithOrOnSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`4<IContext,ControllerContext,ActionDescriptor,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnActivation(Action`1<!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`2<IContext,!0> action) - - - Sets the stub of IFilterBindingOnSyntax`1.OnDeactivation(Action`1<!0> action) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets stubs of WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets stubs of WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Stub type of Ninject.Web.Mvc.FilterBindingSyntax.IFilterBindingWithSyntax`1 - - - Initializes a new instance of type StubIFilterBindingWithSyntax - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Sets the stub of IFluentSyntax.Equals(Object other) - - - Sets the stub of IFluentSyntax.GetHashCode() - - - Sets the stub of IFluentSyntax.GetType() - - - Sets the stub of IFluentSyntax.ToString() - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFluentSyntax.ToString() - - - Sets stubs of WithConstructorArgumentFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithConstructorArgumentFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithConstructorArgument(String name, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithMetadata(String key, Object value) - - - Sets the stub of IFilterBindingWithSyntax`1.WithParameter(IParameter parameter) - - - Sets stubs of WithPropertyValueFromActionAttribute(String name, Func`2<!!0,Object> callback) - - - Sets stubs of WithPropertyValueFromControllerAttribute(String name, Func`2<!!0,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`4<IContext,ControllerContext,ActionDescriptor,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Func`2<IContext,Object> callback) - - - Sets the stub of IFilterBindingWithSyntax`1.WithPropertyValue(String name, Object value) - - - Sets the stub of IHaveBindingConfiguration.get_BindingConfiguration() - - - Sets the stub of IHaveKernel.get_Kernel() - - - Shim type of Ninject.Web.Mvc.Validation.NinjectDataAnnotationsModelValidatorProvider - - - Initializes a new shim instance - - - Initializes a new shim for the given instance - - - Assigns the 'Current' behavior for all methods of the shimmed type - - - Assigns the 'NotImplemented' behavior for all methods of the shimmed type - - - Assigns the behavior for all methods of the shimmed type - - - Sets the shim of NinjectDataAnnotationsModelValidatorProvider.NinjectDataAnnotationsModelValidatorProvider(IKernel kernel) - - - Sets the shim of NinjectDataAnnotationsModelValidatorProvider.GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable`1<Attribute> attributes) - - - Define shims for all instances members - - - Sets the shim of NinjectDataAnnotationsModelValidatorProvider.GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable`1<Attribute> attributes) - - - Stub type of Ninject.Web.Mvc.Validation.NinjectDataAnnotationsModelValidatorProvider - - - Initializes a new instance - - - Sets the stub of AssociatedValidatorProvider.GetTypeDescriptor(Type type) - - - Sets the stub of AssociatedValidatorProvider.GetTypeDescriptor(Type type) - - - Sets the stub of NinjectDataAnnotationsModelValidatorProvider.GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable`1<Attribute> attributes) - - - Sets the stub of NinjectDataAnnotationsModelValidatorProvider.GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable`1<Attribute> attributes) - - - Initializes a new instance of type StubNinjectDataAnnotationsModelValidatorProvider - - - Gets or sets a value that indicates if the base method should be called instead of the fallback behavior - - - Gets or sets the instance behavior. - - - Gets or sets the instance observer. - - - diff --git a/NzbDrone.Web/Filters/JsonErrorFilter.cs b/NzbDrone.Web/Filters/JsonErrorFilter.cs deleted file mode 100644 index af5105d95..000000000 --- a/NzbDrone.Web/Filters/JsonErrorFilter.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System.Linq; -using System.Web.Mvc; -using NLog; -using NzbDrone.Web.Models; - -namespace NzbDrone.Web.Filters -{ - public class JsonErrorFilter : FilterAttribute, IExceptionFilter - { - private static readonly Logger logger = LogManager.GetCurrentClassLogger(); - - public void OnException(ExceptionContext filterContext) - { - filterContext.Result = JsonNotificationResult.Oops(filterContext.Exception.Message); - filterContext.ExceptionHandled = true; - logger.FatalException(filterContext.RequestContext.HttpContext.Request.RawUrl, filterContext.Exception); - } - - - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Global.asax b/NzbDrone.Web/Global.asax deleted file mode 100644 index bd44f52fd..000000000 --- a/NzbDrone.Web/Global.asax +++ /dev/null @@ -1 +0,0 @@ -<%@ Application Codebehind="Global.asax.cs" Inherits="NzbDrone.Web.MvcApplication" Language="C#" %> diff --git a/NzbDrone.Web/Global.asax.cs b/NzbDrone.Web/Global.asax.cs deleted file mode 100644 index d05ee3ba1..000000000 --- a/NzbDrone.Web/Global.asax.cs +++ /dev/null @@ -1,125 +0,0 @@ -using System; -using System.Data.Common; -using System.Linq; -using System.Threading; -using System.Web; -using System.Web.Mvc; -using System.Web.Routing; -using Autofac; -using Autofac.Integration.Mvc; -using LowercaseRoutesMVC; -using NLog; -using NzbDrone.Core; -using NzbDrone.Core.Repository.Quality; -using NzbDrone.Web.Helpers.Binders; -using SignalR; - -namespace NzbDrone.Web -{ - public class MvcApplication : HttpApplication - { - private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); - - public static void RegisterRoutes(RouteCollection routes) - { - routes.IgnoreRoute("api/{*pathInfo}"); - routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); - routes.IgnoreRoute("{resource}.html"); - routes.IgnoreRoute("{*robotstxt}", new { robotstxt = @"(.*/)?robots.txt(/.*)?" }); - routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" }); - - routes.MapRouteLowercase( - name: "WithSeasonNumber", - url: "{controller}/{action}/{seriesId}/{seasonNumber}" - ); - - routes.MapRouteLowercase( - name: "SeriesId", - url: "{controller}/{action}/{seriesId}", - defaults: new { controller = "Series", action = "Index", seriesId = UrlParameter.Optional } - ); - } - - protected void Application_Start() - { - InitContainer(); - - RegisterRoutes(RouteTable.Routes); - AreaRegistration.RegisterAllAreas(); - - var razor = ViewEngines.Engines.Single(e => e is RazorViewEngine); - ViewEngines.Engines.Clear(); - ViewEngines.Engines.Add(razor); - - ModelBinders.Binders.Add(typeof(QualityTypes), new QualityTypesBinder()); - - RegisterGlobalFilters(GlobalFilters.Filters); - - Logger.Info("Fully initialized and ready."); - } - - private void InitContainer() - { - Logger.Info("NzbDrone Starting up."); - var dispatch = new CentralDispatch(); - dispatch.DedicateToHost(); - - dispatch.ContainerBuilder.RegisterAssemblyTypes(typeof(MvcApplication).Assembly).SingleInstance(); - dispatch.ContainerBuilder.RegisterAssemblyTypes(typeof(MvcApplication).Assembly).AsImplementedInterfaces().SingleInstance(); - - MVCRegistration(dispatch.ContainerBuilder); - - var container = dispatch.BuildContainer(); - - DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); - - //SignalR - RouteTable.Routes.MapHubs(); - - } - - private static void MVCRegistration(ContainerBuilder builder) - { - builder.RegisterModule(new AutofacWebTypesModule()); - - builder.RegisterControllers(typeof(MvcApplication).Assembly).InjectActionInvoker(); - builder.RegisterModelBinders(typeof(MvcApplication).Assembly).SingleInstance(); - - builder.RegisterType().As(); - } - - public static void RegisterGlobalFilters(GlobalFilterCollection filters) - { - filters.Add(new HandleErrorAttribute()); - } - - // ReSharper disable InconsistentNaming - protected void Application_Error(object sender, EventArgs e) - { - var lastError = Server.GetLastError(); - - if (lastError is HttpException && lastError.InnerException == null) - { - Logger.WarnException(String.Format("{0}. URL[{1}]", lastError.Message, Request.Path), lastError); - return; - } - - Logger.FatalException(lastError.Message + Environment.NewLine + Request.Url.PathAndQuery, lastError); - - if (lastError is DbException) - { - Logger.Warn("Restarting application"); - HttpRuntime.UnloadAppDomain(); - } - } - - protected void Application_BeginRequest() - { - Thread.CurrentThread.Name = "WEB_THREAD"; - } - - protected void Application_EndRequest() - { - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/Binders/QualityTypesBinder.cs b/NzbDrone.Web/Helpers/Binders/QualityTypesBinder.cs deleted file mode 100644 index 58ac0c7a7..000000000 --- a/NzbDrone.Web/Helpers/Binders/QualityTypesBinder.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using NzbDrone.Core.Repository.Quality; - -namespace NzbDrone.Web.Helpers.Binders -{ - public class QualityTypesBinder : IModelBinder - { - public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) - { - var value = bindingContext.ValueProvider.GetValue("quality"); - var quality = QualityTypes.FindById(Convert.ToInt32(value.AttemptedValue)); - - return quality; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/DescriptionExtension.cs b/NzbDrone.Web/Helpers/DescriptionExtension.cs deleted file mode 100644 index 2b1b8974f..000000000 --- a/NzbDrone.Web/Helpers/DescriptionExtension.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq.Expressions; -using System.Web; -using System.Web.Mvc; - -namespace NzbDrone.Web.Helpers -{ - public static class DescriptionExtension - { - public static MvcHtmlString DescriptionFor(this HtmlHelper html, Expression> expression) - { - var memberEx = expression.Body as MemberExpression; - - if (memberEx == null) - throw new ArgumentException("Body not a member-expression."); - - string name = memberEx.Member.Name; - - var attributes = TypeDescriptor.GetProperties(typeof(TModel))[name].Attributes; - var desc = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)]; - - return new MvcHtmlString(desc.Description); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/HtmlIncludeExtentions.cs b/NzbDrone.Web/Helpers/HtmlIncludeExtentions.cs deleted file mode 100644 index 14ec57015..000000000 --- a/NzbDrone.Web/Helpers/HtmlIncludeExtentions.cs +++ /dev/null @@ -1,48 +0,0 @@ -using System; -using System.IO; -using System.Linq; -using System.Web.Mvc; -using NzbDrone.Common; - -namespace NzbDrone.Web.Helpers -{ - public static class HtmlIncludeExtentions - { - private static readonly string versionString; - private static readonly bool isProduction; - - static HtmlIncludeExtentions() - { - versionString = new EnvironmentProvider().Version.ToString().Replace('.', '_'); - isProduction = EnvironmentProvider.IsProduction; - } - - public static MvcHtmlString IncludeScript(this HtmlHelper helper, string filename) - { - var relativePath = "/Scripts/" + filename; - VerifyFile(helper, relativePath); - return MvcHtmlString.Create(String.Format("", relativePath, versionString)); - } - - public static MvcHtmlString IncludeCss(this HtmlHelper helper, string filename) - { - var relativePath = "/Content/" + filename; - VerifyFile(helper, relativePath); - return MvcHtmlString.Create(String.Format("", relativePath, versionString)); - } - - private static void VerifyFile(HtmlHelper helper, string filename) - { - if (isProduction) - return; - - var path = helper.ViewContext.RequestContext.HttpContext.Server.MapPath(filename); - - if (!File.Exists(path)) - { - throw new FileNotFoundException("Included static resource was not found.", path); - } - - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/HtmlPrefixScopeExtensions.cs b/NzbDrone.Web/Helpers/HtmlPrefixScopeExtensions.cs deleted file mode 100644 index c816e1bba..000000000 --- a/NzbDrone.Web/Helpers/HtmlPrefixScopeExtensions.cs +++ /dev/null @@ -1,78 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web; -using System.Web.Mvc; - -namespace NzbDrone.Web.Helpers -{ - public static class HtmlPrefixScopeExtensions - { - private const string idsToReuseKey = "__htmlPrefixScopeExtensions_IdsToReuse_"; - - public static IDisposable BeginCollectionItem(this HtmlHelper html, string collectionName) - { - var idsToReuse = GetIdsToReuse(html.ViewContext.HttpContext, collectionName); - string itemIndex = idsToReuse.Count > 0 ? idsToReuse.Dequeue() : Guid.NewGuid().ToString(); - - // autocomplete="off" is needed to work around a very annoying Chrome behaviour whereby it reuses old values after the user clicks "Back", which causes the xyz.index and xyz[...] values to get out of sync. - html.ViewContext.Writer.WriteLine( - string.Format("", - collectionName, itemIndex)); - - html.ViewContext.Writer.WriteLine( - string.Format("", - collectionName, itemIndex)); - - return BeginHtmlFieldPrefixScope(html, string.Format("{0}[{1}]", collectionName, itemIndex)); - } - - public static IDisposable BeginHtmlFieldPrefixScope(this HtmlHelper html, string htmlFieldPrefix) - { - return new HtmlFieldPrefixScope(html.ViewData.TemplateInfo, htmlFieldPrefix); - } - - private static Queue GetIdsToReuse(HttpContextBase httpContext, string collectionName) - { - // We need to use the same sequence of IDs following a server-side validation failure, - // otherwise the framework won't render the validation error messages next to each item. - string key = idsToReuseKey + collectionName; - var queue = (Queue) httpContext.Items[key]; - if (queue == null) - { - httpContext.Items[key] = queue = new Queue(); - var previouslyUsedIds = httpContext.Request[collectionName + ".index"]; - if (!string.IsNullOrEmpty(previouslyUsedIds)) - foreach (string previouslyUsedId in previouslyUsedIds.Split(',')) - queue.Enqueue(previouslyUsedId); - } - return queue; - } - - #region Nested type: HtmlFieldPrefixScope - - private class HtmlFieldPrefixScope : IDisposable - { - private readonly string previousHtmlFieldPrefix; - private readonly TemplateInfo templateInfo; - - public HtmlFieldPrefixScope(TemplateInfo templateInfo, string htmlFieldPrefix) - { - this.templateInfo = templateInfo; - - previousHtmlFieldPrefix = templateInfo.HtmlFieldPrefix; - templateInfo.HtmlFieldPrefix = htmlFieldPrefix; - } - - #region IDisposable Members - - public void Dispose() - { - templateInfo.HtmlFieldPrefix = previousHtmlFieldPrefix; - } - - #endregion - } - - #endregion - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/IsCurrentActionHelper.cs b/NzbDrone.Web/Helpers/IsCurrentActionHelper.cs deleted file mode 100644 index d68f8c19d..000000000 --- a/NzbDrone.Web/Helpers/IsCurrentActionHelper.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System.Linq; -using System; -using System.Web.Mvc; -using System.Web.Mvc.Html; - -namespace NzbDrone.Web.Helpers -{ - public static class IsCurrentActionHelper - { - private static bool IsCurrentController(HtmlHelper helper, string controllerName) - { - var currentControllerName = (string) helper.ViewContext.RouteData.Values["controller"]; - - if (currentControllerName.Equals(controllerName, StringComparison.CurrentCultureIgnoreCase)) - return true; - - return false; - } - - private static bool IsCurrentAction(HtmlHelper helper, string actionName, string controllerName) - { - var currentControllerName = (string)helper.ViewContext.RouteData.Values["controller"]; - var currentActionName = (string)helper.ViewContext.RouteData.Values["action"]; - - if (currentControllerName.Equals(controllerName, StringComparison.CurrentCultureIgnoreCase) && - currentActionName.Equals(actionName, StringComparison.CurrentCultureIgnoreCase)) - return true; - - return false; - } - - public static string CurrentControllerLink(this HtmlHelper helper, string text, string actionName, string controllerName) - { - string result; - - if (IsCurrentController(helper, controllerName)) - { - result = "
  • "; - } - else - { - result = "
  • "; - } - - return result + helper.ActionLink(text, actionName, controllerName).ToHtmlString() + @"
  • "; - } - - public static string CurrentActionLink(this HtmlHelper helper, string text, string actionName, string controllerName) - { - string result; - - if (IsCurrentAction(helper, actionName, controllerName)) - { - result = "
  • "; - } - else - { - result = "
  • "; - } - - return result + helper.ActionLink(text, actionName, controllerName).ToHtmlString() + @"
  • "; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/LinkHelper.cs b/NzbDrone.Web/Helpers/LinkHelper.cs deleted file mode 100644 index 0fb6d3637..000000000 --- a/NzbDrone.Web/Helpers/LinkHelper.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using System.Web.Mvc.Ajax; -using System.Web.Mvc.Html; -using System.Web.Routing; - -namespace NzbDrone.Web.Helpers -{ - public static class LinkHelper - { - public static MvcHtmlString ImageActionLink(this AjaxHelper helper, string imageUrl, object imgAttributes, string actionName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes) - { - return ImageActionLink(helper, imageUrl, imgAttributes, actionName, null, routeValues, ajaxOptions, htmlAttributes); - } - - public static MvcHtmlString ImageActionLink(this AjaxHelper helper, string imageUrl, object imgAttributes, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes) - { - var builder = new TagBuilder("img"); - builder.MergeAttribute("src", imageUrl); - var imgAttributesDictionary = new RouteValueDictionary(imgAttributes); - builder.MergeAttributes(imgAttributesDictionary); - var link = helper.ActionLink("[replaceme]", actionName, controllerName, routeValues, ajaxOptions, htmlAttributes).ToHtmlString(); - return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString(TagRenderMode.SelfClosing))); - } - - public static MvcHtmlString ImageActionLink(this HtmlHelper helper, string imageUrl, object imgAttributes, string actionName, object routeValues, object htmlAttributes) - { - return ImageActionLink(helper, imageUrl, imgAttributes, actionName, null, routeValues, htmlAttributes); - } - - public static MvcHtmlString ImageActionLink(this HtmlHelper helper, string imageUrl, object imgAttributes, string actionName, string controllerName, object routeValues, object htmlAttributes) - { - var builder = new TagBuilder("img"); - builder.MergeAttribute("src", imageUrl); - var imgAttributesDictionary = new RouteValueDictionary(imgAttributes); - builder.MergeAttributes(imgAttributesDictionary); - var link = helper.ActionLink("[replaceme]", actionName, controllerName, routeValues, htmlAttributes).ToHtmlString(); - return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString(TagRenderMode.SelfClosing))); - } - - public static MvcHtmlString IconActionLink(this AjaxHelper helper, string icon, string text, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes) - { - var linkText = String.IsNullOrWhiteSpace(text) ? "" : " " + text; - - var builder = new TagBuilder("i"); - builder.MergeAttribute("class", icon); - var link = helper.ActionLink("[replaceme]" + linkText, actionName, controllerName, routeValues, ajaxOptions, htmlAttributes).ToHtmlString(); - return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString())); - } - - public static MvcHtmlString IconActionLink(this HtmlHelper helper, string icon, string text, string actionName, string controllerName, object routeValues, object htmlAttributes) - { - var linkText = String.IsNullOrWhiteSpace(text) ? "" : " " + text; - - var builder = new TagBuilder("i"); - builder.MergeAttribute("class", icon); - var link = helper.ActionLink("[replaceme]" + linkText, actionName, controllerName, routeValues, htmlAttributes).ToHtmlString(); - return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString())); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/ProfilerHelper.cs b/NzbDrone.Web/Helpers/ProfilerHelper.cs deleted file mode 100644 index c93e71275..000000000 --- a/NzbDrone.Web/Helpers/ProfilerHelper.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using NzbDrone.Common; - -namespace NzbDrone.Web.Helpers -{ - public static class ProfilerHelper - { - public static bool Enabled() - { - var environmentProvider = new EnvironmentProvider(); - var configFileProvider = new ConfigFileProvider(environmentProvider); - - return configFileProvider.EnableProfiler; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/RenderActionHelper.cs b/NzbDrone.Web/Helpers/RenderActionHelper.cs deleted file mode 100644 index 8c226d244..000000000 --- a/NzbDrone.Web/Helpers/RenderActionHelper.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using System.Web.Mvc; -using System.Web.Mvc.Ajax; - -namespace NzbDrone.Web.Helpers -{ - public static class RenderActionHelper - { - public static MvcHtmlString RenderAction(this AjaxHelper helper, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions) - { - var urlHelper = new UrlHelper(helper.ViewContext.RequestContext); - - var url = urlHelper.Action(actionName, controllerName, routeValues); - - var tagBuilder = new TagBuilder("div"); - if (ajaxOptions != null) tagBuilder.MergeAttributes(ajaxOptions.ToUnobtrusiveHtmlAttributes()); - tagBuilder.MergeAttribute("data-ajax-action-link", "true"); - tagBuilder.MergeAttribute("data-href", url); - - return new MvcHtmlString(tagBuilder.ToString(TagRenderMode.Normal)); - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/Validation/RequiredIfAnyAttribute.cs b/NzbDrone.Web/Helpers/Validation/RequiredIfAnyAttribute.cs deleted file mode 100644 index e0ccf3ce6..000000000 --- a/NzbDrone.Web/Helpers/Validation/RequiredIfAnyAttribute.cs +++ /dev/null @@ -1,101 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; -using System.Linq; -using System.Web; -using System.Web.Mvc; - -namespace NzbDrone.Web.Helpers.Validation -{ - public class RequiredIfAnyAttribute : ValidationAttribute, IClientValidatable - { - private RequiredAttribute _innerAttribute = new RequiredAttribute(); - - public string[] DependentProperties { get; set; } - public object[] TargetValues { get; set; } - - public RequiredIfAnyAttribute(string[] dependentProperties, params object[] targetValues) - { - if (dependentProperties.Count() != targetValues.Count()) - throw new ArgumentException("Dependent properties count must equal values count"); - - this.DependentProperties = dependentProperties; - this.TargetValues = targetValues; - } - - protected override ValidationResult IsValid(object value, ValidationContext validationContext) - { - for (int i = 0; i < DependentProperties.Count(); i++) - { - // get a reference to the property this validation depends upon - var containerType = validationContext.ObjectInstance.GetType(); - var field = containerType.GetProperty(this.DependentProperties[i]); - - if (field != null) - { - // get the value of the dependent property - var dependentvalue = field.GetValue(validationContext.ObjectInstance, null); - - // compare the value against the target value - if ((dependentvalue == null && this.TargetValues[i] == null) || - (dependentvalue != null && dependentvalue.Equals(this.TargetValues[i]))) - { - // match => means we should try validating this field - if (!_innerAttribute.IsValid(value)) - // validation failed - return an error - return new ValidationResult(this.ErrorMessage, new[] { validationContext.MemberName }); - } - } - } - - return ValidationResult.Success; - } - - public IEnumerable GetClientValidationRules(ModelMetadata metadata, ControllerContext context) - { - var rule = new ModelClientValidationRule() - { - ErrorMessage = FormatErrorMessage(metadata.GetDisplayName()), - ValidationType = "requiredifany", - }; - - var properties = new List(); - var values = new List(); - - for (int i = 0; i < DependentProperties.Count(); i++) - { - string depProp = BuildDependentPropertyId(metadata, context as ViewContext, DependentProperties[i]); - - // find the value on the control we depend on; - // if it's a bool, format it javascript style - // (the default is True or False!) - string targetValue = (TargetValues[i] ?? "").ToString(); - if (TargetValues[i].GetType() == typeof(bool)) - targetValue = targetValue.ToLower(); - - properties.Add(depProp); - values.Add(targetValue); - } - - rule.ValidationParameters.Add("dependentproperties", String.Join("|", properties)); - rule.ValidationParameters.Add("targetvalues", String.Join("|", values)); - - yield return rule; - } - - private string BuildDependentPropertyId(ModelMetadata metadata, ViewContext viewContext, string dependentProperty) - { - // build the ID of the property - string depProp = viewContext.ViewData.TemplateInfo.GetFullHtmlFieldId(dependentProperty); - // unfortunately this will have the name of the current field appended to the beginning, - // because the TemplateInfo's context has had this fieldname appended to it. Instead, we - // want to get the context as though it was one level higher (i.e. outside the current property, - // which is the containing object (our Person), and hence the same level as the dependent property. - var thisField = metadata.PropertyName + "_"; - if (depProp.StartsWith(thisField)) - // strip it off again - depProp = depProp.Substring(thisField.Length); - return depProp; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/Validation/RequiredIfAttribute.cs b/NzbDrone.Web/Helpers/Validation/RequiredIfAttribute.cs deleted file mode 100644 index ed147caf6..000000000 --- a/NzbDrone.Web/Helpers/Validation/RequiredIfAttribute.cs +++ /dev/null @@ -1,86 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; -using System.Linq; -using System.Web; -using System.Web.Mvc; - -namespace NzbDrone.Web.Helpers.Validation -{ - public class RequiredIfAttribute : ValidationAttribute, IClientValidatable - { - private RequiredAttribute _innerAttribute = new RequiredAttribute(); - - public string DependentProperty { get; set; } - public object TargetValue { get; set; } - - public RequiredIfAttribute(string dependentProperty, object targetValue) - { - this.DependentProperty = dependentProperty; - this.TargetValue = targetValue; - } - - protected override ValidationResult IsValid(object value, ValidationContext validationContext) - { - // get a reference to the property this validation depends upon - var containerType = validationContext.ObjectInstance.GetType(); - var field = containerType.GetProperty(this.DependentProperty); - - if (field != null) - { - // get the value of the dependent property - var dependentvalue = field.GetValue(validationContext.ObjectInstance, null); - - // compare the value against the target value - if ((dependentvalue == null && this.TargetValue == null) || - (dependentvalue != null && dependentvalue.Equals(this.TargetValue))) - { - // match => means we should try validating this field - if (!_innerAttribute.IsValid(value)) - // validation failed - return an error - return new ValidationResult(this.ErrorMessage, new[] { validationContext.MemberName }); - } - } - - return ValidationResult.Success; - } - - public IEnumerable GetClientValidationRules(ModelMetadata metadata, ControllerContext context) - { - var rule = new ModelClientValidationRule() - { - ErrorMessage = FormatErrorMessage(metadata.GetDisplayName()), - ValidationType = "requiredif", - }; - - string depProp = BuildDependentPropertyId(metadata, context as ViewContext); - - // find the value on the control we depend on; - // if it's a bool, format it javascript style - // (the default is True or False!) - string targetValue = (this.TargetValue ?? "").ToString(); - if (this.TargetValue.GetType() == typeof(bool)) - targetValue = targetValue.ToLower(); - - rule.ValidationParameters.Add("dependentproperty", depProp); - rule.ValidationParameters.Add("targetvalue", targetValue); - - yield return rule; - } - - private string BuildDependentPropertyId(ModelMetadata metadata, ViewContext viewContext) - { - // build the ID of the property - string depProp = viewContext.ViewData.TemplateInfo.GetFullHtmlFieldId(this.DependentProperty); - // unfortunately this will have the name of the current field appended to the beginning, - // because the TemplateInfo's context has had this fieldname appended to it. Instead, we - // want to get the context as though it was one level higher (i.e. outside the current property, - // which is the containing object (our Person), and hence the same level as the dependent property. - var thisField = metadata.PropertyName + "_"; - if (depProp.StartsWith(thisField)) - // strip it off again - depProp = depProp.Substring(thisField.Length); - return depProp; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Helpers/ValueExtension.cs b/NzbDrone.Web/Helpers/ValueExtension.cs deleted file mode 100644 index 5c3f6ec6f..000000000 --- a/NzbDrone.Web/Helpers/ValueExtension.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq.Expressions; -using System.Web; -using System.Web.Mvc; - -namespace NzbDrone.Web.Helpers -{ - public static class ValueExtension - { - public static object ValueFor(this HtmlHelper html, Expression> expression) - { - var memberEx = expression.Body as MemberExpression; - - if (memberEx == null) - throw new ArgumentException("Body not a member-expression."); - - string name = memberEx.Member.Name; - var model = html.ViewData.Model; - var value = model.GetType().GetProperty(name).GetValue(model, null); - - return value; - } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/DownloadClientSettingsModel.cs b/NzbDrone.Web/Models/DownloadClientSettingsModel.cs deleted file mode 100644 index 461bec34c..000000000 --- a/NzbDrone.Web/Models/DownloadClientSettingsModel.cs +++ /dev/null @@ -1,135 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Web.Mvc; -using NzbDrone.Core.Model; -using NzbDrone.Core.Model.Nzbget; -using NzbDrone.Core.Model.Sabnzbd; -using NzbDrone.Web.Helpers.Validation; - -namespace NzbDrone.Web.Models -{ - public class DownloadClientSettingsModel - { - public SelectList SabPrioritySelectList = - new SelectList(new[] {"Default", "Paused", "Low", "Normal", "High", "Force"}); - - public SelectList NzbgetPrioritySelectList { get; set; } - - [DataType(DataType.Text)] - [DisplayName("SABnzbd Host")] - [Description("Hostname or IP Address running SABnzbd")] - [RequiredIf("DownloadClient", (int)DownloadClientType.Sabnzbd, ErrorMessage = "Required when Download Client is SABnzbd")] - public String SabHost { get; set; } - - [DataType(DataType.Text)] - [DisplayName("SABnzbd Port")] - [Description("Port for SABnzbd web interface")] - [RequiredIf("DownloadClient", (int)DownloadClientType.Sabnzbd, ErrorMessage = "Required when Download Client is SABnzbd")] - public int SabPort { get; set; } - - [DataType(DataType.Text)] - [DisplayName("SABnzbd API Key")] - [Description("API Key for SABNzbd, Found in Config: General")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public String SabApiKey { get; set; } - - [DataType(DataType.Text)] - [DisplayName("SABnzbd Username")] - [Description("Username for SABnzbd WebUI (Not Required when using APIKey)")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public String SabUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("SABnzbd Password")] - [Description("Password for SABnzbd WebUI (Not required when using APIKey)")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public String SabPassword { get; set; } - - [DataType(DataType.Text)] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [DisplayName("SABnzbd TV Category")] - [Description("Category to use when sending NZBs to SABnzbd")] - public String SabTvCategory { get; set; } - - [Required(ErrorMessage = "Please select a valid priority")] - [DisplayName("SABnzbd Backlog Priority")] - [Description("Priority to use when sending episodes older than 7 days to SABnzbd")] - public SabPriorityType SabBacklogTvPriority { get; set; } - - [Required(ErrorMessage = "Please select a valid priority")] - [DisplayName("SABnzbd Recent Priority")] - [Description("Priority to use when sending episodes newer than 7 days to SABnzbd")] - public SabPriorityType SabRecentTvPriority { get; set; } - - [Required(ErrorMessage = "Required so NzbDrone can sort downloads")] - [DisplayName("Download Client TV Directory")] - [Description("The directory where your download client downloads TV shows to")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string DownloadClientDropDirectory { get; set; } - - [DisplayName("Blackhole Directory")] - [Description("The directory where your download client will pickup NZB files")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("DownloadClient", (int)DownloadClientType.Blackhole, ErrorMessage = "Required when Download Client is Blackhole")] - public string BlackholeDirectory { get; set; } - - [DisplayName("Download Client")] - [Description("What method do you download NZBs with?")] - public int DownloadClient { get; set; } - - [DisplayName("Pneumatic Nzb Directory")] - [Description("Directory to save NZBs for Pneumatic, must be able from XBMC")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("DownloadClient", (int)DownloadClientType.Pneumatic, ErrorMessage = "Required when Download Client is Blackhole")] - public string PneumaticDirectory { get; set; } - - [DisplayName("Use Scene Name")] - [Description("Use Scene name when adding NZB to queue?")] - public Boolean UseSceneName { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Nzbget Host")] - [Description("Hostname or IP Address running Nzbget")] - [RequiredIf("DownloadClient", (int)DownloadClientType.Nzbget, ErrorMessage = "Required when Download Client is Nzbget")] - public String NzbgetHost { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Nzbget Port")] - [Description("Port for Nzbget web interface")] - [RequiredIf("DownloadClient", (int)DownloadClientType.Nzbget, ErrorMessage = "Required when Download Client is Nzbget")] - public int NzbgetPort { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Nzbget Username")] - [Description("Username for Nzbget")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public String NzbgetUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Nzbget Password")] - [Description("Password for Nzbget")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public String NzbgetPassword { get; set; } - - [DataType(DataType.Text)] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [DisplayName("Nzbget TV Category")] - [Description("Category to use when sending NZBs to Nzbget")] - public String NzbgetTvCategory { get; set; } - - [Required(ErrorMessage = "Please select a valid priority")] - [DisplayName("Nzbget Backlog Priority")] - [Description("Priority to use when sending episodes older than 7 days to Nzbget")] - public Int32 NzbgetBacklogTvPriority { get; set; } - - [Required(ErrorMessage = "Please select a valid priority")] - [DisplayName("Nzbget Recent Priority")] - [Description("Priority to use when sending episodes newer than 7 days to Nzbget")] - public Int32 NzbgetRecentTvPriority { get; set; } - - public SelectList SabTvCategorySelectList { get; set; } - public SelectList DownloadClientSelectList { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/EpisodeModel.cs b/NzbDrone.Web/Models/EpisodeModel.cs deleted file mode 100644 index 3857a9c3c..000000000 --- a/NzbDrone.Web/Models/EpisodeModel.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using NzbDrone.Core.Model; -using NzbDrone.Core.Repository.Quality; - -namespace NzbDrone.Web.Models -{ - public class EpisodeModel - { - public string Title { get; set; } - public int EpisodeId { get; set; } - public int EpisodeFileId { get; set; } - public int EpisodeNumber { get; set; } - public int SeasonNumber { get; set; } - public string Overview { get; set; } - public string Path { get; set; } - public String Status { get; set; } - public string AirDate { get; set; } - public String Quality { get; set; } - public int QualityId { get; set; } - public bool Ignored { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/EpisodeNamingModel.cs b/NzbDrone.Web/Models/EpisodeNamingModel.cs deleted file mode 100644 index 59f58ec88..000000000 --- a/NzbDrone.Web/Models/EpisodeNamingModel.cs +++ /dev/null @@ -1,62 +0,0 @@ -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Web.Mvc; - -namespace NzbDrone.Web.Models -{ - public class EpisodeNamingModel - { - [DisplayName("Series Name")] - [Description("Should filenames contain the series name when renamed?")] - public bool SeriesName { get; set; } - - [DisplayName("Episode Name")] - [Description("Should filenames contain the episode name when renamed?")] - public bool EpisodeName { get; set; } - - [DisplayName("Replace Spaces")] - [Description("Do you want to replace spaces in the filename with periods?")] - public bool ReplaceSpaces { get; set; } - - [DisplayName("Append Quality")] - [Description("Should filenames have the quality appended to the end?")] - public bool AppendQuality { get; set; } - - [DisplayName("Use Season Folders")] - [Description("Should files be stored in season folders by default? (Applied only when a series is added)")] - public bool SeasonFolders { get; set; } - - [DisplayName("Season Folder Format")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [Description("How should season folders be named? (Use %0s to pad to two digits)")] - public string SeasonFolderFormat { get; set; } - - [DisplayName("Separator Style")] - [Description("How should NzbDrone separate sections of the filename?")] - public int SeparatorStyle { get; set; } - - [DisplayName("Numbering Style")] - [Description("What numbering style do you want?")] - public int NumberStyle { get; set; } - - [DisplayName("Multi-Episode Style")] - [Description("How will multi-episode files be named?")] - public int MultiEpisodeStyle { get; set; } - - [DisplayName("Use Scene Name")] - [Description("Use the scene name, ignoring all other naming settings?")] - public bool SceneName { get; set; } - - [DisplayName("XBMC")] - [Description("Enable creating metadata for XBMC")] - public bool MetadataXbmcEnabled { get; set; } - - [DisplayName("Use Banners")] - [Description("Use banners instead of posters?")] - public bool MetadataUseBanners { get; set; } - - public SelectList SeparatorStyles { get; set; } - public SelectList NumberStyles { get; set; } - public SelectList MultiEpisodeStyles { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/ExistingSeriesModel.cs b/NzbDrone.Web/Models/ExistingSeriesModel.cs deleted file mode 100644 index dc7eddd5d..000000000 --- a/NzbDrone.Web/Models/ExistingSeriesModel.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web.Mvc; - -namespace NzbDrone.Web.Models -{ - public class ExistingSeriesModel - { - public SelectList Quality { get; set; } - - public List> ExistingSeries { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/FooterModel.cs b/NzbDrone.Web/Models/FooterModel.cs deleted file mode 100644 index 50213ed85..000000000 --- a/NzbDrone.Web/Models/FooterModel.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System; - -namespace NzbDrone.Web.Models -{ - public class FooterModel - { - public Version Version { get; set; } - public DateTime BuildTime { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/HistoryModel.cs b/NzbDrone.Web/Models/HistoryModel.cs deleted file mode 100644 index dfa46a463..000000000 --- a/NzbDrone.Web/Models/HistoryModel.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System; -using NzbDrone.Core.Model; - -namespace NzbDrone.Web.Models -{ - public class HistoryModel - { - public int HistoryId { get; set; } - public int SeriesId { get; set; } - public string SeriesTitle { get; set; } - public string SeriesTitleSorter { get; set; } - public string EpisodeNumbering { get; set; } - public string EpisodeTitle { get; set; } - public string EpisodeOverview { get; set; } - public string NzbTitle { get; set; } - public string Quality { get; set; } - public string Date { get; set; } - public string DateSorter { get; set; } - public bool IsProper { get; set; } - public string Indexer { get; set; } - public int EpisodeId { get; set; } - public string Details { get; set; } - public string NzbInfoUrl { get; set; } - public string ReleaseGroup { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/IndexerSettingsModel.cs b/NzbDrone.Web/Models/IndexerSettingsModel.cs deleted file mode 100644 index 2b0b06f60..000000000 --- a/NzbDrone.Web/Models/IndexerSettingsModel.cs +++ /dev/null @@ -1,101 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using NzbDrone.Core.Repository; -using NzbDrone.Web.Helpers.Validation; - -namespace NzbDrone.Web.Models -{ - public class IndexerSettingsModel - { - [DataType(DataType.Text)] - [DisplayName("User ID")] - [Description("User ID for NZBsRus")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("NzbsRUsEnabled", true, ErrorMessage = "User ID Required when NzbsRus is enabled")] - public String NzbsrusUId { get; set; } - - [DataType(DataType.Text)] - [DisplayName("API Key")] - [Description("API Key for NZBsRus")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("NzbsRUsEnabled", true, ErrorMessage = "API Key Required when NzbsRus is enabled")] - public String NzbsrusHash { get; set; } - - [DataType(DataType.Text)] - [DisplayName("UID")] - [Description("UserID for File Sharing Talk")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("FileSharingTalkEnabled", true, ErrorMessage = "UserID Required when File Sharing Talk is enabled")] - public String FileSharingTalkUid { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Secret")] - [Description("Password Secret for File Sharing Talk")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("FileSharingTalkEnabled", true, ErrorMessage = "Password Secret Required when File Sharing Talk is enabled")] - public String FileSharingTalkSecret { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Username")] - [Description("Username for omgwtfnzbs")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("OmgwtfnzbsEnabled", true, ErrorMessage = "Username is required when omgwtfnzbs is enabled")] - public String OmgwtfnzbsUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("API Key")] - [Description("API Key for omgwtfnzbs")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("OmgwtfnzbsEnabled", true, ErrorMessage = "API Key is required when omgwtfnzbs is enabled")] - public String OmgwtfnzbsApiKey { get; set; } - - [DisplayName("NZBsRUs")] - [Description("Enable downloading episodes from NZBsRus")] - public bool NzbsRUsEnabled { get; set; } - - [DisplayName("Newznab")] - [Description("Enable downloading episodes from Newznab Providers")] - public bool NewznabEnabled { get; set; } - - [DisplayName("Womble's Index")] - [Description("Enable downloading episodes from Womble's Index")] - public bool WomblesEnabled { get; set; } - - [DisplayName("File Sharing Talk")] - [Description("Enable downloading episodes from File Sharing Talk")] - public bool FileSharingTalkEnabled { get; set; } - - [DisplayName("NzbIndex")] - [Description("Enable downloading episodes from NzbIndex")] - public bool NzbIndexEnabled { get; set; } - - [DisplayName("NzbClub")] - [Description("Enable downloading episodes from NzbClub")] - public bool NzbClubEnabled { get; set; } - - [DisplayName("omgwtfnzbs")] - [Description("Enable downloading episodes from omgwtfnzbs")] - public bool OmgwtfnzbsEnabled { get; set; } - - [DisplayName("nzbx")] - [Description("Enable downloading episodes from nzbx")] - public bool NzbxEnabled { get; set; } - - [Required(ErrorMessage = "Please enter a valid number of days")] - [DataType(DataType.Text)] - [DisplayName("Retention")] - [Description("Usenet provider retention in days (0 = unlimited)")] - public int Retention { get; set; } - - [DisplayName("RSS Sync Interval")] - [Description("Check for new episodes every X minutes")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [Required(AllowEmptyStrings = false, ErrorMessage = "You must enter a valid time in minutes")] - [Range(15, 240, ErrorMessage = "Interval must be between 15 and 240 minutes")] - public int RssSyncInterval { get; set; } - - public List NewznabDefinitions { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/JobModel.cs b/NzbDrone.Web/Models/JobModel.cs deleted file mode 100644 index 2f1df5a59..000000000 --- a/NzbDrone.Web/Models/JobModel.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class JobModel - { - public Int32 Id { get; set; } - public Boolean Enable { get; set; } - public String TypeName { get; set; } - public String Name { get; set; } - public Int32 Interval { get; set; } - public String LastExecution { get; set; } - public Boolean Success { get; set; } - public string Actions { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/JobQueueItemModel.cs b/NzbDrone.Web/Models/JobQueueItemModel.cs deleted file mode 100644 index 590dcaf6d..000000000 --- a/NzbDrone.Web/Models/JobQueueItemModel.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class JobQueueItemModel - { - public string Name { get; set; } - public dynamic Options { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/JsonNotificationResult.cs b/NzbDrone.Web/Models/JsonNotificationResult.cs deleted file mode 100644 index df0cbb670..000000000 --- a/NzbDrone.Web/Models/JsonNotificationResult.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.Web.Mvc; - -namespace NzbDrone.Web.Models -{ - public class JsonNotificationResult - { - private JsonNotificationResult() - { - Text = string.Empty; - } - - public string Title { get; set; } - public string Text { get; set; } - public NotificationType NotificationType { get; set; } - - - public static JsonResult Info(string title, string text) - { - return GetJsonResult(NotificationType.Info, title, text); - } - - public static JsonResult Info(string title) - { - return GetJsonResult(NotificationType.Info, title, string.Empty); - } - - public static JsonResult Error(string title, string text) - { - return GetJsonResult(NotificationType.Error, title, text); - } - - public static JsonResult Oops(string text) - { - return GetJsonResult(NotificationType.Error, "Oops!", text); - } - - public static JsonResult Queued(string task) - { - return GetJsonResult(NotificationType.Info, "Added to queue", string.Format("{0} will start soon.", task.Trim())); - } - - - public static JsonResult GetJsonResult(NotificationType notificationType, string title, string text) - { - return new JsonResult - { - Data = new JsonNotificationResult { NotificationType = notificationType, Title = title, Text = text }, - ContentType = "application/json; charset=UTF-8", - ContentEncoding = System.Text.Encoding.UTF8, - JsonRequestBehavior = JsonRequestBehavior.AllowGet - }; - } - } - - public enum NotificationType - { - Info, - Error - } - -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/LogModel.cs b/NzbDrone.Web/Models/LogModel.cs deleted file mode 100644 index a265dacf6..000000000 --- a/NzbDrone.Web/Models/LogModel.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class LogModel - { - public string Message { get; set; } - public string Time { get; set; } - public string Source { get; set; } - public string Method { get; set; } - public string Exception { get; set; } - public string ExceptionType { get; set; } - public string Level { get; set; } - public string Details { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/MiscSettingsModel.cs b/NzbDrone.Web/Models/MiscSettingsModel.cs deleted file mode 100644 index e069ae4af..000000000 --- a/NzbDrone.Web/Models/MiscSettingsModel.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Web.Mvc; -using NzbDrone.Core.Model; - -namespace NzbDrone.Web.Models -{ - public class MiscSettingsModel - { - [DisplayName("Enable Backlog Searching")] - [Description("Should NzbDrone try to download missing episodes automatically?")] - public bool EnableBacklogSearching { get; set; } - - [DisplayName("Automatically Ignore Deleted Episodes")] - [Description("Deleted episodes are automatically ignored.")] - public bool AutoIgnorePreviouslyDownloadedEpisodes { get; set; } - - [DisplayName("Specified Release Groups")] - [Description("Comma separated list of release groups to download episodes (leave empty for all groups)")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string AllowedReleaseGroups { get; set; } - - [DisplayName("Ignore Articles")] - [Description("Ignore articles when sorting by series title?")] - public bool IgnoreArticlesWhenSortingSeries { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/MissingEpisodeModel.cs b/NzbDrone.Web/Models/MissingEpisodeModel.cs deleted file mode 100644 index 7db97a09c..000000000 --- a/NzbDrone.Web/Models/MissingEpisodeModel.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class MissingEpisodeModel - { - public int SeriesId { get; set; } - public int EpisodeId { get; set; } - public string SeriesTitle { get; set; } - public string SeriesTitleSorter { get; set; } - public string EpisodeNumbering { get; set; } - public string EpisodeTitle { get; set; } - public string AirDateSorter { get; set; } - public string AirDate { get; set; } - public string Overview { get; set; } - public string Details { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/NotificationSettingsModel.cs b/NzbDrone.Web/Models/NotificationSettingsModel.cs deleted file mode 100644 index 6332e744a..000000000 --- a/NzbDrone.Web/Models/NotificationSettingsModel.cs +++ /dev/null @@ -1,224 +0,0 @@ -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Web.Mvc; -using NzbDrone.Core.Model; -using NzbDrone.Web.Helpers.Validation; - -namespace NzbDrone.Web.Models -{ - public class NotificationSettingsModel - { - //XBMC - [DisplayName("Enabled")] - [Description("Enable notifications for XBMC?")] - public bool XbmcEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool XbmcNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool XbmcNotifyOnDownload { get; set; } - - [DisplayName("Update on Download and Rename")] - [Description("Update XBMC library after episode is downloaded or renamed?")] - public bool XbmcUpdateLibrary { get; set; } - - [DisplayName("Clean on Download/Rename")] - [Description("Clean XBMC library after an episode is downloaded or renamed?")] - public bool XbmcCleanLibrary { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Hosts")] - [Description("XBMC hosts with port, comma separated")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("XbmcEnabled", true, ErrorMessage = "Required when XBMC Notifications are enabled")] - public string XbmcHosts { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Username")] - [Description("XBMC webserver username")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string XbmcUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Password")] - [Description("XBMC webserver password")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string XbmcPassword { get; set; } - - [DisplayName("Always Update")] - [Description("Update Library even when a video is playing?")] - public bool XbmcUpdateWhenPlaying { get; set; } - - //SMTP - [DisplayName("Enabled")] - [Description("Enable Email notifications?")] - public bool SmtpEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool SmtpNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool SmtpNotifyOnDownload { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Server")] - [Description("SMTP Server Hostname")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("SmtpEnabled", true, ErrorMessage = "Required when SMTP Notifications are enabled")] - public string SmtpServer{ get; set; } - - [DataType(DataType.Text)] - [DisplayName("Port")] - [Description("SMTP Server Port")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("SmtpEnabled", true, ErrorMessage = "Required when SMTP Notifications are enabled")] - public int SmtpPort { get; set; } - - [DisplayName("SSL")] - [Description("Does the SMTP Server use SSL?")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public bool SmtpUseSsl { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Username")] - [Description("SMTP Server authentication username")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string SmtpUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Password")] - [Description("SMTP Server authentication password")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string SmtpPassword { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Send From Address")] - [Description("Sender Email address")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("SmtpEnabled", true, ErrorMessage = "Required when SMTP Notifications are enabled")] - public string SmtpFromAddress { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Send To Addresses")] - [Description("Comma separated list of addresses to email")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("SmtpEnabled", true, ErrorMessage = "Required when SMTP Notifications are enabled")] - public string SmtpToAddresses { get; set; } - - //Twitter - [DisplayName("Enabled")] - [Description("Enable notifications for Twitter?")] - public bool TwitterEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool TwitterNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool TwitterNotifyOnDownload { get; set; } - - //Growl - [DisplayName("Enabled")] - [Description("Enable notifications for Growl?")] - public bool GrowlEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool GrowlNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool GrowlNotifyOnDownload { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Host running Growl")] - [Description("Host or IP Address:Port")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("GrowlEnabled", true, ErrorMessage = "Required when Growl Notifications are enabled")] - public string GrowlHost { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Growl host Password")] - [Description("Password is required if Growl is running on another system")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string GrowlPassword { get; set; } - - - //Prowl - [DisplayName("Enabled")] - [Description("Enable notifications for Prowl?")] - public bool ProwlEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool ProwlNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool ProwlNotifyOnDownload { get; set; } - - [DataType(DataType.Text)] - [DisplayName("API Keys")] - [Description("Comma-Separated list of API Keys")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("ProwlEnabled", true, ErrorMessage = "Required when Prowl Notifications are enabled")] - public string ProwlApiKeys { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Priority")] - [Description("Priority to send alerts to Prowl with")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public int ProwlPriority { get; set; } - - public SelectList ProwlPrioritySelectList { get; set; } - - //Plex - [DisplayName("Enabled")] - [Description("Enable notifications for Plex?")] - public bool PlexEnabled { get; set; } - - [DisplayName("Notify on Grab")] - [Description("Send notification when episode is sent to SABnzbd?")] - public bool PlexNotifyOnGrab { get; set; } - - [DisplayName("Notify on Download")] - [Description("Send notification when episode is downloaded?")] - public bool PlexNotifyOnDownload { get; set; } - - [DisplayName("Update on Download and Rename")] - [Description("Update Plex library after episode is downloaded or renamed?")] - public bool PlexUpdateLibrary { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Server Host")] - [Description("Plex Server host with port")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - [RequiredIf("PlexUpdateLibrary", true, ErrorMessage = "Required when Plex Library Update is Enabled")] - public string PlexServerHost { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Client Hosts")] - [Description("Plex client hosts with port, comma separated for multiple clients")] - [RequiredIfAny(new string[]{ "PlexNotifyOnGrab", "PlexNotifyOnDownload" }, new object[]{ true, true }, ErrorMessage = "Required when Plex Notifications are enabled")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string PlexClientHosts { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Username")] - [Description("Plex client webserver username")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string PlexUsername { get; set; } - - [DataType(DataType.Text)] - [DisplayName("Password")] - [Description("Plex client webserver password")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string PlexPassword { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/PendingProcessingModel.cs b/NzbDrone.Web/Models/PendingProcessingModel.cs deleted file mode 100644 index ab086852a..000000000 --- a/NzbDrone.Web/Models/PendingProcessingModel.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class PendingProcessingModel - { - public string Name { get; set; } - public string Files { get; set; } - public string Created { get; set; } - public string Path { get; set; } - public string Actions { get; set; } - public string Details { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/PostUpgradeModel.cs b/NzbDrone.Web/Models/PostUpgradeModel.cs deleted file mode 100644 index 3d17fb2a1..000000000 --- a/NzbDrone.Web/Models/PostUpgradeModel.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class PostUpgradeModel - { - public Version CurrentVersion { get; set; } - public Version ExpectedVersion { get; set; } - public bool Success { get; set; } - public KeyValuePair LogFile { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/ProwlPrioritySelectListModel.cs b/NzbDrone.Web/Models/ProwlPrioritySelectListModel.cs deleted file mode 100644 index d29a98006..000000000 --- a/NzbDrone.Web/Models/ProwlPrioritySelectListModel.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; - -namespace NzbDrone.Web.Models -{ - public class ProwlPrioritySelectListModel - { - public string Name { get; set; } - public int Value { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/QualityModel.cs b/NzbDrone.Web/Models/QualityModel.cs deleted file mode 100644 index 74691d9ee..000000000 --- a/NzbDrone.Web/Models/QualityModel.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Collections.Generic; -using System.ComponentModel; -using System.Web.Mvc; -using NzbDrone.Core.Repository.Quality; - -namespace NzbDrone.Web.Models -{ - public class QualityModel - { - public List Profiles { get; set; } - - [DisplayName("Default Quality Profile")] - [Description("The default quality to use when adding series to NzbDrone")] - public int DefaultQualityProfileId { get; set; } - - public SelectList QualityProfileSelectList { get; set; } - - public int SdtvMaxSize { get; set; } - public int DvdMaxSize { get; set; } - public int HdtvMaxSize { get; set; } - public int Webdl720pMaxSize { get; set; } - public int Webdl1080pMaxSize { get; set; } - public int Bluray720pMaxSize { get; set; } - public int Bluray1080pMaxSize { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/QualityProfileModel.cs b/NzbDrone.Web/Models/QualityProfileModel.cs deleted file mode 100644 index 6d27720e0..000000000 --- a/NzbDrone.Web/Models/QualityProfileModel.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System.Collections.Generic; -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Web.Mvc; -using NzbDrone.Core.Repository.Quality; -using PetaPoco; - -namespace NzbDrone.Web.Models -{ - public class QualityProfileModel - { - public int QualityProfileId { get; set; } - - [Required(ErrorMessage = "A Name is Required")] - [DisplayName("Name")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string Name { get; set; } - - [DisplayName("Cut-off")] - [Required(ErrorMessage = "Valid Cut-off is Required")] - public int Cutoff { get; set; } - - [DisplayName("Allowed Qualities")] - public List Allowed { get; set; } - - //Quality Booleans - [DisplayName("SDTV")] - public bool Sdtv { get; set; } - public int SdtvId { get; set; } - - [DisplayName("DVD")] - public bool Dvd { get; set; } - public int DvdId { get; set; } - - [DisplayName("HDTV")] - public bool Hdtv { get; set; } - public int HdtvId { get; set; } - - [DisplayName("WEBDL-720p")] - public bool Webdl720p { get; set; } - public int Webdl720pId { get; set; } - - [DisplayName("WEBDL-1080p")] - public bool Webdl1080p { get; set; } - public int Webdl1080pId { get; set; } - - [DisplayName("Bluray720p")] - public bool Bluray720p { get; set; } - public int Bluray720pId { get; set; } - - [DisplayName("Bluray1080p")] - public bool Bluray1080p { get; set; } - public int Bluray1080pId { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SearchDetailsModel.cs b/NzbDrone.Web/Models/SearchDetailsModel.cs deleted file mode 100644 index e68a7762b..000000000 --- a/NzbDrone.Web/Models/SearchDetailsModel.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using NzbDrone.Core.Repository.Search; - -namespace NzbDrone.Web.Models -{ - public class SearchDetailsModel - { - public int Id { get; set; } - public string DisplayName { get; set; } - public List SearchHistoryItems { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SearchHistoryModel.cs b/NzbDrone.Web/Models/SearchHistoryModel.cs deleted file mode 100644 index d7cd78857..000000000 --- a/NzbDrone.Web/Models/SearchHistoryModel.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; - -namespace NzbDrone.Web.Models -{ - public class SearchHistoryModel - { - public int Id { get; set; } - public string DisplayName { get; set; } - public string SearchTime { get; set; } - public int ReportCount { get; set; } - public bool Successful { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SearchItemModel.cs b/NzbDrone.Web/Models/SearchItemModel.cs deleted file mode 100644 index b48615e6c..000000000 --- a/NzbDrone.Web/Models/SearchItemModel.cs +++ /dev/null @@ -1,28 +0,0 @@ -using NzbDrone.Core.Model; -using NzbDrone.Core.Repository.Quality; - -namespace NzbDrone.Web.Models -{ - public class SearchItemModel - { - public SearchItemModel() - { - Details = ""; - } - - public int Id { get; set; } - public string ReportTitle { get; set; } - public string Indexer { get; set; } - public string NzbUrl { get; set; } - public string NzbInfoUrl { get; set; } - public bool Success { get; set; } - public string SearchError { get; set; } - public string Quality { get; set; } - public int QualityInt { get; set; } - public bool Proper { get; set; } - public int Age { get; set; } - public string Language { get; set; } - public string Size { get; set; } - public string Details { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SeasonModel.cs b/NzbDrone.Web/Models/SeasonModel.cs deleted file mode 100644 index 904fccb62..000000000 --- a/NzbDrone.Web/Models/SeasonModel.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Collections.Generic; - -namespace NzbDrone.Web.Models -{ - public class SeasonModel - { - public int SeriesId { get; set; } - public int SeasonNumber { get; set; } - public List Episodes { get; set; } - public bool AnyWanted { get; set; } - public string CommonStatus { get; set; } - public bool Ignored { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SeriesDetailsModel.cs b/NzbDrone.Web/Models/SeriesDetailsModel.cs deleted file mode 100644 index 9c3cb9054..000000000 --- a/NzbDrone.Web/Models/SeriesDetailsModel.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Web; -using System.Web.Mvc; -using NzbDrone.Core.Model; -using NzbDrone.Core.Repository; - -namespace NzbDrone.Web.Models -{ - public class SeriesDetailsModel - { - public int SeriesId { get; set; } - public string Title { get; set; } - public string AirsDayOfWeek { get; set; } - public string QualityProfileName { get; set; } - public string Overview { get; set; } - public string NextAiring { get; set; } - public string Path { get; set; } - public bool HasBanner { get; set; } - public List Seasons { get; set; } - public SelectList QualitySelectList { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SeriesModel.cs b/NzbDrone.Web/Models/SeriesModel.cs deleted file mode 100644 index a99617155..000000000 --- a/NzbDrone.Web/Models/SeriesModel.cs +++ /dev/null @@ -1,60 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Web; -using NzbDrone.Core.Model; -using NzbDrone.Core.Repository; - -namespace NzbDrone.Web.Models -{ - public class SeriesModel - { - public int SeriesId { get; set; } - - //View Only - public string Title { get; set; } - public string TitleSorter { get; set; } - public int SeasonsCount { get; set; } - public int EpisodeCount { get; set; } - public int EpisodeFileCount { get; set; } - public string Status { get; set; } - public string AirsDayOfWeek { get; set; } - public string QualityProfileName { get; set; } - public string Overview { get; set; } - public int Episodes { get; set; } - public bool HasBanner { get; set; } - public string NextAiring { get; set; } - public string NextAiringSorter { get; set; } - public string Details { get; set; } - public string Network { get; set; } - public string AirTime { get; set; } - - public IList Seasons { get; set; } - - //View & Edit - [DisplayName("Path")] - [Description("Where should NzbDrone store episodes for this series?")] - public string Path { get; set; } - - [DisplayName("Quality Profile")] - [Description("Which Quality Profile should NzbDrone use to download episodes?")] - public virtual int QualityProfileId { get; set; } - - //Editing Only - [DisplayName("Use Season Folder")] - [Description("Should downloaded episodes be stored in season folders?")] - public bool SeasonFolder { get; set; } - - [DisplayName("Monitored")] - [Description("Should NzbDrone download episodes for this series?")] - public bool Monitored { get; set; } - - [DisplayName("Backlog Setting")] - [Description("Should NzbDrone search for missing episodes every 30 days?")] - public int BacklogSetting { get; set; } - - [DisplayName("Custom Start Date")] - [Description("Should NzbDrone only download episodes after your preferred start date?")] - public string CustomStartDate { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SeriesSearchResultModel.cs b/NzbDrone.Web/Models/SeriesSearchResultModel.cs deleted file mode 100644 index ac2104e03..000000000 --- a/NzbDrone.Web/Models/SeriesSearchResultModel.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace NzbDrone.Web.Models -{ - public class SeriesSearchResultModel - { - public int Id { get; set; } - public string Title { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SystemSettingsModel.cs b/NzbDrone.Web/Models/SystemSettingsModel.cs deleted file mode 100644 index 5fd7ea533..000000000 --- a/NzbDrone.Web/Models/SystemSettingsModel.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.ComponentModel; -using System.ComponentModel.DataAnnotations; -using System.Linq; -using System.Web.Mvc; -using NzbDrone.Common.Model; - -namespace NzbDrone.Web.Models -{ - public class SystemSettingsModel - { - [DisplayName("Port")] - [Description("Port that NzbDrone runs on")] - [Range(1, 65535, ErrorMessage = "Port must be between 1 and 65535")] - [Required(ErrorMessage = "Port must be between 1 and 65535")] - public int Port { get; set; } - - [DisplayName("Launch Browser")] - [Description("Start web browser when NzbDrone starts?")] - public bool LaunchBrowser { get; set; } - - [DisplayName("Authentication")] - [Description("Secure the server with authentication?")] - public AuthenticationType AuthenticationType { get; set; } - - public SelectList AuthTypeSelectList { get; set; } - - [DisplayName("Recycle Bin")] - [Description("Path to NzbDrone's internal recycle bin (optional)")] - [DisplayFormat(ConvertEmptyStringToNull = false)] - public string RecycleBin { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/TvDbSearchResultModel.cs b/NzbDrone.Web/Models/TvDbSearchResultModel.cs deleted file mode 100644 index 03308bf1e..000000000 --- a/NzbDrone.Web/Models/TvDbSearchResultModel.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.Linq; - -namespace NzbDrone.Web.Models -{ - public class TvDbSearchResultModel - { - public int Id { get; set; } - public string Title { get; set; } - public string Banner { get; set; } - public string DisplayedTitle { get; set; } - public string Url { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/UpcomingEpisodeModel.cs b/NzbDrone.Web/Models/UpcomingEpisodeModel.cs deleted file mode 100644 index 13aeedc7c..000000000 --- a/NzbDrone.Web/Models/UpcomingEpisodeModel.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using NzbDrone.Core.Model; - -namespace NzbDrone.Web.Models -{ - public class UpcomingEpisodeModel - { - public int SeriesId { get; set; } - public int EpisodeId { get; set; } - public string SeriesTitle { get; set; } - public string EpisodeNumbering { get; set; } - public string Title { get; set; } - public string Overview { get; set; } - public DateTime AirDateTime { get; set; } - public string AirDate { get; set; } - public string AirTime { get; set; } - public string Status { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/UpcomingEpisodesModel.cs b/NzbDrone.Web/Models/UpcomingEpisodesModel.cs deleted file mode 100644 index c060d7ad2..000000000 --- a/NzbDrone.Web/Models/UpcomingEpisodesModel.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using NzbDrone.Core.Model; -using NzbDrone.Core.Repository; - -namespace NzbDrone.Web.Models -{ - public class UpcomingEpisodesModel - { - public List Yesterday { get; set; } - public List Today { get; set; } - public List Tomorrow { get; set; } - public List TwoDays { get; set; } - public List ThreeDays { get; set; } - public List FourDays { get; set; } - public List FiveDays { get; set; } - public List SixDays { get; set; } - public List Later { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/Models/UpdateModel.cs b/NzbDrone.Web/Models/UpdateModel.cs deleted file mode 100644 index cf2776d38..000000000 --- a/NzbDrone.Web/Models/UpdateModel.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Web; -using NzbDrone.Core.Model; - -namespace NzbDrone.Web.Models -{ - public class UpdateModel - { - public UpdatePackage UpdatePackage { get; set; } - public Dictionary LogFiles { get; set; } - public String LogFolder { get; set; } - } -} \ No newline at end of file diff --git a/NzbDrone.Web/NzbDrone.Web.csproj b/NzbDrone.Web/NzbDrone.Web.csproj deleted file mode 100644 index 2c46dda74..000000000 --- a/NzbDrone.Web/NzbDrone.Web.csproj +++ /dev/null @@ -1,661 +0,0 @@ - - - - - Debug - AnyCPU - - - 2.0 - {43BD3BBD-1531-4D8F-9C08-E1CD544AB2CD} - {E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} - Library - Properties - NzbDrone.Web - NzbDrone.Web - v4.0 - true - false - - true - - - - - 4.0 - ..\ - true - \_backboneApp\JsLibraries\|\Scripts\ - - - - - - - true - full - false - Bin\ - DEBUG;TRACE - prompt - 4 - x86 - false - true - false - true - BasicCorrectnessRules.ruleset - - - pdbonly - true - bin\ - TRACE - prompt - 4 - true - false - x86 - - - - False - ..\packages\Autofac.3.0.1\lib\net40\Autofac.dll - - - False - ..\packages\Autofac.3.0.1\lib\net40\Autofac.Configuration.dll - - - False - ..\packages\DataTables.Mvc.Core.0.1.0.85\lib\DataTables.Mvc.Core.dll - - - ..\packages\DynamicQuery.1.0\lib\35\Dynamic.dll - - - ..\packages\LowercaseRoutesMVC.1.0.3\lib\LowercaseRoutesMVC.dll - - - - - True - ..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll - - - False - ..\packages\MiniProfiler.2.0.2\lib\net40\MiniProfiler.dll - - - False - ..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll - - - ..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll - - - False - ..\packages\ServiceStack.Text.3.9.27\lib\net35\ServiceStack.Text.dll - - - False - ..\packages\SignalR.Server.0.5.3\lib\net40\SignalR.dll - - - False - ..\packages\SignalR.Hosting.AspNet.0.5.3\lib\net40\SignalR.Hosting.AspNet.dll - - - False - ..\packages\SignalR.Hosting.Common.0.5.3\lib\net40\SignalR.Hosting.Common.dll - - - - - 3.5 - - - - - - - True - - - - False - ..\Libraries\MVC3\System.Web.Mvc.dll - True - - - True - - - True - - - False - ..\Libraries\MVC3\System.Web.WebPages.dll - True - - - True - - - True - - - - False - ..\Libraries\TvdbLib.dll - - - False - ..\packages\WebActivator.1.5.3\lib\net40\WebActivator.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Properties\SharedAssemblyInfo.cs - - - - - - - - - - - - - - - - - - - Global.asax - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - Web.config - - - Web.config - - - - - - - - - - - - - - - - - - - - - - - - - - {dd874e64-c7ec-464d-925f-cf4a709edeef} - Autofac.Integration.Mvc - - - {fd286df8-2d3a-4394-8ad5-443fade55fb2} - NzbDrone.Api - - - {F2BE0FDF-6E47-4827-A420-DD4EF82407F8} - NzbDrone.Common - - - {FF5EE3B6-913B-47CE-9CEB-11C51B4E1205} - NzbDrone.Core - - - - - Designer - Always - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 10.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - true - bin\ - DEBUG;TRACE - full - x86 - prompt - BasicCorrectnessRules.ruleset - - - bin\ - TRACE - true - pdbonly - x86 - prompt - MinimumRecommendedRules.ruleset - - - Always - - - - - - - - - - - - - True - - - - - - - - - - if not exist "$(TargetDir)x86" md "$(TargetDir)x86" - -xcopy /s /y "$(SolutionDir)\SqlCe\*.*" "$(TargetDir)" - - - \ No newline at end of file diff --git a/NzbDrone.Web/NzbDrone.Web.ncrunchproject b/NzbDrone.Web/NzbDrone.Web.ncrunchproject deleted file mode 100644 index 73e1ebbb9..000000000 --- a/NzbDrone.Web/NzbDrone.Web.ncrunchproject +++ /dev/null @@ -1,21 +0,0 @@ - - false - false - false - true - false - false - false - false - true - true - false - true - true - 60000 - - - - AutoDetect - PostBuildEventDisabled - \ No newline at end of file diff --git a/NzbDrone.Web/Properties/AssemblyInfo.cs b/NzbDrone.Web/Properties/AssemblyInfo.cs deleted file mode 100644 index 9f3959149..000000000 --- a/NzbDrone.Web/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -[assembly: AssemblyTitle("NzbDrone.Web")] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("1ec2c814-7c1e-470d-bbae-59b129b720fd")] - -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: - -[assembly: AssemblyVersion("1.0.0.*")] -[assembly: AssemblyFileVersion("1.0.0.*")] - -[assembly: InternalsVisibleTo("NzbDrone.Core")] \ No newline at end of file diff --git a/NzbDrone.Web/Scripts/DataTables-1.9.4/docs/media/js/doc.js b/NzbDrone.Web/Scripts/DataTables-1.9.4/docs/media/js/doc.js deleted file mode 100644 index 932d7cfb8..000000000 --- a/NzbDrone.Web/Scripts/DataTables-1.9.4/docs/media/js/doc.js +++ /dev/null @@ -1,121 +0,0 @@ - -(function() { - -var showingNav = true; - -$(document).ready( function () { - var jqNav = $('div.fw_nav'); - jqNav.css('right', ($(window).width() - $('div.fw_container').width()) /2); - - var n = $('div.nav_blocker')[0]; - n.style.height = $(jqNav).outerHeight()+"px"; - n.style.width = ($(jqNav).outerWidth()+20)+"px"; - - SyntaxHighlighter.highlight(); - - $('#private_toggle').click( function () { - if ( $('input[name=show_private]').val() == 0 ) { - $('input[name=show_private]').val( 1 ); - $('#private_label').html('Showing'); - $('.private').css('display', 'block'); - } else { - $('input[name=show_private]').val( 0 ); - $('#private_label').html('Hiding'); - $('.private').css('display', 'none'); - } - fnWriteCookie(); - return false; - } ); - - $('#extended_toggle').click( function () { - if ( $('input[name=show_extended]').val() == 0 ) { - $('input[name=show_extended]').val( 1 ); - $('#extended_label').html('Showing'); - $('.augmented').css('display', 'block'); - } else { - $('input[name=show_extended]').val( 0 ); - $('#extended_label').html('Hiding'); - $('.augmented').css('display', 'none'); - } - fnWriteCookie(); - return false; - } ); - - var savedHeight = $(jqNav).height(); - $('div.fw_nav h2').click( function () { - if ( showingNav ) { - $('div.fw_nav').animate( { - "height": 10, - "opacity": 0.3 - } ); - showingNav = false; - } else { - $('div.fw_nav').animate( { - "height": savedHeight, - "opacity": 1 - } ); - showingNav = true; - } - fnWriteCookie(); - } ); - - var cookie = fnReadCookie( 'SpryMedia_JSDoc' ); - if ( cookie != null ) { - var a = cookie.split('-'); - if ( a[0] == 1 ) { - $('#private_toggle').click(); - } - if ( a[1] == 0 ) { - $('#extended_toggle').click(); - } - if ( a[2] == 'false' ) { - $('div.fw_nav').css('height', 10).css('opacity', 0.3); - showingNav = false; - } - } -} ); - - -function fnWriteCookie() -{ - var sVal = - $('input[name=show_private]').val()+'-'+ - $('input[name=show_extended]').val()+'-'+ - showingNav; - - fnCreateCookie( 'SpryMedia_JSDoc', sVal ); -} - - -function fnCreateCookie( sName, sValue ) -{ - var iDays = 365; - var date = new Date(); - date.setTime( date.getTime()+(iDays*24*60*60*1000) ); - var sExpires = "; expires="+date.toGMTString(); - - document.cookie = sName+"="+sValue+sExpires+"; path=/"; -} - - -function fnReadCookie( sName ) -{ - var sNameEQ = sName + "="; - var sCookieContents = document.cookie.split(';'); - - for( var i=0 ; i)[^>]*$|#([\w\-]+)$)/, - - // Check if a string has a non-whitespace character in it - rnotwhite = /\S/, - - // Used for trimming whitespace - trimLeft = /^\s+/, - trimRight = /\s+$/, - - // Check for digits - rdigit = /\d/, - - // Match a standalone tag - rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, - - // JSON RegExp - rvalidchars = /^[\],:{}\s]*$/, - rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, - rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, - rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g, - - // Useragent RegExp - rwebkit = /(webkit)[ \/]([\w.]+)/, - ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/, - rmsie = /(msie) ([\w.]+)/, - rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/, - - // Keep a UserAgent string for use with jQuery.browser - userAgent = navigator.userAgent, - - // For matching the engine and version of the browser - browserMatch, - - // Has the ready events already been bound? - readyBound = false, - - // The deferred used on DOM ready - readyList, - - // Promise methods - promiseMethods = "then done fail isResolved isRejected promise".split( " " ), - - // The ready event handler - DOMContentLoaded, - - // Save a reference to some core methods - toString = Object.prototype.toString, - hasOwn = Object.prototype.hasOwnProperty, - push = Array.prototype.push, - slice = Array.prototype.slice, - trim = String.prototype.trim, - indexOf = Array.prototype.indexOf, - - // [[Class]] -> type pairs - class2type = {}; - -jQuery.fn = jQuery.prototype = { - constructor: jQuery, - init: function( selector, context, rootjQuery ) { - var match, elem, ret, doc; - - // Handle $(""), $(null), or $(undefined) - if ( !selector ) { - return this; - } - - // Handle $(DOMElement) - if ( selector.nodeType ) { - this.context = this[0] = selector; - this.length = 1; - return this; - } - - // The body element only exists once, optimize finding it - if ( selector === "body" && !context && document.body ) { - this.context = document; - this[0] = document.body; - this.selector = "body"; - this.length = 1; - return this; - } - - // Handle HTML strings - if ( typeof selector === "string" ) { - // Are we dealing with HTML string or an ID? - match = quickExpr.exec( selector ); - - // Verify a match, and that no context was specified for #id - if ( match && (match[1] || !context) ) { - - // HANDLE: $(html) -> $(array) - if ( match[1] ) { - context = context instanceof jQuery ? context[0] : context; - doc = (context ? context.ownerDocument || context : document); - - // If a single string is passed in and it's a single tag - // just do a createElement and skip the rest - ret = rsingleTag.exec( selector ); - - if ( ret ) { - if ( jQuery.isPlainObject( context ) ) { - selector = [ document.createElement( ret[1] ) ]; - jQuery.fn.attr.call( selector, context, true ); - - } else { - selector = [ doc.createElement( ret[1] ) ]; - } - - } else { - ret = jQuery.buildFragment( [ match[1] ], [ doc ] ); - selector = (ret.cacheable ? jQuery.clone(ret.fragment) : ret.fragment).childNodes; - } - - return jQuery.merge( this, selector ); - - // HANDLE: $("#id") - } else { - elem = document.getElementById( match[2] ); - - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - if ( elem && elem.parentNode ) { - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id !== match[2] ) { - return rootjQuery.find( selector ); - } - - // Otherwise, we inject the element directly into the jQuery object - this.length = 1; - this[0] = elem; - } - - this.context = document; - this.selector = selector; - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return (context || rootjQuery).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) { - return rootjQuery.ready( selector ); - } - - if (selector.selector !== undefined) { - this.selector = selector.selector; - this.context = selector.context; - } - - return jQuery.makeArray( selector, this ); - }, - - // Start with an empty selector - selector: "", - - // The current version of jQuery being used - jquery: "1.5.1", - - // The default length of a jQuery object is 0 - length: 0, - - // The number of elements contained in the matched element set - size: function() { - return this.length; - }, - - toArray: function() { - return slice.call( this, 0 ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num == null ? - - // Return a 'clean' array - this.toArray() : - - // Return just the object - ( num < 0 ? this[ this.length + num ] : this[ num ] ); - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems, name, selector ) { - // Build a new jQuery matched element set - var ret = this.constructor(); - - if ( jQuery.isArray( elems ) ) { - push.apply( ret, elems ); - - } else { - jQuery.merge( ret, elems ); - } - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - - ret.context = this.context; - - if ( name === "find" ) { - ret.selector = this.selector + (this.selector ? " " : "") + selector; - } else if ( name ) { - ret.selector = this.selector + "." + name + "(" + selector + ")"; - } - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - // (You can seed the arguments with an array of args, but this is - // only used internally.) - each: function( callback, args ) { - return jQuery.each( this, callback, args ); - }, - - ready: function( fn ) { - // Attach the listeners - jQuery.bindReady(); - - // Add the callback - readyList.done( fn ); - - return this; - }, - - eq: function( i ) { - return i === -1 ? - this.slice( i ) : - this.slice( i, +i + 1 ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ), - "slice", slice.call(arguments).join(",") ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map(this, function( elem, i ) { - return callback.call( elem, i, elem ); - })); - }, - - end: function() { - return this.prevObject || this.constructor(null); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: [].sort, - splice: [].splice -}; - -// Give the init function the jQuery prototype for later instantiation -jQuery.fn.init.prototype = jQuery.fn; - -jQuery.extend = jQuery.fn.extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[0] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - target = arguments[1] || {}; - // skip the boolean and the target - i = 2; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction(target) ) { - target = {}; - } - - // extend jQuery itself if only one argument is passed - if ( length === i ) { - target = this; - --i; - } - - for ( ; i < length; i++ ) { - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) { - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { - if ( copyIsArray ) { - copyIsArray = false; - clone = src && jQuery.isArray(src) ? src : []; - - } else { - clone = src && jQuery.isPlainObject(src) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend({ - noConflict: function( deep ) { - window.$ = _$; - - if ( deep ) { - 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, - - // Handle when the DOM is ready - ready: function( wait ) { - // A third-party is pushing the ready event forwards - if ( wait === true ) { - jQuery.readyWait--; - } - - // Make sure that the DOM is not already loaded - if ( !jQuery.readyWait || (wait !== true && !jQuery.isReady) ) { - // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). - if ( !document.body ) { - return setTimeout( jQuery.ready, 1 ); - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - - // Trigger any bound ready events - if ( jQuery.fn.trigger ) { - jQuery( document ).trigger( "ready" ).unbind( "ready" ); - } - } - }, - - bindReady: function() { - if ( readyBound ) { - return; - } - - readyBound = true; - - // Catch cases where $(document).ready() is called after the - // browser event has already occurred. - if ( document.readyState === "complete" ) { - // Handle it asynchronously to allow scripts the opportunity to delay ready - return setTimeout( jQuery.ready, 1 ); - } - - // Mozilla, Opera and webkit nightlies currently support this event - if ( document.addEventListener ) { - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", jQuery.ready, false ); - - // If IE event model is used - } else if ( document.attachEvent ) { - // ensure firing before onload, - // maybe late but safe also for iframes - document.attachEvent("onreadystatechange", DOMContentLoaded); - - // A fallback to window.onload, that will always work - window.attachEvent( "onload", jQuery.ready ); - - // If IE and not a frame - // continually check to see if the document is ready - var toplevel = false; - - try { - toplevel = window.frameElement == null; - } catch(e) {} - - if ( document.documentElement.doScroll && toplevel ) { - doScrollCheck(); - } - } - }, - - // See test/unit/core.js for details concerning isFunction. - // Since version 1.3, DOM methods and functions like alert - // aren't supported. They return false on IE (#2968). - isFunction: function( obj ) { - return jQuery.type(obj) === "function"; - }, - - isArray: Array.isArray || function( obj ) { - return jQuery.type(obj) === "array"; - }, - - // A crude way of determining if an object is a window - isWindow: function( obj ) { - return obj && typeof obj === "object" && "setInterval" in obj; - }, - - isNaN: function( obj ) { - return obj == null || !rdigit.test( obj ) || isNaN( obj ); - }, - - type: function( obj ) { - return obj == null ? - String( obj ) : - class2type[ toString.call(obj) ] || "object"; - }, - - isPlainObject: function( obj ) { - // Must be an Object. - // Because of IE, we also have to check the presence of the constructor property. - // Make sure that DOM nodes and window objects don't pass through, as well - if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { - return false; - } - - // Not own constructor property must be Object - if ( obj.constructor && - !hasOwn.call(obj, "constructor") && - !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { - return false; - } - - // Own properties are enumerated firstly, so to speed up, - // if last one is own, then all properties are own. - - var key; - for ( key in obj ) {} - - return key === undefined || hasOwn.call( obj, key ); - }, - - isEmptyObject: function( obj ) { - for ( var name in obj ) { - return false; - } - return true; - }, - - error: function( msg ) { - throw msg; - }, - - parseJSON: function( data ) { - if ( typeof data !== "string" || !data ) { - return null; - } - - // Make sure leading/trailing whitespace is removed (IE can't handle it) - data = jQuery.trim( data ); - - // 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, "")) ) { - - // Try to use the native JSON parser first - return window.JSON && window.JSON.parse ? - window.JSON.parse( data ) : - (new Function("return " + data))(); - - } else { - jQuery.error( "Invalid JSON: " + data ); - } - }, - - // Cross-browser xml parsing - // (xml & tmp used internally) - parseXML: function( data , xml , tmp ) { - - 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 ); - } - - tmp = xml.documentElement; - - if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) { - jQuery.error( "Invalid XML: " + data ); - } - - return xml; - }, - - noop: function() {}, - - // Evalulates a script in a global context - globalEval: function( data ) { - if ( data && rnotwhite.test(data) ) { - // Inspired by code by Andrea Giammarchi - // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html - var head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement, - script = document.createElement( "script" ); - - if ( jQuery.support.scriptEval() ) { - script.appendChild( document.createTextNode( data ) ); - } else { - script.text = data; - } - - // Use insertBefore instead of appendChild to circumvent an IE6 bug. - // This arises when a base node is used (#2709). - head.insertBefore( script, head.firstChild ); - head.removeChild( script ); - } - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase(); - }, - - // args is for internal usage only - each: function( object, callback, args ) { - var name, i = 0, - length = object.length, - isObj = length === undefined || jQuery.isFunction(object); - - if ( args ) { - if ( isObj ) { - for ( name in object ) { - if ( callback.apply( object[ name ], args ) === false ) { - break; - } - } - } else { - for ( ; i < length; ) { - if ( callback.apply( object[ i++ ], args ) === false ) { - break; - } - } - } - - // A special, fast, case for the most common use of each - } else { - if ( isObj ) { - for ( name in object ) { - if ( callback.call( object[ name ], name, object[ name ] ) === false ) { - break; - } - } - } else { - for ( var value = object[0]; - i < length && callback.call( value, i, value ) !== false; value = object[++i] ) {} - } - } - - return object; - }, - - // Use native String.trim function wherever possible - trim: trim ? - function( text ) { - return text == null ? - "" : - trim.call( text ); - } : - - // Otherwise use our own trimming functionality - function( text ) { - return text == null ? - "" : - text.toString().replace( trimLeft, "" ).replace( trimRight, "" ); - }, - - // results is for internal usage only - makeArray: function( array, results ) { - var ret = results || []; - - if ( array != null ) { - // The window, strings (and functions) also have 'length' - // The extra typeof function check is to prevent crashes - // in Safari 2 (See: #3039) - // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930 - var type = jQuery.type(array); - - if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) ) { - push.call( ret, array ); - } else { - jQuery.merge( ret, array ); - } - } - - return ret; - }, - - inArray: function( elem, array ) { - if ( array.indexOf ) { - return array.indexOf( elem ); - } - - for ( var i = 0, length = array.length; i < length; i++ ) { - if ( array[ i ] === elem ) { - return i; - } - } - - return -1; - }, - - merge: function( first, second ) { - var i = first.length, - j = 0; - - if ( typeof second.length === "number" ) { - for ( var l = second.length; j < l; j++ ) { - first[ i++ ] = second[ j ]; - } - - } else { - while ( second[j] !== undefined ) { - first[ i++ ] = second[ j++ ]; - } - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, inv ) { - var ret = [], retVal; - inv = !!inv; - - // Go through the array, only saving the items - // that pass the validator function - for ( var i = 0, length = elems.length; i < length; i++ ) { - retVal = !!callback( elems[ i ], i ); - if ( inv !== retVal ) { - ret.push( elems[ i ] ); - } - } - - return ret; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var ret = [], value; - - // Go through the array, translating each of the items to their - // new value (or values). - for ( var i = 0, length = elems.length; i < length; i++ ) { - value = callback( elems[ i ], i, 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, - - proxy: function( fn, proxy, thisObject ) { - if ( arguments.length === 2 ) { - if ( typeof proxy === "string" ) { - thisObject = fn; - fn = thisObject[ proxy ]; - proxy = undefined; - - } else if ( proxy && !jQuery.isFunction( proxy ) ) { - thisObject = proxy; - proxy = undefined; - } - } - - if ( !proxy && fn ) { - proxy = function() { - return fn.apply( thisObject || this, arguments ); - }; - } - - // Set the guid of unique handler to the same of original handler, so it can be removed - if ( fn ) { - proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++; - } - - // So proxy can be declared as an argument - return proxy; - }, - - // Mutifunctional method to get and set values to a collection - // The value/s can be optionally by executed if its a function - access: function( elems, key, value, exec, fn, pass ) { - var length = elems.length; - - // Setting many attributes - if ( typeof key === "object" ) { - for ( var k in key ) { - jQuery.access( elems, k, key[k], exec, fn, value ); - } - return elems; - } - - // Setting one attribute - if ( value !== undefined ) { - // Optionally, function values get executed if exec is true - exec = !pass && exec && jQuery.isFunction(value); - - for ( var i = 0; i < length; i++ ) { - fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass ); - } - - return elems; - } - - // Getting an attribute - return length ? fn( elems[0], key ) : undefined; - }, - - now: function() { - return (new Date()).getTime(); - }, - - // Create a simple deferred (one callbacks list) - _Deferred: function() { - var // callbacks list - callbacks = [], - // stored [ context , args ] - fired, - // to avoid firing when already doing so - firing, - // flag to know if the deferred has been cancelled - cancelled, - // the deferred itself - deferred = { - - // done( f1, f2, ...) - done: function() { - if ( !cancelled ) { - var args = arguments, - i, - length, - elem, - type, - _fired; - if ( fired ) { - _fired = fired; - fired = 0; - } - for ( i = 0, length = args.length; i < length; i++ ) { - elem = args[ i ]; - type = jQuery.type( elem ); - if ( type === "array" ) { - deferred.done.apply( deferred, elem ); - } else if ( type === "function" ) { - callbacks.push( elem ); - } - } - if ( _fired ) { - deferred.resolveWith( _fired[ 0 ], _fired[ 1 ] ); - } - } - return this; - }, - - // resolve with given context and args - resolveWith: function( context, args ) { - if ( !cancelled && !fired && !firing ) { - firing = 1; - try { - while( callbacks[ 0 ] ) { - callbacks.shift().apply( context, args ); - } - } - // We have to add a catch block for - // IE prior to 8 or else the finally - // block will never get executed - catch (e) { - throw e; - } - finally { - fired = [ context, args ]; - firing = 0; - } - } - return this; - }, - - // resolve with this as context and given arguments - resolve: function() { - deferred.resolveWith( jQuery.isFunction( this.promise ) ? this.promise() : this, arguments ); - return this; - }, - - // Has this deferred been resolved? - isResolved: function() { - return !!( firing || fired ); - }, - - // Cancel - cancel: function() { - cancelled = 1; - callbacks = []; - return this; - } - }; - - return deferred; - }, - - // Full fledged deferred (two callbacks list) - Deferred: function( func ) { - var deferred = jQuery._Deferred(), - failDeferred = jQuery._Deferred(), - promise; - // Add errorDeferred methods, then and promise - jQuery.extend( deferred, { - then: function( doneCallbacks, failCallbacks ) { - deferred.done( doneCallbacks ).fail( failCallbacks ); - return this; - }, - fail: failDeferred.done, - rejectWith: failDeferred.resolveWith, - reject: failDeferred.resolve, - isRejected: failDeferred.isResolved, - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - if ( obj == null ) { - if ( promise ) { - return promise; - } - promise = obj = {}; - } - var i = promiseMethods.length; - while( i-- ) { - obj[ promiseMethods[i] ] = deferred[ promiseMethods[i] ]; - } - return obj; - } - } ); - // Make sure only one callback list will be used - deferred.done( failDeferred.cancel ).fail( deferred.cancel ); - // Unexpose cancel - delete deferred.cancel; - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - return deferred; - }, - - // Deferred helper - when: function( object ) { - var lastIndex = arguments.length, - deferred = lastIndex <= 1 && object && jQuery.isFunction( object.promise ) ? - object : - jQuery.Deferred(), - promise = deferred.promise(); - - if ( lastIndex > 1 ) { - var array = slice.call( arguments, 0 ), - count = lastIndex, - iCallback = function( index ) { - return function( value ) { - array[ index ] = arguments.length > 1 ? slice.call( arguments, 0 ) : value; - if ( !( --count ) ) { - deferred.resolveWith( promise, array ); - } - }; - }; - while( ( lastIndex-- ) ) { - object = array[ lastIndex ]; - if ( object && jQuery.isFunction( object.promise ) ) { - object.promise().then( iCallback(lastIndex), deferred.reject ); - } else { - --count; - } - } - if ( !count ) { - deferred.resolveWith( promise, array ); - } - } else if ( deferred !== object ) { - deferred.resolve( object ); - } - return promise; - }, - - // Use of jQuery.browser is frowned upon. - // More details: http://docs.jquery.com/Utilities/jQuery.browser - uaMatch: function( ua ) { - ua = ua.toLowerCase(); - - var match = rwebkit.exec( ua ) || - ropera.exec( ua ) || - rmsie.exec( ua ) || - ua.indexOf("compatible") < 0 && rmozilla.exec( ua ) || - []; - - return { browser: match[1] || "", version: match[2] || "0" }; - }, - - sub: function() { - function jQuerySubclass( selector, context ) { - return new jQuerySubclass.fn.init( selector, context ); - } - jQuery.extend( true, jQuerySubclass, this ); - jQuerySubclass.superclass = this; - jQuerySubclass.fn = jQuerySubclass.prototype = this(); - jQuerySubclass.fn.constructor = jQuerySubclass; - jQuerySubclass.subclass = this.subclass; - jQuerySubclass.fn.init = function init( selector, context ) { - if ( context && context instanceof jQuery && !(context instanceof jQuerySubclass) ) { - context = jQuerySubclass(context); - } - - return jQuery.fn.init.call( this, selector, context, rootjQuerySubclass ); - }; - jQuerySubclass.fn.init.prototype = jQuerySubclass.fn; - var rootjQuerySubclass = jQuerySubclass(document); - return jQuerySubclass; - }, - - browser: {} -}); - -// Create readyList deferred -readyList = jQuery._Deferred(); - -// Populate the class2type map -jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -}); - -browserMatch = jQuery.uaMatch( userAgent ); -if ( browserMatch.browser ) { - jQuery.browser[ browserMatch.browser ] = true; - jQuery.browser.version = browserMatch.version; -} - -// Deprecated, use jQuery.browser.webkit instead -if ( jQuery.browser.webkit ) { - jQuery.browser.safari = true; -} - -if ( indexOf ) { - jQuery.inArray = function( elem, array ) { - return indexOf.call( array, elem ); - }; -} - -// IE doesn't match non-breaking spaces with \s -if ( rnotwhite.test( "\xA0" ) ) { - trimLeft = /^[\s\xA0]+/; - trimRight = /[\s\xA0]+$/; -} - -// All jQuery objects should point back to these -rootjQuery = jQuery(document); - -// Cleanup functions for the document ready method -if ( document.addEventListener ) { - DOMContentLoaded = function() { - document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); - jQuery.ready(); - }; - -} else if ( document.attachEvent ) { - DOMContentLoaded = function() { - // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). - if ( document.readyState === "complete" ) { - document.detachEvent( "onreadystatechange", DOMContentLoaded ); - jQuery.ready(); - } - }; -} - -// The DOM ready check for Internet Explorer -function doScrollCheck() { - if ( jQuery.isReady ) { - return; - } - - try { - // If IE is used, use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - document.documentElement.doScroll("left"); - } catch(e) { - setTimeout( doScrollCheck, 1 ); - return; - } - - // and execute any waiting functions - jQuery.ready(); -} - -// Expose jQuery to the global object -return jQuery; - -})(); - - -(function() { - - jQuery.support = {}; - - var div = document.createElement("div"); - - div.style.display = "none"; - div.innerHTML = "
    a"; - - var all = div.getElementsByTagName("*"), - a = div.getElementsByTagName("a")[0], - select = document.createElement("select"), - opt = select.appendChild( document.createElement("option") ), - input = div.getElementsByTagName("input")[0]; - - // Can't get basic test support - if ( !all || !all.length || !a ) { - return; - } - - jQuery.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 insted) - style: /red/.test( a.getAttribute("style") ), - - // Make sure that URLs aren't manipulated - // (IE normalizes it by default) - hrefNormalized: a.getAttribute("href") === "/a", - - // Make sure that element opacity exists - // (IE uses filter instead) - // Use a regex to work around a WebKit issue. See #5145 - opacity: /^0.55$/.test( a.style.opacity ), - - // Verify style float existence - // (IE uses styleFloat instead of cssFloat) - cssFloat: !!a.style.cssFloat, - - // Make sure that if no value is specified for a checkbox - // that it defaults to "on". - // (WebKit defaults to "" instead) - checkOn: input.value === "on", - - // Make sure that a selected-by-default option has a working selected property. - // (WebKit defaults to false instead of true, IE too, if it's in an optgroup) - optSelected: opt.selected, - - // Will be defined later - deleteExpando: true, - optDisabled: false, - checkClone: false, - noCloneEvent: true, - noCloneChecked: true, - boxModel: null, - inlineBlockNeedsLayout: false, - shrinkWrapBlocks: false, - reliableHiddenOffsets: true - }; - - input.checked = true; - jQuery.support.noCloneChecked = input.cloneNode( true ).checked; - - // Make sure that the options inside disabled selects aren't marked as disabled - // (WebKit marks them as diabled) - select.disabled = true; - jQuery.support.optDisabled = !opt.disabled; - - var _scriptEval = null; - jQuery.support.scriptEval = function() { - if ( _scriptEval === null ) { - var root = document.documentElement, - script = document.createElement("script"), - id = "script" + jQuery.now(); - - try { - script.appendChild( document.createTextNode( "window." + id + "=1;" ) ); - } catch(e) {} - - root.insertBefore( script, root.firstChild ); - - // Make sure that the execution of code works by injecting a script - // tag with appendChild/createTextNode - // (IE doesn't support this, fails, and uses .text instead) - if ( window[ id ] ) { - _scriptEval = true; - delete window[ id ]; - } else { - _scriptEval = false; - } - - root.removeChild( script ); - // release memory in IE - root = script = id = null; - } - - return _scriptEval; - }; - - // Test to see if it's possible to delete an expando from an element - // Fails in Internet Explorer - try { - delete div.test; - - } catch(e) { - jQuery.support.deleteExpando = false; - } - - if ( !div.addEventListener && div.attachEvent && div.fireEvent ) { - div.attachEvent("onclick", function click() { - // Cloning a node shouldn't copy over any - // bound event handlers (IE does this) - jQuery.support.noCloneEvent = false; - div.detachEvent("onclick", click); - }); - div.cloneNode(true).fireEvent("onclick"); - } - - div = document.createElement("div"); - div.innerHTML = ""; - - var fragment = document.createDocumentFragment(); - fragment.appendChild( div.firstChild ); - - // WebKit doesn't clone checked state correctly in fragments - jQuery.support.checkClone = fragment.cloneNode(true).cloneNode(true).lastChild.checked; - - // Figure out if the W3C box model works as expected - // document.body must exist before we can do this - jQuery(function() { - var div = document.createElement("div"), - body = document.getElementsByTagName("body")[0]; - - // Frameset documents with no body should not run this code - if ( !body ) { - return; - } - - div.style.width = div.style.paddingLeft = "1px"; - body.appendChild( div ); - jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2; - - if ( "zoom" in div.style ) { - // Check if natively block-level elements act like inline-block - // elements when setting their display to 'inline' and giving - // them layout - // (IE < 8 does this) - div.style.display = "inline"; - div.style.zoom = 1; - jQuery.support.inlineBlockNeedsLayout = div.offsetWidth === 2; - - // Check if elements with layout shrink-wrap their children - // (IE 6 does this) - div.style.display = ""; - div.innerHTML = "
    "; - jQuery.support.shrinkWrapBlocks = div.offsetWidth !== 2; - } - - div.innerHTML = "
    t
    "; - var tds = div.getElementsByTagName("td"); - - // Check if table cells still have offsetWidth/Height when they are set - // to display:none and there are still other visible table cells in a - // table row; if so, offsetWidth/Height are not reliable for use when - // determining if an element has been hidden directly using - // display:none (it is still safe to use offsets if a parent element is - // hidden; don safety goggles and see bug #4512 for more information). - // (only IE 8 fails this test) - jQuery.support.reliableHiddenOffsets = 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) - jQuery.support.reliableHiddenOffsets = jQuery.support.reliableHiddenOffsets && tds[0].offsetHeight === 0; - div.innerHTML = ""; - - body.removeChild( div ).style.display = "none"; - div = tds = null; - }); - - // Technique from Juriy Zaytsev - // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/ - var eventSupported = function( eventName ) { - var el = document.createElement("div"); - eventName = "on" + eventName; - - // 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 ( !el.attachEvent ) { - return true; - } - - var isSupported = (eventName in el); - if ( !isSupported ) { - el.setAttribute(eventName, "return;"); - isSupported = typeof el[eventName] === "function"; - } - el = null; - - return isSupported; - }; - - jQuery.support.submitBubbles = eventSupported("submit"); - jQuery.support.changeBubbles = eventSupported("change"); - - // release memory in IE - div = all = a = null; -})(); - - - -var rbrace = /^(?:\{.*\}|\[.*\])$/; - -jQuery.extend({ - cache: {}, - - // Please use with caution - uuid: 0, - - // Unique for each copy of jQuery on the page - // Non-digits removed to match rinlinejQuery - expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /\D/g, "" ), - - // The following elements throw uncatchable exceptions if you - // attempt to add expando properties to them. - noData: { - "embed": true, - // Ban all objects except for Flash (which handle expandos) - "object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", - "applet": true - }, - - hasData: function( elem ) { - elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ]; - - return !!elem && !isEmptyDataObject( elem ); - }, - - data: function( elem, name, data, pvt /* Internal Use Only */ ) { - if ( !jQuery.acceptData( elem ) ) { - return; - } - - var internalKey = jQuery.expando, getByName = typeof name === "string", thisCache, - - // We have to handle DOM nodes and JS objects differently because IE6-7 - // can't GC object references properly across the DOM-JS boundary - isNode = elem.nodeType, - - // Only DOM nodes need the global jQuery cache; JS object data is - // attached directly to the object so GC can occur automatically - cache = isNode ? jQuery.cache : elem, - - // Only defining an ID for JS objects if its cache already exists allows - // the code to shortcut on the same path as a DOM node with no cache - id = isNode ? elem[ jQuery.expando ] : elem[ jQuery.expando ] && jQuery.expando; - - // Avoid doing any more work than we need to when trying to get data on an - // object that has no data at all - if ( (!id || (pvt && id && !cache[ id ][ internalKey ])) && getByName && data === undefined ) { - return; - } - - if ( !id ) { - // Only DOM nodes need a new unique ID for each element since their data - // ends up in the global cache - if ( isNode ) { - elem[ jQuery.expando ] = id = ++jQuery.uuid; - } else { - id = jQuery.expando; - } - } - - if ( !cache[ id ] ) { - cache[ id ] = {}; - - // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery - // metadata on plain JS objects when the object is serialized using - // JSON.stringify - if ( !isNode ) { - cache[ id ].toJSON = jQuery.noop; - } - } - - // An object can be passed to jQuery.data instead of a key/value pair; this gets - // shallow copied over onto the existing cache - if ( typeof name === "object" || typeof name === "function" ) { - if ( pvt ) { - cache[ id ][ internalKey ] = jQuery.extend(cache[ id ][ internalKey ], name); - } else { - cache[ id ] = jQuery.extend(cache[ id ], name); - } - } - - thisCache = cache[ id ]; - - // Internal jQuery data is stored in a separate object inside the object's data - // cache in order to avoid key collisions between internal data and user-defined - // data - if ( pvt ) { - if ( !thisCache[ internalKey ] ) { - thisCache[ internalKey ] = {}; - } - - thisCache = thisCache[ internalKey ]; - } - - if ( data !== undefined ) { - thisCache[ name ] = data; - } - - // TODO: This is a hack for 1.5 ONLY. It will be removed in 1.6. Users should - // not attempt to inspect the internal events object using jQuery.data, as this - // internal data object is undocumented and subject to change. - if ( name === "events" && !thisCache[name] ) { - return thisCache[ internalKey ] && thisCache[ internalKey ].events; - } - - return getByName ? thisCache[ name ] : thisCache; - }, - - removeData: function( elem, name, pvt /* Internal Use Only */ ) { - if ( !jQuery.acceptData( elem ) ) { - return; - } - - var internalKey = jQuery.expando, isNode = elem.nodeType, - - // See jQuery.data for more information - cache = isNode ? jQuery.cache : elem, - - // See jQuery.data for more information - id = isNode ? elem[ jQuery.expando ] : jQuery.expando; - - // If there is already no cache entry for this object, there is no - // purpose in continuing - if ( !cache[ id ] ) { - return; - } - - if ( name ) { - var thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ]; - - if ( thisCache ) { - delete thisCache[ name ]; - - // If there is no data left in the cache, we want to continue - // and let the cache object itself get destroyed - if ( !isEmptyDataObject(thisCache) ) { - return; - } - } - } - - // See jQuery.data for more information - if ( pvt ) { - delete cache[ id ][ internalKey ]; - - // Don't destroy the parent cache unless the internal data object - // had been the only thing left in it - if ( !isEmptyDataObject(cache[ id ]) ) { - return; - } - } - - var internalCache = cache[ id ][ internalKey ]; - - // Browsers that fail expando deletion also refuse to delete expandos on - // the window, but it will allow it on all other JS objects; other browsers - // don't care - if ( jQuery.support.deleteExpando || cache != window ) { - delete cache[ id ]; - } else { - cache[ id ] = null; - } - - // We destroyed the entire user cache at once because it's faster than - // iterating through each key, but we need to continue to persist internal - // data if it existed - if ( internalCache ) { - cache[ id ] = {}; - // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery - // metadata on plain JS objects when the object is serialized using - // JSON.stringify - if ( !isNode ) { - cache[ id ].toJSON = jQuery.noop; - } - - cache[ id ][ internalKey ] = internalCache; - - // Otherwise, we need to eliminate the expando on the node to avoid - // false lookups in the cache for entries that no longer exist - } else if ( isNode ) { - // IE does not allow us to delete expando properties from nodes, - // nor does it have a removeAttribute function on Document nodes; - // we must handle all of these cases - if ( jQuery.support.deleteExpando ) { - delete elem[ jQuery.expando ]; - } else if ( elem.removeAttribute ) { - elem.removeAttribute( jQuery.expando ); - } else { - elem[ jQuery.expando ] = null; - } - } - }, - - // For internal use only. - _data: function( elem, name, data ) { - return jQuery.data( elem, name, data, true ); - }, - - // A method for determining if a DOM node can handle the data expando - acceptData: function( elem ) { - if ( elem.nodeName ) { - var match = jQuery.noData[ elem.nodeName.toLowerCase() ]; - - if ( match ) { - return !(match === true || elem.getAttribute("classid") !== match); - } - } - - return true; - } -}); - -jQuery.fn.extend({ - data: function( key, value ) { - var data = null; - - if ( typeof key === "undefined" ) { - if ( this.length ) { - data = jQuery.data( this[0] ); - - if ( this[0].nodeType === 1 ) { - var attr = this[0].attributes, name; - for ( var i = 0, l = attr.length; i < l; i++ ) { - name = attr[i].name; - - if ( name.indexOf( "data-" ) === 0 ) { - name = name.substr( 5 ); - dataAttr( this[0], name, data[ name ] ); - } - } - } - } - - return data; - - } else if ( typeof key === "object" ) { - return this.each(function() { - jQuery.data( this, key ); - }); - } - - var parts = key.split("."); - parts[1] = parts[1] ? "." + parts[1] : ""; - - if ( value === undefined ) { - data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); - - // Try to fetch any internally stored data first - if ( data === undefined && this.length ) { - data = jQuery.data( this[0], key ); - data = dataAttr( this[0], key, data ); - } - - return data === undefined && parts[1] ? - this.data( parts[0] ) : - data; - - } else { - return this.each(function() { - var $this = jQuery( this ), - args = [ parts[0], value ]; - - $this.triggerHandler( "setData" + parts[1] + "!", args ); - jQuery.data( this, key, value ); - $this.triggerHandler( "changeData" + parts[1] + "!", args ); - }); - } - }, - - removeData: function( key ) { - return this.each(function() { - jQuery.removeData( this, key ); - }); - } -}); - -function dataAttr( elem, key, data ) { - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - data = elem.getAttribute( "data-" + key ); - - if ( typeof data === "string" ) { - try { - data = data === "true" ? true : - data === "false" ? false : - data === "null" ? null : - !jQuery.isNaN( data ) ? parseFloat( data ) : - rbrace.test( data ) ? jQuery.parseJSON( data ) : - data; - } catch( e ) {} - - // Make sure we set the data so it isn't changed later - jQuery.data( elem, key, data ); - - } else { - data = undefined; - } - } - - return data; -} - -// TODO: This is a hack for 1.5 ONLY to allow objects with a single toJSON -// property to be considered empty objects; this property always exists in -// order to make sure JSON.stringify does not expose internal metadata -function isEmptyDataObject( obj ) { - for ( var name in obj ) { - if ( name !== "toJSON" ) { - return false; - } - } - - return true; -} - - - - -jQuery.extend({ - queue: function( elem, type, data ) { - if ( !elem ) { - return; - } - - type = (type || "fx") + "queue"; - var q = jQuery._data( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( !data ) { - return q || []; - } - - if ( !q || jQuery.isArray(data) ) { - q = jQuery._data( elem, type, jQuery.makeArray(data) ); - - } else { - q.push( data ); - } - - return q; - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - fn = queue.shift(); - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - } - - if ( fn ) { - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift("inprogress"); - } - - fn.call(elem, function() { - jQuery.dequeue(elem, type); - }); - } - - if ( !queue.length ) { - jQuery.removeData( elem, type + "queue", true ); - } - } -}); - -jQuery.fn.extend({ - queue: function( type, data ) { - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - } - - if ( data === undefined ) { - return jQuery.queue( this[0], type ); - } - return this.each(function( i ) { - var queue = jQuery.queue( this, type, data ); - - if ( type === "fx" && queue[0] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - }); - }, - dequeue: function( type ) { - return this.each(function() { - jQuery.dequeue( this, type ); - }); - }, - - // Based off of the plugin by Clint Helfers, with permission. - // http://blindsignals.com/index.php/2009/07/jquery-delay/ - delay: function( time, type ) { - time = jQuery.fx ? jQuery.fx.speeds[time] || time : time; - type = type || "fx"; - - return this.queue( type, function() { - var elem = this; - setTimeout(function() { - jQuery.dequeue( elem, type ); - }, time ); - }); - }, - - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - } -}); - - - - -var rclass = /[\n\t\r]/g, - rspaces = /\s+/, - rreturn = /\r/g, - rspecialurl = /^(?:href|src|style)$/, - rtype = /^(?:button|input)$/i, - rfocusable = /^(?:button|input|object|select|textarea)$/i, - rclickable = /^a(?:rea)?$/i, - rradiocheck = /^(?:radio|checkbox)$/i; - -jQuery.props = { - "for": "htmlFor", - "class": "className", - readonly: "readOnly", - maxlength: "maxLength", - cellspacing: "cellSpacing", - rowspan: "rowSpan", - colspan: "colSpan", - tabindex: "tabIndex", - usemap: "useMap", - frameborder: "frameBorder" -}; - -jQuery.fn.extend({ - attr: function( name, value ) { - return jQuery.access( this, name, value, true, jQuery.attr ); - }, - - removeAttr: function( name, fn ) { - return this.each(function(){ - jQuery.attr( this, name, "" ); - if ( this.nodeType === 1 ) { - this.removeAttribute( name ); - } - }); - }, - - addClass: function( value ) { - if ( jQuery.isFunction(value) ) { - return this.each(function(i) { - var self = jQuery(this); - self.addClass( value.call(this, i, self.attr("class")) ); - }); - } - - if ( value && typeof value === "string" ) { - var classNames = (value || "").split( rspaces ); - - for ( var i = 0, l = this.length; i < l; i++ ) { - var elem = this[i]; - - if ( elem.nodeType === 1 ) { - if ( !elem.className ) { - elem.className = value; - - } else { - var className = " " + elem.className + " ", - setClass = elem.className; - - for ( var c = 0, cl = classNames.length; c < cl; c++ ) { - if ( className.indexOf( " " + classNames[c] + " " ) < 0 ) { - setClass += " " + classNames[c]; - } - } - elem.className = jQuery.trim( setClass ); - } - } - } - } - - return this; - }, - - removeClass: function( value ) { - if ( jQuery.isFunction(value) ) { - return this.each(function(i) { - var self = jQuery(this); - self.removeClass( value.call(this, i, self.attr("class")) ); - }); - } - - if ( (value && typeof value === "string") || value === undefined ) { - var classNames = (value || "").split( rspaces ); - - for ( var i = 0, l = this.length; i < l; i++ ) { - var elem = this[i]; - - if ( elem.nodeType === 1 && elem.className ) { - if ( value ) { - var className = (" " + elem.className + " ").replace(rclass, " "); - for ( var c = 0, cl = classNames.length; c < cl; c++ ) { - className = className.replace(" " + classNames[c] + " ", " "); - } - elem.className = jQuery.trim( className ); - - } else { - elem.className = ""; - } - } - } - } - - return this; - }, - - toggleClass: function( value, stateVal ) { - var type = typeof value, - isBool = typeof stateVal === "boolean"; - - if ( jQuery.isFunction( value ) ) { - return this.each(function(i) { - var self = jQuery(this); - self.toggleClass( value.call(this, i, self.attr("class"), 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( rspaces ); - - while ( (className = classNames[ i++ ]) ) { - // check each className given, space seperated list - state = isBool ? state : !self.hasClass( className ); - self[ state ? "addClass" : "removeClass" ]( className ); - } - - } else if ( type === "undefined" || type === "boolean" ) { - if ( this.className ) { - // store className if set - jQuery._data( this, "__className__", this.className ); - } - - // toggle whole className - this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || ""; - } - }); - }, - - hasClass: function( selector ) { - var className = " " + selector + " "; - for ( var i = 0, l = this.length; i < l; i++ ) { - if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) { - return true; - } - } - - return false; - }, - - val: function( value ) { - if ( !arguments.length ) { - var elem = this[0]; - - if ( elem ) { - if ( jQuery.nodeName( elem, "option" ) ) { - // 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; - } - - // We need to handle select boxes special - if ( jQuery.nodeName( elem, "select" ) ) { - var index = elem.selectedIndex, - values = [], - options = elem.options, - one = elem.type === "select-one"; - - // Nothing was selected - if ( index < 0 ) { - return null; - } - - // Loop through all the selected options - for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) { - var option = options[ i ]; - - // Don't return options that are disabled or in a disabled optgroup - if ( option.selected && (jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null) && - (!option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" )) ) { - - // Get the specific value for the option - value = jQuery(option).val(); - - // We don't need an array for one selects - if ( one ) { - return value; - } - - // Multi-Selects return an array - values.push( value ); - } - } - - // Fixes Bug #2551 -- select.val() broken in IE after form.reset() - if ( one && !values.length && options.length ) { - return jQuery( options[ index ] ).val(); - } - - return values; - } - - // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified - if ( rradiocheck.test( elem.type ) && !jQuery.support.checkOn ) { - return elem.getAttribute("value") === null ? "on" : elem.value; - } - - // Everything else, we just grab the value - return (elem.value || "").replace(rreturn, ""); - - } - - return undefined; - } - - var isFunction = jQuery.isFunction(value); - - return this.each(function(i) { - var self = jQuery(this), val = value; - - if ( this.nodeType !== 1 ) { - return; - } - - if ( isFunction ) { - val = value.call(this, i, self.val()); - } - - // 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 + ""; - }); - } - - if ( jQuery.isArray(val) && rradiocheck.test( this.type ) ) { - this.checked = jQuery.inArray( self.val(), val ) >= 0; - - } else if ( jQuery.nodeName( this, "select" ) ) { - var values = jQuery.makeArray(val); - - jQuery( "option", this ).each(function() { - this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0; - }); - - if ( !values.length ) { - this.selectedIndex = -1; - } - - } else { - this.value = val; - } - }); - } -}); - -jQuery.extend({ - attrFn: { - val: true, - css: true, - html: true, - text: true, - data: true, - width: true, - height: true, - offset: true - }, - - attr: function( elem, name, value, pass ) { - // don't get/set attributes on text, comment and attribute nodes - if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || elem.nodeType === 2 ) { - return undefined; - } - - if ( pass && name in jQuery.attrFn ) { - return jQuery(elem)[name](value); - } - - var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc( elem ), - // Whether we are setting (or getting) - set = value !== undefined; - - // Try to normalize/fix the name - name = notxml && jQuery.props[ name ] || name; - - // Only do all the following if this is a node (faster for style) - if ( elem.nodeType === 1 ) { - // These attributes require special treatment - var special = rspecialurl.test( name ); - - // Safari mis-reports the default selected property of an option - // Accessing the parent's selectedIndex property fixes it - if ( name === "selected" && !jQuery.support.optSelected ) { - var parent = elem.parentNode; - if ( parent ) { - parent.selectedIndex; - - // Make sure that it also works with optgroups, see #5701 - if ( parent.parentNode ) { - parent.parentNode.selectedIndex; - } - } - } - - // If applicable, access the attribute via the DOM 0 way - // 'in' checks fail in Blackberry 4.7 #6931 - if ( (name in elem || elem[ name ] !== undefined) && notxml && !special ) { - if ( set ) { - // We can't allow the type property to be changed (since it causes problems in IE) - if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) { - jQuery.error( "type property can't be changed" ); - } - - if ( value === null ) { - if ( elem.nodeType === 1 ) { - elem.removeAttribute( name ); - } - - } else { - elem[ name ] = value; - } - } - - // browsers index elements by id/name on forms, give priority to attributes. - if ( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) { - return elem.getAttributeNode( name ).nodeValue; - } - - // 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/ - if ( name === "tabIndex" ) { - var attributeNode = elem.getAttributeNode( "tabIndex" ); - - return attributeNode && attributeNode.specified ? - attributeNode.value : - rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ? - 0 : - undefined; - } - - return elem[ name ]; - } - - if ( !jQuery.support.style && notxml && name === "style" ) { - if ( set ) { - elem.style.cssText = "" + value; - } - - return elem.style.cssText; - } - - if ( set ) { - // convert the value to a string (all browsers do this but IE) see #1070 - elem.setAttribute( name, "" + value ); - } - - // Ensure that missing attributes return undefined - // Blackberry 4.7 returns "" from getAttribute #6938 - if ( !elem.attributes[ name ] && (elem.hasAttribute && !elem.hasAttribute( name )) ) { - return undefined; - } - - var attr = !jQuery.support.hrefNormalized && notxml && special ? - // Some attributes require a special call on IE - elem.getAttribute( name, 2 ) : - elem.getAttribute( name ); - - // Non-existent attributes return null, we normalize to undefined - return attr === null ? undefined : attr; - } - // Handle everything which isn't a DOM element node - if ( set ) { - elem[ name ] = value; - } - return elem[ name ]; - } -}); - - - - -var rnamespaces = /\.(.*)$/, - rformElems = /^(?:textarea|input|select)$/i, - rperiod = /\./g, - rspace = / /g, - rescape = /[^\w\s.|`]/g, - fcleanup = function( nm ) { - return nm.replace(rescape, "\\$&"); - }; - -/* - * A number of helper functions used for managing events. - * Many of the ideas behind this code originated from - * Dean Edwards' addEvent library. - */ -jQuery.event = { - - // Bind an event to an element - // Original by Dean Edwards - add: function( elem, types, handler, data ) { - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // TODO :: Use a try/catch until it's safe to pull this out (likely 1.6) - // Minor release fix for bug #8018 - try { - // For whatever reason, IE has trouble passing the window object - // around, causing it to be cloned in the process - if ( jQuery.isWindow( elem ) && ( elem !== window && !elem.frameElement ) ) { - elem = window; - } - } - catch ( e ) {} - - if ( handler === false ) { - handler = returnFalse; - } else if ( !handler ) { - // Fixes bug #7229. Fix recommended by jdalton - return; - } - - var handleObjIn, handleObj; - - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - } - - // Make sure that the function being executed has a unique ID - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure - var elemData = jQuery._data( elem ); - - // If no elemData is found then we must be trying to bind to one of the - // banned noData elements - if ( !elemData ) { - return; - } - - var events = elemData.events, - eventHandle = elemData.handle; - - if ( !events ) { - elemData.events = events = {}; - } - - if ( !eventHandle ) { - elemData.handle = eventHandle = function() { - // Handle the second event of a trigger and when - // an event is called after a page has unloaded - return typeof jQuery !== "undefined" && !jQuery.event.triggered ? - jQuery.event.handle.apply( eventHandle.elem, arguments ) : - undefined; - }; - } - - // Add elem as a property of the handle function - // This is to prevent a memory leak with non-native events in IE. - eventHandle.elem = elem; - - // Handle multiple events separated by a space - // jQuery(...).bind("mouseover mouseout", fn); - types = types.split(" "); - - var type, i = 0, namespaces; - - while ( (type = types[ i++ ]) ) { - handleObj = handleObjIn ? - jQuery.extend({}, handleObjIn) : - { handler: handler, data: data }; - - // Namespaced event handlers - if ( type.indexOf(".") > -1 ) { - namespaces = type.split("."); - type = namespaces.shift(); - handleObj.namespace = namespaces.slice(0).sort().join("."); - - } else { - namespaces = []; - handleObj.namespace = ""; - } - - handleObj.type = type; - if ( !handleObj.guid ) { - handleObj.guid = handler.guid; - } - - // Get the current list of functions bound to this event - var handlers = events[ type ], - special = jQuery.event.special[ type ] || {}; - - // Init the event handler queue - if ( !handlers ) { - handlers = events[ type ] = []; - - // Check for a special event handler - // Only use addEventListener/attachEvent if the special - // events handler returns false - if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - // Bind the global event handler to the element - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle, false ); - - } else if ( elem.attachEvent ) { - elem.attachEvent( "on" + type, eventHandle ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add the function to the element's handler list - handlers.push( handleObj ); - - // Keep track of which events have been used, for global triggering - jQuery.event.global[ type ] = true; - } - - // Nullify elem to prevent memory leaks in IE - elem = null; - }, - - global: {}, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, pos ) { - // don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - if ( handler === false ) { - handler = returnFalse; - } - - var ret, type, fn, j, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType, - elemData = jQuery.hasData( elem ) && jQuery._data( elem ), - events = elemData && elemData.events; - - if ( !elemData || !events ) { - return; - } - - // types is actually an event object here - if ( types && types.type ) { - handler = types.handler; - types = types.type; - } - - // Unbind all events for the element - if ( !types || typeof types === "string" && types.charAt(0) === "." ) { - types = types || ""; - - for ( type in events ) { - jQuery.event.remove( elem, type + types ); - } - - return; - } - - // Handle multiple events separated by a space - // jQuery(...).unbind("mouseover mouseout", fn); - types = types.split(" "); - - while ( (type = types[ i++ ]) ) { - origType = type; - handleObj = null; - all = type.indexOf(".") < 0; - namespaces = []; - - if ( !all ) { - // Namespaced event handlers - namespaces = type.split("."); - type = namespaces.shift(); - - namespace = new RegExp("(^|\\.)" + - jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(?:.*\\.)?") + "(\\.|$)"); - } - - eventType = events[ type ]; - - if ( !eventType ) { - continue; - } - - if ( !handler ) { - for ( j = 0; j < eventType.length; j++ ) { - handleObj = eventType[ j ]; - - if ( all || namespace.test( handleObj.namespace ) ) { - jQuery.event.remove( elem, origType, handleObj.handler, j ); - eventType.splice( j--, 1 ); - } - } - - continue; - } - - special = jQuery.event.special[ type ] || {}; - - for ( j = pos || 0; j < eventType.length; j++ ) { - handleObj = eventType[ j ]; - - if ( handler.guid === handleObj.guid ) { - // remove the given handler for the given type - if ( all || namespace.test( handleObj.namespace ) ) { - if ( pos == null ) { - eventType.splice( j--, 1 ); - } - - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - - if ( pos != null ) { - break; - } - } - } - - // remove generic event handler if no more handlers exist - if ( eventType.length === 0 || pos != null && eventType.length === 1 ) { - if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) { - jQuery.removeEvent( elem, type, elemData.handle ); - } - - ret = null; - delete events[ type ]; - } - } - - // Remove the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - var handle = elemData.handle; - if ( handle ) { - handle.elem = null; - } - - delete elemData.events; - delete elemData.handle; - - if ( jQuery.isEmptyObject( elemData ) ) { - jQuery.removeData( elem, undefined, true ); - } - } - }, - - // bubbling is internal - trigger: function( event, data, elem /*, bubbling */ ) { - // Event object or event type - var type = event.type || event, - bubbling = arguments[3]; - - if ( !bubbling ) { - event = typeof event === "object" ? - // jQuery.Event object - event[ jQuery.expando ] ? event : - // Object literal - jQuery.extend( jQuery.Event(type), event ) : - // Just the event type (string) - jQuery.Event(type); - - if ( type.indexOf("!") >= 0 ) { - event.type = type = type.slice(0, -1); - event.exclusive = true; - } - - // Handle a global trigger - if ( !elem ) { - // Don't bubble custom events when global (to avoid too much overhead) - event.stopPropagation(); - - // Only trigger if we've ever bound an event for it - if ( jQuery.event.global[ type ] ) { - // XXX This code smells terrible. event.js should not be directly - // inspecting the data cache - jQuery.each( jQuery.cache, function() { - // internalKey variable is just used to make it easier to find - // and potentially change this stuff later; currently it just - // points to jQuery.expando - var internalKey = jQuery.expando, - internalCache = this[ internalKey ]; - if ( internalCache && internalCache.events && internalCache.events[ type ] ) { - jQuery.event.trigger( event, data, internalCache.handle.elem ); - } - }); - } - } - - // Handle triggering a single element - - // don't do events on text and comment nodes - if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) { - return undefined; - } - - // Clean up in case it is reused - event.result = undefined; - event.target = elem; - - // Clone the incoming data, if any - data = jQuery.makeArray( data ); - data.unshift( event ); - } - - event.currentTarget = elem; - - // Trigger the event, it is assumed that "handle" is a function - var handle = jQuery._data( elem, "handle" ); - - if ( handle ) { - handle.apply( elem, data ); - } - - var parent = elem.parentNode || elem.ownerDocument; - - // Trigger an inline bound script - try { - if ( !(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) ) { - if ( elem[ "on" + type ] && elem[ "on" + type ].apply( elem, data ) === false ) { - event.result = false; - event.preventDefault(); - } - } - - // prevent IE from throwing an error for some elements with some event types, see #3533 - } catch (inlineError) {} - - if ( !event.isPropagationStopped() && parent ) { - jQuery.event.trigger( event, data, parent, true ); - - } else if ( !event.isDefaultPrevented() ) { - var old, - target = event.target, - targetType = type.replace( rnamespaces, "" ), - isClick = jQuery.nodeName( target, "a" ) && targetType === "click", - special = jQuery.event.special[ targetType ] || {}; - - if ( (!special._default || special._default.call( elem, event ) === false) && - !isClick && !(target && target.nodeName && jQuery.noData[target.nodeName.toLowerCase()]) ) { - - try { - if ( target[ targetType ] ) { - // Make sure that we don't accidentally re-trigger the onFOO events - old = target[ "on" + targetType ]; - - if ( old ) { - target[ "on" + targetType ] = null; - } - - jQuery.event.triggered = true; - target[ targetType ](); - } - - // prevent IE from throwing an error for some elements with some event types, see #3533 - } catch (triggerError) {} - - if ( old ) { - target[ "on" + targetType ] = old; - } - - jQuery.event.triggered = false; - } - } - }, - - handle: function( event ) { - var all, handlers, namespaces, namespace_re, events, - namespace_sort = [], - args = jQuery.makeArray( arguments ); - - event = args[0] = jQuery.event.fix( event || window.event ); - event.currentTarget = this; - - // Namespaced event handlers - all = event.type.indexOf(".") < 0 && !event.exclusive; - - if ( !all ) { - namespaces = event.type.split("."); - event.type = namespaces.shift(); - namespace_sort = namespaces.slice(0).sort(); - namespace_re = new RegExp("(^|\\.)" + namespace_sort.join("\\.(?:.*\\.)?") + "(\\.|$)"); - } - - event.namespace = event.namespace || namespace_sort.join("."); - - events = jQuery._data(this, "events"); - - handlers = (events || {})[ event.type ]; - - if ( events && handlers ) { - // Clone the handlers to prevent manipulation - handlers = handlers.slice(0); - - for ( var j = 0, l = handlers.length; j < l; j++ ) { - var handleObj = handlers[ j ]; - - // Filter the functions by class - if ( all || namespace_re.test( handleObj.namespace ) ) { - // Pass in a reference to the handler function itself - // So that we can later remove it - event.handler = handleObj.handler; - event.data = handleObj.data; - event.handleObj = handleObj; - - var ret = handleObj.handler.apply( this, args ); - - if ( ret !== undefined ) { - event.result = ret; - if ( ret === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - - if ( event.isImmediatePropagationStopped() ) { - break; - } - } - } - } - - return event.result; - }, - - props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), - - fix: function( event ) { - if ( event[ jQuery.expando ] ) { - return event; - } - - // store a copy of the original event object - // and "clone" to set read-only properties - var originalEvent = event; - event = jQuery.Event( originalEvent ); - - for ( var i = this.props.length, prop; i; ) { - prop = this.props[ --i ]; - event[ prop ] = originalEvent[ prop ]; - } - - // Fix target property, if necessary - if ( !event.target ) { - // Fixes #1925 where srcElement might not be defined either - event.target = event.srcElement || document; - } - - // check if target is a textnode (safari) - if ( event.target.nodeType === 3 ) { - event.target = event.target.parentNode; - } - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && event.fromElement ) { - event.relatedTarget = event.fromElement === event.target ? event.toElement : event.fromElement; - } - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && event.clientX != null ) { - var doc = document.documentElement, - body = document.body; - - event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0); - event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0); - } - - // Add which for key events - if ( event.which == null && (event.charCode != null || event.keyCode != null) ) { - event.which = event.charCode != null ? event.charCode : event.keyCode; - } - - // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) - if ( !event.metaKey && event.ctrlKey ) { - event.metaKey = event.ctrlKey; - } - - // Add which for click: 1 === left; 2 === middle; 3 === right - // Note: button is not normalized, so don't use it - if ( !event.which && event.button !== undefined ) { - event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); - } - - return event; - }, - - // Deprecated, use jQuery.guid instead - guid: 1E8, - - // Deprecated, use jQuery.proxy instead - proxy: jQuery.proxy, - - special: { - ready: { - // Make sure the ready event is setup - setup: jQuery.bindReady, - teardown: jQuery.noop - }, - - live: { - add: function( handleObj ) { - jQuery.event.add( this, - liveConvert( handleObj.origType, handleObj.selector ), - jQuery.extend({}, handleObj, {handler: liveHandler, guid: handleObj.handler.guid}) ); - }, - - remove: function( handleObj ) { - jQuery.event.remove( this, liveConvert( handleObj.origType, handleObj.selector ), handleObj ); - } - }, - - beforeunload: { - setup: function( data, namespaces, eventHandle ) { - // We only want to do this special case on windows - if ( jQuery.isWindow( this ) ) { - this.onbeforeunload = eventHandle; - } - }, - - teardown: function( namespaces, eventHandle ) { - if ( this.onbeforeunload === eventHandle ) { - this.onbeforeunload = null; - } - } - } - } -}; - -jQuery.removeEvent = document.removeEventListener ? - function( elem, type, handle ) { - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle, false ); - } - } : - function( elem, type, handle ) { - if ( elem.detachEvent ) { - elem.detachEvent( "on" + type, handle ); - } - }; - -jQuery.Event = function( src ) { - // Allow instantiation without the 'new' keyword - if ( !this.preventDefault ) { - return new jQuery.Event( src ); - } - - // 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; - } - - // timeStamp is buggy for some events on Firefox(#3843) - // So we won't rely on the native value - this.timeStamp = jQuery.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -function returnFalse() { - return false; -} -function returnTrue() { - return true; -} - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - preventDefault: function() { - this.isDefaultPrevented = returnTrue; - - var e = this.originalEvent; - if ( !e ) { - return; - } - - // if preventDefault exists run it on the original event - if ( e.preventDefault ) { - e.preventDefault(); - - // otherwise set the returnValue property of the original event to false (IE) - } else { - e.returnValue = false; - } - }, - stopPropagation: function() { - this.isPropagationStopped = returnTrue; - - var e = this.originalEvent; - if ( !e ) { - return; - } - // if stopPropagation exists run it on the original event - if ( e.stopPropagation ) { - e.stopPropagation(); - } - // otherwise set the cancelBubble property of the original event to true (IE) - e.cancelBubble = true; - }, - stopImmediatePropagation: function() { - this.isImmediatePropagationStopped = returnTrue; - this.stopPropagation(); - }, - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse -}; - -// Checks if an event happened on an element within another element -// Used in jQuery.event.special.mouseenter and mouseleave handlers -var withinElement = function( event ) { - // Check if mouse(over|out) are still within the same parent element - var parent = event.relatedTarget; - - // Firefox sometimes assigns relatedTarget a XUL element - // which we cannot access the parentNode property of - try { - - // Chrome does something similar, the parentNode property - // can be accessed but is null. - if ( parent !== document && !parent.parentNode ) { - return; - } - // Traverse up the tree - while ( parent && parent !== this ) { - parent = parent.parentNode; - } - - if ( parent !== this ) { - // set the correct event type - event.type = event.data; - - // handle event if we actually just moused on to a non sub-element - jQuery.event.handle.apply( this, arguments ); - } - - // assuming we've left the element since we most likely mousedover a xul element - } catch(e) { } -}, - -// In case of event delegation, we only need to rename the event.type, -// liveHandler will take care of the rest. -delegate = function( event ) { - event.type = event.data; - jQuery.event.handle.apply( this, arguments ); -}; - -// Create mouseenter and mouseleave events -jQuery.each({ - mouseenter: "mouseover", - mouseleave: "mouseout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - setup: function( data ) { - jQuery.event.add( this, fix, data && data.selector ? delegate : withinElement, orig ); - }, - teardown: function( data ) { - jQuery.event.remove( this, fix, data && data.selector ? delegate : withinElement ); - } - }; -}); - -// submit delegation -if ( !jQuery.support.submitBubbles ) { - - jQuery.event.special.submit = { - setup: function( data, namespaces ) { - if ( this.nodeName && this.nodeName.toLowerCase() !== "form" ) { - jQuery.event.add(this, "click.specialSubmit", function( e ) { - var elem = e.target, - type = elem.type; - - if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) { - trigger( "submit", this, arguments ); - } - }); - - jQuery.event.add(this, "keypress.specialSubmit", function( e ) { - var elem = e.target, - type = elem.type; - - if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) { - trigger( "submit", this, arguments ); - } - }); - - } else { - return false; - } - }, - - teardown: function( namespaces ) { - jQuery.event.remove( this, ".specialSubmit" ); - } - }; - -} - -// change delegation, happens here so we have bind. -if ( !jQuery.support.changeBubbles ) { - - var changeFilters, - - getVal = function( elem ) { - var type = elem.type, val = elem.value; - - if ( type === "radio" || type === "checkbox" ) { - val = elem.checked; - - } else if ( type === "select-multiple" ) { - val = elem.selectedIndex > -1 ? - jQuery.map( elem.options, function( elem ) { - return elem.selected; - }).join("-") : - ""; - - } else if ( elem.nodeName.toLowerCase() === "select" ) { - val = elem.selectedIndex; - } - - return val; - }, - - testChange = function testChange( e ) { - var elem = e.target, data, val; - - if ( !rformElems.test( elem.nodeName ) || elem.readOnly ) { - return; - } - - data = jQuery._data( elem, "_change_data" ); - val = getVal(elem); - - // the current data will be also retrieved by beforeactivate - if ( e.type !== "focusout" || elem.type !== "radio" ) { - jQuery._data( elem, "_change_data", val ); - } - - if ( data === undefined || val === data ) { - return; - } - - if ( data != null || val ) { - e.type = "change"; - e.liveFired = undefined; - jQuery.event.trigger( e, arguments[1], elem ); - } - }; - - jQuery.event.special.change = { - filters: { - focusout: testChange, - - beforedeactivate: testChange, - - click: function( e ) { - var elem = e.target, type = elem.type; - - if ( type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select" ) { - testChange.call( this, e ); - } - }, - - // Change has to be called before submit - // Keydown will be called before keypress, which is used in submit-event delegation - keydown: function( e ) { - var elem = e.target, type = elem.type; - - if ( (e.keyCode === 13 && elem.nodeName.toLowerCase() !== "textarea") || - (e.keyCode === 32 && (type === "checkbox" || type === "radio")) || - type === "select-multiple" ) { - testChange.call( this, e ); - } - }, - - // Beforeactivate happens also before the previous element is blurred - // with this event you can't trigger a change event, but you can store - // information - beforeactivate: function( e ) { - var elem = e.target; - jQuery._data( elem, "_change_data", getVal(elem) ); - } - }, - - setup: function( data, namespaces ) { - if ( this.type === "file" ) { - return false; - } - - for ( var type in changeFilters ) { - jQuery.event.add( this, type + ".specialChange", changeFilters[type] ); - } - - return rformElems.test( this.nodeName ); - }, - - teardown: function( namespaces ) { - jQuery.event.remove( this, ".specialChange" ); - - return rformElems.test( this.nodeName ); - } - }; - - changeFilters = jQuery.event.special.change.filters; - - // Handle when the input is .focus()'d - changeFilters.focus = changeFilters.beforeactivate; -} - -function trigger( type, elem, args ) { - // Piggyback on a donor event to simulate a different one. - // Fake originalEvent to avoid donor's stopPropagation, but if the - // simulated event prevents default then we do the same on the donor. - // Don't pass args or remember liveFired; they apply to the donor event. - var event = jQuery.extend( {}, args[ 0 ] ); - event.type = type; - event.originalEvent = {}; - event.liveFired = undefined; - jQuery.event.handle.call( elem, event ); - if ( event.isDefaultPrevented() ) { - args[ 0 ].preventDefault(); - } -} - -// Create "bubbling" focus and blur events -if ( document.addEventListener ) { - jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { - jQuery.event.special[ fix ] = { - setup: function() { - this.addEventListener( orig, handler, true ); - }, - teardown: function() { - this.removeEventListener( orig, handler, true ); - } - }; - - function handler( e ) { - e = jQuery.event.fix( e ); - e.type = fix; - return jQuery.event.handle.call( this, e ); - } - }); -} - -jQuery.each(["bind", "one"], function( i, name ) { - jQuery.fn[ name ] = function( type, data, fn ) { - // Handle object literals - if ( typeof type === "object" ) { - for ( var key in type ) { - this[ name ](key, data, type[key], fn); - } - return this; - } - - if ( jQuery.isFunction( data ) || data === false ) { - fn = data; - data = undefined; - } - - var handler = name === "one" ? jQuery.proxy( fn, function( event ) { - jQuery( this ).unbind( event, handler ); - return fn.apply( this, arguments ); - }) : fn; - - if ( type === "unload" && name !== "one" ) { - this.one( type, data, fn ); - - } else { - for ( var i = 0, l = this.length; i < l; i++ ) { - jQuery.event.add( this[i], type, handler, data ); - } - } - - return this; - }; -}); - -jQuery.fn.extend({ - unbind: function( type, fn ) { - // Handle object literals - if ( typeof type === "object" && !type.preventDefault ) { - for ( var key in type ) { - this.unbind(key, type[key]); - } - - } else { - for ( var i = 0, l = this.length; i < l; i++ ) { - jQuery.event.remove( this[i], type, fn ); - } - } - - return this; - }, - - delegate: function( selector, types, data, fn ) { - return this.live( types, data, fn, selector ); - }, - - undelegate: function( selector, types, fn ) { - if ( arguments.length === 0 ) { - return this.unbind( "live" ); - - } else { - return this.die( types, null, fn, selector ); - } - }, - - trigger: function( type, data ) { - return this.each(function() { - jQuery.event.trigger( type, data, this ); - }); - }, - - triggerHandler: function( type, data ) { - if ( this[0] ) { - var event = jQuery.Event( type ); - event.preventDefault(); - event.stopPropagation(); - jQuery.event.trigger( event, data, this[0] ); - return event.result; - } - }, - - toggle: function( fn ) { - // Save reference to arguments for access in closure - var args = arguments, - i = 1; - - // link all the functions, so any of them can unbind this click handler - while ( i < args.length ) { - jQuery.proxy( fn, args[ i++ ] ); - } - - return this.click( jQuery.proxy( fn, 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; - })); - }, - - hover: function( fnOver, fnOut ) { - return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); - } -}); - -var liveMap = { - focus: "focusin", - blur: "focusout", - mouseenter: "mouseover", - mouseleave: "mouseout" -}; - -jQuery.each(["live", "die"], function( i, name ) { - jQuery.fn[ name ] = function( types, data, fn, origSelector /* Internal Use Only */ ) { - var type, i = 0, match, namespaces, preType, - selector = origSelector || this.selector, - context = origSelector ? this : jQuery( this.context ); - - if ( typeof types === "object" && !types.preventDefault ) { - for ( var key in types ) { - context[ name ]( key, data, types[key], selector ); - } - - return this; - } - - if ( jQuery.isFunction( data ) ) { - fn = data; - data = undefined; - } - - types = (types || "").split(" "); - - while ( (type = types[ i++ ]) != null ) { - match = rnamespaces.exec( type ); - namespaces = ""; - - if ( match ) { - namespaces = match[0]; - type = type.replace( rnamespaces, "" ); - } - - if ( type === "hover" ) { - types.push( "mouseenter" + namespaces, "mouseleave" + namespaces ); - continue; - } - - preType = type; - - if ( type === "focus" || type === "blur" ) { - types.push( liveMap[ type ] + namespaces ); - type = type + namespaces; - - } else { - type = (liveMap[ type ] || type) + namespaces; - } - - if ( name === "live" ) { - // bind live handler - for ( var j = 0, l = context.length; j < l; j++ ) { - jQuery.event.add( context[j], "live." + liveConvert( type, selector ), - { data: data, selector: selector, handler: fn, origType: type, origHandler: fn, preType: preType } ); - } - - } else { - // unbind live handler - context.unbind( "live." + liveConvert( type, selector ), fn ); - } - } - - return this; - }; -}); - -function liveHandler( event ) { - var stop, maxLevel, related, match, handleObj, elem, j, i, l, data, close, namespace, ret, - elems = [], - selectors = [], - events = jQuery._data( this, "events" ); - - // Make sure we avoid non-left-click bubbling in Firefox (#3861) and disabled elements in IE (#6911) - if ( event.liveFired === this || !events || !events.live || event.target.disabled || event.button && event.type === "click" ) { - return; - } - - if ( event.namespace ) { - namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)"); - } - - event.liveFired = this; - - var live = events.live.slice(0); - - for ( j = 0; j < live.length; j++ ) { - handleObj = live[j]; - - if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) { - selectors.push( handleObj.selector ); - - } else { - live.splice( j--, 1 ); - } - } - - match = jQuery( event.target ).closest( selectors, event.currentTarget ); - - for ( i = 0, l = match.length; i < l; i++ ) { - close = match[i]; - - for ( j = 0; j < live.length; j++ ) { - handleObj = live[j]; - - if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) && !close.elem.disabled ) { - elem = close.elem; - related = null; - - // Those two events require additional checking - if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) { - event.type = handleObj.preType; - related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0]; - } - - if ( !related || related !== elem ) { - elems.push({ elem: elem, handleObj: handleObj, level: close.level }); - } - } - } - } - - for ( i = 0, l = elems.length; i < l; i++ ) { - match = elems[i]; - - if ( maxLevel && match.level > maxLevel ) { - break; - } - - event.currentTarget = match.elem; - event.data = match.handleObj.data; - event.handleObj = match.handleObj; - - ret = match.handleObj.origHandler.apply( match.elem, arguments ); - - if ( ret === false || event.isPropagationStopped() ) { - maxLevel = match.level; - - if ( ret === false ) { - stop = false; - } - if ( event.isImmediatePropagationStopped() ) { - break; - } - } - } - - return stop; -} - -function liveConvert( type, selector ) { - return (type && type !== "*" ? type + "." : "") + selector.replace(rperiod, "`").replace(rspace, "&"); -} - -jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + - "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + - "change select submit keydown keypress keyup error").split(" "), function( i, name ) { - - // Handle event binding - jQuery.fn[ name ] = function( data, fn ) { - if ( fn == null ) { - fn = data; - data = null; - } - - return arguments.length > 0 ? - this.bind( name, data, fn ) : - this.trigger( name ); - }; - - if ( jQuery.attrFn ) { - jQuery.attrFn[ name ] = true; - } -}); - - -/*! - * Sizzle CSS Selector Engine - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){ - -var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, - done = 0, - toString = Object.prototype.toString, - hasDuplicate = false, - baseHasDuplicate = true, - rBackslash = /\\/g, - rNonWord = /\W/; - -// Here we check if the JavaScript engine is using some sort of -// optimization where it does not always call our comparision -// function. If that is the case, discard the hasDuplicate value. -// Thus far that includes Google Chrome. -[0, 0].sort(function() { - baseHasDuplicate = false; - return 0; -}); - -var Sizzle = function( selector, context, results, seed ) { - results = results || []; - context = context || document; - - var origContext = context; - - if ( context.nodeType !== 1 && context.nodeType !== 9 ) { - return []; - } - - if ( !selector || typeof selector !== "string" ) { - return results; - } - - var m, set, checkSet, extra, ret, cur, pop, i, - prune = true, - contextXML = Sizzle.isXML( context ), - parts = [], - soFar = selector; - - // Reset the position of the chunker regexp (start from head) - do { - chunker.exec( "" ); - m = chunker.exec( soFar ); - - if ( m ) { - soFar = m[3]; - - parts.push( m[1] ); - - if ( m[2] ) { - extra = m[3]; - break; - } - } - } while ( m ); - - if ( parts.length > 1 && origPOS.exec( selector ) ) { - - if ( parts.length === 2 && Expr.relative[ parts[0] ] ) { - set = posProcess( parts[0] + parts[1], context ); - - } else { - set = Expr.relative[ parts[0] ] ? - [ context ] : - Sizzle( parts.shift(), context ); - - while ( parts.length ) { - selector = parts.shift(); - - if ( Expr.relative[ selector ] ) { - selector += parts.shift(); - } - - set = posProcess( selector, set ); - } - } - - } else { - // Take a shortcut and set the context if the root selector is an ID - // (but not if it'll be faster if the inner selector is an ID) - if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML && - Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) { - - ret = Sizzle.find( parts.shift(), context, contextXML ); - context = ret.expr ? - Sizzle.filter( ret.expr, ret.set )[0] : - ret.set[0]; - } - - if ( context ) { - ret = seed ? - { expr: parts.pop(), set: makeArray(seed) } : - Sizzle.find( parts.pop(), parts.length === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode ? context.parentNode : context, contextXML ); - - set = ret.expr ? - Sizzle.filter( ret.expr, ret.set ) : - ret.set; - - if ( parts.length > 0 ) { - checkSet = makeArray( set ); - - } else { - prune = false; - } - - while ( parts.length ) { - cur = parts.pop(); - pop = cur; - - if ( !Expr.relative[ cur ] ) { - cur = ""; - } else { - pop = parts.pop(); - } - - if ( pop == null ) { - pop = context; - } - - Expr.relative[ cur ]( checkSet, pop, contextXML ); - } - - } else { - checkSet = parts = []; - } - } - - if ( !checkSet ) { - checkSet = set; - } - - if ( !checkSet ) { - Sizzle.error( cur || selector ); - } - - if ( toString.call(checkSet) === "[object Array]" ) { - if ( !prune ) { - results.push.apply( results, checkSet ); - - } else if ( context && context.nodeType === 1 ) { - for ( i = 0; checkSet[i] != null; i++ ) { - if ( checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && Sizzle.contains(context, checkSet[i])) ) { - results.push( set[i] ); - } - } - - } else { - for ( i = 0; checkSet[i] != null; i++ ) { - if ( checkSet[i] && checkSet[i].nodeType === 1 ) { - results.push( set[i] ); - } - } - } - - } else { - makeArray( checkSet, results ); - } - - if ( extra ) { - Sizzle( extra, origContext, results, seed ); - Sizzle.uniqueSort( results ); - } - - return results; -}; - -Sizzle.uniqueSort = function( results ) { - if ( sortOrder ) { - hasDuplicate = baseHasDuplicate; - results.sort( sortOrder ); - - if ( hasDuplicate ) { - for ( var i = 1; i < results.length; i++ ) { - if ( results[i] === results[ i - 1 ] ) { - results.splice( i--, 1 ); - } - } - } - } - - return results; -}; - -Sizzle.matches = function( expr, set ) { - return Sizzle( expr, null, null, set ); -}; - -Sizzle.matchesSelector = function( node, expr ) { - return Sizzle( expr, null, null, [node] ).length > 0; -}; - -Sizzle.find = function( expr, context, isXML ) { - var set; - - if ( !expr ) { - return []; - } - - for ( var i = 0, l = Expr.order.length; i < l; i++ ) { - var match, - type = Expr.order[i]; - - if ( (match = Expr.leftMatch[ type ].exec( expr )) ) { - var left = match[1]; - match.splice( 1, 1 ); - - if ( left.substr( left.length - 1 ) !== "\\" ) { - match[1] = (match[1] || "").replace( rBackslash, "" ); - set = Expr.find[ type ]( match, context, isXML ); - - if ( set != null ) { - expr = expr.replace( Expr.match[ type ], "" ); - break; - } - } - } - } - - if ( !set ) { - set = typeof context.getElementsByTagName !== "undefined" ? - context.getElementsByTagName( "*" ) : - []; - } - - return { set: set, expr: expr }; -}; - -Sizzle.filter = function( expr, set, inplace, not ) { - var match, anyFound, - old = expr, - result = [], - curLoop = set, - isXMLFilter = set && set[0] && Sizzle.isXML( set[0] ); - - while ( expr && set.length ) { - for ( var type in Expr.filter ) { - if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) { - var found, item, - filter = Expr.filter[ type ], - left = match[1]; - - anyFound = false; - - match.splice(1,1); - - if ( left.substr( left.length - 1 ) === "\\" ) { - continue; - } - - if ( curLoop === result ) { - result = []; - } - - if ( Expr.preFilter[ type ] ) { - match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter ); - - if ( !match ) { - anyFound = found = true; - - } else if ( match === true ) { - continue; - } - } - - if ( match ) { - for ( var i = 0; (item = curLoop[i]) != null; i++ ) { - if ( item ) { - found = filter( item, match, i, curLoop ); - var pass = not ^ !!found; - - if ( inplace && found != null ) { - if ( pass ) { - anyFound = true; - - } else { - curLoop[i] = false; - } - - } else if ( pass ) { - result.push( item ); - anyFound = true; - } - } - } - } - - if ( found !== undefined ) { - if ( !inplace ) { - curLoop = result; - } - - expr = expr.replace( Expr.match[ type ], "" ); - - if ( !anyFound ) { - return []; - } - - break; - } - } - } - - // Improper expression - if ( expr === old ) { - if ( anyFound == null ) { - Sizzle.error( expr ); - - } else { - break; - } - } - - old = expr; - } - - return curLoop; -}; - -Sizzle.error = function( msg ) { - throw "Syntax error, unrecognized expression: " + msg; -}; - -var Expr = Sizzle.selectors = { - order: [ "ID", "NAME", "TAG" ], - - match: { - ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/, - CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/, - NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/, - ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/, - TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/, - CHILD: /:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/, - POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/, - PSEUDO: /:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/ - }, - - leftMatch: {}, - - attrMap: { - "class": "className", - "for": "htmlFor" - }, - - attrHandle: { - href: function( elem ) { - return elem.getAttribute( "href" ); - }, - type: function( elem ) { - return elem.getAttribute( "type" ); - } - }, - - relative: { - "+": function(checkSet, part){ - var isPartStr = typeof part === "string", - isTag = isPartStr && !rNonWord.test( part ), - isPartStrNotTag = isPartStr && !isTag; - - if ( isTag ) { - part = part.toLowerCase(); - } - - for ( var i = 0, l = checkSet.length, elem; i < l; i++ ) { - if ( (elem = checkSet[i]) ) { - while ( (elem = elem.previousSibling) && elem.nodeType !== 1 ) {} - - checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part ? - elem || false : - elem === part; - } - } - - if ( isPartStrNotTag ) { - Sizzle.filter( part, checkSet, true ); - } - }, - - ">": function( checkSet, part ) { - var elem, - isPartStr = typeof part === "string", - i = 0, - l = checkSet.length; - - if ( isPartStr && !rNonWord.test( part ) ) { - part = part.toLowerCase(); - - for ( ; i < l; i++ ) { - elem = checkSet[i]; - - if ( elem ) { - var parent = elem.parentNode; - checkSet[i] = parent.nodeName.toLowerCase() === part ? parent : false; - } - } - - } else { - for ( ; i < l; i++ ) { - elem = checkSet[i]; - - if ( elem ) { - checkSet[i] = isPartStr ? - elem.parentNode : - elem.parentNode === part; - } - } - - if ( isPartStr ) { - Sizzle.filter( part, checkSet, true ); - } - } - }, - - "": function(checkSet, part, isXML){ - var nodeCheck, - doneName = done++, - checkFn = dirCheck; - - if ( typeof part === "string" && !rNonWord.test( part ) ) { - part = part.toLowerCase(); - nodeCheck = part; - checkFn = dirNodeCheck; - } - - checkFn( "parentNode", part, doneName, checkSet, nodeCheck, isXML ); - }, - - "~": function( checkSet, part, isXML ) { - var nodeCheck, - doneName = done++, - checkFn = dirCheck; - - if ( typeof part === "string" && !rNonWord.test( part ) ) { - part = part.toLowerCase(); - nodeCheck = part; - checkFn = dirNodeCheck; - } - - checkFn( "previousSibling", part, doneName, checkSet, nodeCheck, isXML ); - } - }, - - find: { - ID: function( match, context, isXML ) { - if ( typeof context.getElementById !== "undefined" && !isXML ) { - var m = context.getElementById(match[1]); - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - return m && m.parentNode ? [m] : []; - } - }, - - NAME: function( match, context ) { - if ( typeof context.getElementsByName !== "undefined" ) { - var ret = [], - results = context.getElementsByName( match[1] ); - - for ( var i = 0, l = results.length; i < l; i++ ) { - if ( results[i].getAttribute("name") === match[1] ) { - ret.push( results[i] ); - } - } - - return ret.length === 0 ? null : ret; - } - }, - - TAG: function( match, context ) { - if ( typeof context.getElementsByTagName !== "undefined" ) { - return context.getElementsByTagName( match[1] ); - } - } - }, - preFilter: { - CLASS: function( match, curLoop, inplace, result, not, isXML ) { - match = " " + match[1].replace( rBackslash, "" ) + " "; - - if ( isXML ) { - return match; - } - - for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) { - if ( elem ) { - if ( not ^ (elem.className && (" " + elem.className + " ").replace(/[\t\n\r]/g, " ").indexOf(match) >= 0) ) { - if ( !inplace ) { - result.push( elem ); - } - - } else if ( inplace ) { - curLoop[i] = false; - } - } - } - - return false; - }, - - ID: function( match ) { - return match[1].replace( rBackslash, "" ); - }, - - TAG: function( match, curLoop ) { - return match[1].replace( rBackslash, "" ).toLowerCase(); - }, - - CHILD: function( match ) { - if ( match[1] === "nth" ) { - if ( !match[2] ) { - Sizzle.error( match[0] ); - } - - match[2] = match[2].replace(/^\+|\s*/g, ''); - - // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6' - var test = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec( - match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" || - !/\D/.test( match[2] ) && "0n+" + match[2] || match[2]); - - // calculate the numbers (first)n+(last) including if they are negative - match[2] = (test[1] + (test[2] || 1)) - 0; - match[3] = test[3] - 0; - } - else if ( match[2] ) { - Sizzle.error( match[0] ); - } - - // TODO: Move to normal caching system - match[0] = done++; - - return match; - }, - - ATTR: function( match, curLoop, inplace, result, not, isXML ) { - var name = match[1] = match[1].replace( rBackslash, "" ); - - if ( !isXML && Expr.attrMap[name] ) { - match[1] = Expr.attrMap[name]; - } - - // Handle if an un-quoted value was used - match[4] = ( match[4] || match[5] || "" ).replace( rBackslash, "" ); - - if ( match[2] === "~=" ) { - match[4] = " " + match[4] + " "; - } - - return match; - }, - - PSEUDO: function( match, curLoop, inplace, result, not ) { - if ( match[1] === "not" ) { - // If we're dealing with a complex expression, or a simple one - if ( ( chunker.exec(match[3]) || "" ).length > 1 || /^\w/.test(match[3]) ) { - match[3] = Sizzle(match[3], null, null, curLoop); - - } else { - var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not); - - if ( !inplace ) { - result.push.apply( result, ret ); - } - - return false; - } - - } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) { - return true; - } - - return match; - }, - - POS: function( match ) { - match.unshift( true ); - - return match; - } - }, - - filters: { - enabled: function( elem ) { - return elem.disabled === false && elem.type !== "hidden"; - }, - - disabled: function( elem ) { - return elem.disabled === true; - }, - - checked: function( elem ) { - return elem.checked === true; - }, - - selected: function( elem ) { - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - parent: function( elem ) { - return !!elem.firstChild; - }, - - empty: function( elem ) { - return !elem.firstChild; - }, - - has: function( elem, i, match ) { - return !!Sizzle( match[3], elem ).length; - }, - - header: function( elem ) { - return (/h\d/i).test( elem.nodeName ); - }, - - text: function( elem ) { - // IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc) - // use getAttribute instead to test this case - return "text" === elem.getAttribute( 'type' ); - }, - radio: function( elem ) { - return "radio" === elem.type; - }, - - checkbox: function( elem ) { - return "checkbox" === elem.type; - }, - - file: function( elem ) { - return "file" === elem.type; - }, - password: function( elem ) { - return "password" === elem.type; - }, - - submit: function( elem ) { - return "submit" === elem.type; - }, - - image: function( elem ) { - return "image" === elem.type; - }, - - reset: function( elem ) { - return "reset" === elem.type; - }, - - button: function( elem ) { - return "button" === elem.type || elem.nodeName.toLowerCase() === "button"; - }, - - input: function( elem ) { - return (/input|select|textarea|button/i).test( elem.nodeName ); - } - }, - setFilters: { - first: function( elem, i ) { - return i === 0; - }, - - last: function( elem, i, match, array ) { - return i === array.length - 1; - }, - - even: function( elem, i ) { - return i % 2 === 0; - }, - - odd: function( elem, i ) { - return i % 2 === 1; - }, - - lt: function( elem, i, match ) { - return i < match[3] - 0; - }, - - gt: function( elem, i, match ) { - return i > match[3] - 0; - }, - - nth: function( elem, i, match ) { - return match[3] - 0 === i; - }, - - eq: function( elem, i, match ) { - return match[3] - 0 === i; - } - }, - filter: { - PSEUDO: function( elem, match, i, array ) { - var name = match[1], - filter = Expr.filters[ name ]; - - if ( filter ) { - return filter( elem, i, match, array ); - - } else if ( name === "contains" ) { - return (elem.textContent || elem.innerText || Sizzle.getText([ elem ]) || "").indexOf(match[3]) >= 0; - - } else if ( name === "not" ) { - var not = match[3]; - - for ( var j = 0, l = not.length; j < l; j++ ) { - if ( not[j] === elem ) { - return false; - } - } - - return true; - - } else { - Sizzle.error( name ); - } - }, - - CHILD: function( elem, match ) { - var type = match[1], - node = elem; - - switch ( type ) { - case "only": - case "first": - while ( (node = node.previousSibling) ) { - if ( node.nodeType === 1 ) { - return false; - } - } - - if ( type === "first" ) { - return true; - } - - node = elem; - - case "last": - while ( (node = node.nextSibling) ) { - if ( node.nodeType === 1 ) { - return false; - } - } - - return true; - - case "nth": - var first = match[2], - last = match[3]; - - if ( first === 1 && last === 0 ) { - return true; - } - - var doneName = match[0], - parent = elem.parentNode; - - if ( parent && (parent.sizcache !== doneName || !elem.nodeIndex) ) { - var count = 0; - - for ( node = parent.firstChild; node; node = node.nextSibling ) { - if ( node.nodeType === 1 ) { - node.nodeIndex = ++count; - } - } - - parent.sizcache = doneName; - } - - var diff = elem.nodeIndex - last; - - if ( first === 0 ) { - return diff === 0; - - } else { - return ( diff % first === 0 && diff / first >= 0 ); - } - } - }, - - ID: function( elem, match ) { - return elem.nodeType === 1 && elem.getAttribute("id") === match; - }, - - TAG: function( elem, match ) { - return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match; - }, - - CLASS: function( elem, match ) { - return (" " + (elem.className || elem.getAttribute("class")) + " ") - .indexOf( match ) > -1; - }, - - ATTR: function( elem, match ) { - var name = match[1], - result = Expr.attrHandle[ name ] ? - Expr.attrHandle[ name ]( elem ) : - elem[ name ] != null ? - elem[ name ] : - elem.getAttribute( name ), - value = result + "", - type = match[2], - check = match[4]; - - return result == null ? - type === "!=" : - type === "=" ? - value === check : - type === "*=" ? - value.indexOf(check) >= 0 : - type === "~=" ? - (" " + value + " ").indexOf(check) >= 0 : - !check ? - value && result !== false : - type === "!=" ? - value !== check : - type === "^=" ? - value.indexOf(check) === 0 : - type === "$=" ? - value.substr(value.length - check.length) === check : - type === "|=" ? - value === check || value.substr(0, check.length + 1) === check + "-" : - false; - }, - - POS: function( elem, match, i, array ) { - var name = match[2], - filter = Expr.setFilters[ name ]; - - if ( filter ) { - return filter( elem, i, match, array ); - } - } - } -}; - -var origPOS = Expr.match.POS, - fescape = function(all, num){ - return "\\" + (num - 0 + 1); - }; - -for ( var type in Expr.match ) { - Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) ); - Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) ); -} - -var makeArray = function( array, results ) { - array = Array.prototype.slice.call( array, 0 ); - - if ( results ) { - results.push.apply( results, array ); - return results; - } - - return array; -}; - -// Perform a simple check to determine if the browser is capable of -// converting a NodeList to an array using builtin methods. -// Also verifies that the returned array holds DOM nodes -// (which is not the case in the Blackberry browser) -try { - Array.prototype.slice.call( document.documentElement.childNodes, 0 )[0].nodeType; - -// Provide a fallback method if it does not work -} catch( e ) { - makeArray = function( array, results ) { - var i = 0, - ret = results || []; - - if ( toString.call(array) === "[object Array]" ) { - Array.prototype.push.apply( ret, array ); - - } else { - if ( typeof array.length === "number" ) { - for ( var l = array.length; i < l; i++ ) { - ret.push( array[i] ); - } - - } else { - for ( ; array[i]; i++ ) { - ret.push( array[i] ); - } - } - } - - return ret; - }; -} - -var sortOrder, siblingCheck; - -if ( document.documentElement.compareDocumentPosition ) { - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) { - return a.compareDocumentPosition ? -1 : 1; - } - - return a.compareDocumentPosition(b) & 4 ? -1 : 1; - }; - -} else { - sortOrder = function( a, b ) { - var al, bl, - ap = [], - bp = [], - aup = a.parentNode, - bup = b.parentNode, - cur = aup; - - // The nodes are identical, we can exit early - if ( a === b ) { - hasDuplicate = true; - return 0; - - // If the nodes are siblings (or identical) we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - - // If no parents were found then the nodes are disconnected - } else if ( !aup ) { - return -1; - - } else if ( !bup ) { - return 1; - } - - // Otherwise they're somewhere else in the tree so we need - // to build up a full list of the parentNodes for comparison - while ( cur ) { - ap.unshift( cur ); - cur = cur.parentNode; - } - - cur = bup; - - while ( cur ) { - bp.unshift( cur ); - cur = cur.parentNode; - } - - al = ap.length; - bl = bp.length; - - // Start walking down the tree looking for a discrepancy - for ( var i = 0; i < al && i < bl; i++ ) { - if ( ap[i] !== bp[i] ) { - return siblingCheck( ap[i], bp[i] ); - } - } - - // We ended someplace up the tree so do a sibling check - return i === al ? - siblingCheck( a, bp[i], -1 ) : - siblingCheck( ap[i], b, 1 ); - }; - - siblingCheck = function( a, b, ret ) { - if ( a === b ) { - return ret; - } - - var cur = a.nextSibling; - - while ( cur ) { - if ( cur === b ) { - return -1; - } - - cur = cur.nextSibling; - } - - return 1; - }; -} - -// Utility function for retreiving the text value of an array of DOM nodes -Sizzle.getText = function( elems ) { - var ret = "", elem; - - for ( var i = 0; elems[i]; i++ ) { - elem = elems[i]; - - // Get the text from text nodes and CDATA nodes - if ( elem.nodeType === 3 || elem.nodeType === 4 ) { - ret += elem.nodeValue; - - // Traverse everything else, except comment nodes - } else if ( elem.nodeType !== 8 ) { - ret += Sizzle.getText( elem.childNodes ); - } - } - - return ret; -}; - -// Check to see if the browser returns elements by name when -// querying by getElementById (and provide a workaround) -(function(){ - // We're going to inject a fake input element with a specified name - var form = document.createElement("div"), - id = "script" + (new Date()).getTime(), - root = document.documentElement; - - form.innerHTML = ""; - - // Inject it into the root element, check its status, and remove it quickly - root.insertBefore( form, root.firstChild ); - - // The workaround has to do additional checks after a getElementById - // Which slows things down for other browsers (hence the branching) - if ( document.getElementById( id ) ) { - Expr.find.ID = function( match, context, isXML ) { - if ( typeof context.getElementById !== "undefined" && !isXML ) { - var m = context.getElementById(match[1]); - - return m ? - m.id === match[1] || typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id").nodeValue === match[1] ? - [m] : - undefined : - []; - } - }; - - Expr.filter.ID = function( elem, match ) { - var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id"); - - return elem.nodeType === 1 && node && node.nodeValue === match; - }; - } - - root.removeChild( form ); - - // release memory in IE - root = form = null; -})(); - -(function(){ - // Check to see if the browser returns only elements - // when doing getElementsByTagName("*") - - // Create a fake element - var div = document.createElement("div"); - div.appendChild( document.createComment("") ); - - // Make sure no comments are found - if ( div.getElementsByTagName("*").length > 0 ) { - Expr.find.TAG = function( match, context ) { - var results = context.getElementsByTagName( match[1] ); - - // Filter out possible comments - if ( match[1] === "*" ) { - var tmp = []; - - for ( var i = 0; results[i]; i++ ) { - if ( results[i].nodeType === 1 ) { - tmp.push( results[i] ); - } - } - - results = tmp; - } - - return results; - }; - } - - // Check to see if an attribute returns normalized href attributes - div.innerHTML = ""; - - if ( div.firstChild && typeof div.firstChild.getAttribute !== "undefined" && - div.firstChild.getAttribute("href") !== "#" ) { - - Expr.attrHandle.href = function( elem ) { - return elem.getAttribute( "href", 2 ); - }; - } - - // release memory in IE - div = null; -})(); - -if ( document.querySelectorAll ) { - (function(){ - var oldSizzle = Sizzle, - div = document.createElement("div"), - id = "__sizzle__"; - - div.innerHTML = "

    "; - - // Safari can't handle uppercase or unicode characters when - // in quirks mode. - if ( div.querySelectorAll && div.querySelectorAll(".TEST").length === 0 ) { - return; - } - - Sizzle = function( query, context, extra, seed ) { - context = context || document; - - // Only use querySelectorAll on non-XML documents - // (ID selectors don't work in non-HTML documents) - if ( !seed && !Sizzle.isXML(context) ) { - // See if we find a selector to speed up - var match = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec( query ); - - if ( match && (context.nodeType === 1 || context.nodeType === 9) ) { - // Speed-up: Sizzle("TAG") - if ( match[1] ) { - return makeArray( context.getElementsByTagName( query ), extra ); - - // Speed-up: Sizzle(".CLASS") - } else if ( match[2] && Expr.find.CLASS && context.getElementsByClassName ) { - return makeArray( context.getElementsByClassName( match[2] ), extra ); - } - } - - if ( context.nodeType === 9 ) { - // Speed-up: Sizzle("body") - // The body element only exists once, optimize finding it - if ( query === "body" && context.body ) { - return makeArray( [ context.body ], extra ); - - // Speed-up: Sizzle("#ID") - } else if ( match && match[3] ) { - var elem = context.getElementById( match[3] ); - - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - if ( elem && elem.parentNode ) { - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id === match[3] ) { - return makeArray( [ elem ], extra ); - } - - } else { - return makeArray( [], extra ); - } - } - - try { - return makeArray( context.querySelectorAll(query), extra ); - } catch(qsaError) {} - - // qSA works strangely on Element-rooted queries - // We can work around this by specifying an extra ID on the root - // and working up from there (Thanks to Andrew Dupont for the technique) - // IE 8 doesn't work on object elements - } else if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) { - var oldContext = context, - old = context.getAttribute( "id" ), - nid = old || id, - hasParent = context.parentNode, - relativeHierarchySelector = /^\s*[+~]/.test( query ); - - if ( !old ) { - context.setAttribute( "id", nid ); - } else { - nid = nid.replace( /'/g, "\\$&" ); - } - if ( relativeHierarchySelector && hasParent ) { - context = context.parentNode; - } - - try { - if ( !relativeHierarchySelector || hasParent ) { - return makeArray( context.querySelectorAll( "[id='" + nid + "'] " + query ), extra ); - } - - } catch(pseudoError) { - } finally { - if ( !old ) { - oldContext.removeAttribute( "id" ); - } - } - } - } - - return oldSizzle(query, context, extra, seed); - }; - - for ( var prop in oldSizzle ) { - Sizzle[ prop ] = oldSizzle[ prop ]; - } - - // release memory in IE - div = null; - })(); -} - -(function(){ - var html = document.documentElement, - matches = html.matchesSelector || html.mozMatchesSelector || html.webkitMatchesSelector || html.msMatchesSelector, - pseudoWorks = false; - - try { - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( document.documentElement, "[test!='']:sizzle" ); - - } catch( pseudoError ) { - pseudoWorks = true; - } - - if ( matches ) { - Sizzle.matchesSelector = function( node, expr ) { - // Make sure that attribute selectors are quoted - expr = expr.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']"); - - if ( !Sizzle.isXML( node ) ) { - try { - if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) && !/!=/.test( expr ) ) { - return matches.call( node, expr ); - } - } catch(e) {} - } - - return Sizzle(expr, null, null, [node]).length > 0; - }; - } -})(); - -(function(){ - var div = document.createElement("div"); - - div.innerHTML = "
    "; - - // Opera can't find a second classname (in 9.6) - // Also, make sure that getElementsByClassName actually exists - if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) { - return; - } - - // Safari caches class attributes, doesn't catch changes (in 3.2) - div.lastChild.className = "e"; - - if ( div.getElementsByClassName("e").length === 1 ) { - return; - } - - Expr.order.splice(1, 0, "CLASS"); - Expr.find.CLASS = function( match, context, isXML ) { - if ( typeof context.getElementsByClassName !== "undefined" && !isXML ) { - return context.getElementsByClassName(match[1]); - } - }; - - // release memory in IE - div = null; -})(); - -function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { - for ( var i = 0, l = checkSet.length; i < l; i++ ) { - var elem = checkSet[i]; - - if ( elem ) { - var match = false; - - elem = elem[dir]; - - while ( elem ) { - if ( elem.sizcache === doneName ) { - match = checkSet[elem.sizset]; - break; - } - - if ( elem.nodeType === 1 && !isXML ){ - elem.sizcache = doneName; - elem.sizset = i; - } - - if ( elem.nodeName.toLowerCase() === cur ) { - match = elem; - break; - } - - elem = elem[dir]; - } - - checkSet[i] = match; - } - } -} - -function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { - for ( var i = 0, l = checkSet.length; i < l; i++ ) { - var elem = checkSet[i]; - - if ( elem ) { - var match = false; - - elem = elem[dir]; - - while ( elem ) { - if ( elem.sizcache === doneName ) { - match = checkSet[elem.sizset]; - break; - } - - if ( elem.nodeType === 1 ) { - if ( !isXML ) { - elem.sizcache = doneName; - elem.sizset = i; - } - - if ( typeof cur !== "string" ) { - if ( elem === cur ) { - match = true; - break; - } - - } else if ( Sizzle.filter( cur, [elem] ).length > 0 ) { - match = elem; - break; - } - } - - elem = elem[dir]; - } - - checkSet[i] = match; - } - } -} - -if ( document.documentElement.contains ) { - Sizzle.contains = function( a, b ) { - return a !== b && (a.contains ? a.contains(b) : true); - }; - -} else if ( document.documentElement.compareDocumentPosition ) { - Sizzle.contains = function( a, b ) { - return !!(a.compareDocumentPosition(b) & 16); - }; - -} else { - Sizzle.contains = function() { - return false; - }; -} - -Sizzle.isXML = function( elem ) { - // documentElement is verified for cases where it doesn't yet exist - // (such as loading iframes in IE - #4833) - var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement; - - return documentElement ? documentElement.nodeName !== "HTML" : false; -}; - -var posProcess = function( selector, context ) { - var match, - tmpSet = [], - later = "", - root = context.nodeType ? [context] : context; - - // Position selectors must be done after the filter - // And so must :not(positional) so we move all PSEUDOs to the end - while ( (match = Expr.match.PSEUDO.exec( selector )) ) { - later += match[0]; - selector = selector.replace( Expr.match.PSEUDO, "" ); - } - - selector = Expr.relative[selector] ? selector + "*" : selector; - - for ( var i = 0, l = root.length; i < l; i++ ) { - Sizzle( selector, root[i], tmpSet ); - } - - return Sizzle.filter( later, tmpSet ); -}; - -// EXPOSE -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; -jQuery.expr[":"] = jQuery.expr.filters; -jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; - - -})(); - - -var runtil = /Until$/, - rparentsprev = /^(?:parents|prevUntil|prevAll)/, - // Note: This RegExp should be improved, or likely pulled from Sizzle - rmultiselector = /,/, - isSimple = /^.[^:#\[\.,]*$/, - slice = Array.prototype.slice, - POS = jQuery.expr.match.POS, - // methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.fn.extend({ - find: function( selector ) { - var ret = this.pushStack( "", "find", selector ), - length = 0; - - for ( var 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 ( var n = length; n < ret.length; n++ ) { - for ( var r = 0; r < length; r++ ) { - if ( ret[r] === ret[n] ) { - ret.splice(n--, 1); - break; - } - } - } - } - } - - return ret; - }, - - has: function( target ) { - var targets = jQuery( target ); - return this.filter(function() { - for ( var i = 0, l = targets.length; i < l; i++ ) { - if ( jQuery.contains( this, targets[i] ) ) { - return true; - } - } - }); - }, - - not: function( selector ) { - return this.pushStack( winnow(this, selector, false), "not", selector); - }, - - filter: function( selector ) { - return this.pushStack( winnow(this, selector, true), "filter", selector ); - }, - - is: function( selector ) { - return !!selector && jQuery.filter( selector, this ).length > 0; - }, - - closest: function( selectors, context ) { - var ret = [], i, l, cur = this[0]; - - if ( jQuery.isArray( selectors ) ) { - var match, selector, - matches = {}, - level = 1; - - if ( cur && selectors.length ) { - for ( i = 0, l = selectors.length; i < l; i++ ) { - selector = selectors[i]; - - if ( !matches[selector] ) { - matches[selector] = jQuery.expr.match.POS.test( selector ) ? - jQuery( selector, context || this.context ) : - selector; - } - } - - while ( cur && cur.ownerDocument && cur !== context ) { - for ( selector in matches ) { - match = matches[selector]; - - if ( match.jquery ? match.index(cur) > -1 : jQuery(cur).is(match) ) { - ret.push({ selector: selector, elem: cur, level: level }); - } - } - - cur = cur.parentNode; - level++; - } - } - - return ret; - } - - var pos = POS.test( selectors ) ? - jQuery( selectors, context || this.context ) : null; - - for ( i = 0, l = this.length; i < l; i++ ) { - cur = this[i]; - - while ( cur ) { - if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) { - ret.push( cur ); - break; - - } else { - cur = cur.parentNode; - if ( !cur || !cur.ownerDocument || cur === context ) { - break; - } - } - } - } - - ret = ret.length > 1 ? jQuery.unique(ret) : ret; - - return this.pushStack( ret, "closest", selectors ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - if ( !elem || typeof elem === "string" ) { - return jQuery.inArray( this[0], - // If it receives a string, the selector is used - // If it receives nothing, the siblings are used - elem ? jQuery( elem ) : this.parent().children() ); - } - // 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 ), - all = jQuery.merge( this.get(), set ); - - return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ? - all : - jQuery.unique( all ) ); - }, - - andSelf: function() { - return this.add( this.prevObject ); - } -}); - -// A painfully simple check to see if an element is disconnected -// from a document (should be improved, where feasible). -function isDisconnected( node ) { - return !node || !node.parentNode || node.parentNode.nodeType === 11; -} - -jQuery.each({ - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return jQuery.dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, i, until ) { - return jQuery.dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return jQuery.nth( elem, 2, "nextSibling" ); - }, - prev: function( elem ) { - return jQuery.nth( elem, 2, "previousSibling" ); - }, - nextAll: function( elem ) { - return jQuery.dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return jQuery.dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, i, until ) { - return jQuery.dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, i, until ) { - return jQuery.dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return jQuery.sibling( elem.parentNode.firstChild, elem ); - }, - children: function( elem ) { - return jQuery.sibling( elem.firstChild ); - }, - contents: function( elem ) { - return jQuery.nodeName( elem, "iframe" ) ? - elem.contentDocument || elem.contentWindow.document : - jQuery.makeArray( elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var ret = jQuery.map( this, fn, until ), - // The variable 'args' was introduced in - // https://github.com/jquery/jquery/commit/52a0238 - // to work around a bug in Chrome 10 (Dev) and should be removed when the bug is fixed. - // http://code.google.com/p/v8/issues/detail?id=1050 - args = slice.call(arguments); - - if ( !runtil.test( name ) ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - ret = jQuery.filter( selector, ret ); - } - - ret = this.length > 1 && !guaranteedUnique[ name ] ? jQuery.unique( ret ) : ret; - - if ( (this.length > 1 || rmultiselector.test( selector )) && rparentsprev.test( name ) ) { - ret = ret.reverse(); - } - - return this.pushStack( ret, name, args.join(",") ); - }; -}); - -jQuery.extend({ - filter: function( expr, elems, not ) { - if ( not ) { - expr = ":not(" + expr + ")"; - } - - return elems.length === 1 ? - jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] : - jQuery.find.matches(expr, elems); - }, - - dir: function( elem, dir, until ) { - var matched = [], - cur = elem[ dir ]; - - while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) { - if ( cur.nodeType === 1 ) { - matched.push( cur ); - } - cur = cur[dir]; - } - return matched; - }, - - nth: function( cur, result, dir, elem ) { - result = result || 1; - var num = 0; - - for ( ; cur; cur = cur[dir] ) { - if ( cur.nodeType === 1 && ++num === result ) { - break; - } - } - - return cur; - }, - - sibling: function( n, elem ) { - var r = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - r.push( n ); - } - } - - return r; - } -}); - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, keep ) { - if ( jQuery.isFunction( qualifier ) ) { - return jQuery.grep(elements, function( elem, i ) { - var retVal = !!qualifier.call( elem, i, elem ); - return retVal === keep; - }); - - } else if ( qualifier.nodeType ) { - return jQuery.grep(elements, function( elem, i ) { - return (elem === qualifier) === keep; - }); - - } else if ( typeof qualifier === "string" ) { - var filtered = jQuery.grep(elements, function( elem ) { - return elem.nodeType === 1; - }); - - if ( isSimple.test( qualifier ) ) { - return jQuery.filter(qualifier, filtered, !keep); - } else { - qualifier = jQuery.filter( qualifier, filtered ); - } - } - - return jQuery.grep(elements, function( elem, i ) { - return (jQuery.inArray( elem, qualifier ) >= 0) === keep; - }); -} - - - - -var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g, - rleadingWhitespace = /^\s+/, - rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig, - rtagName = /<([\w:]+)/, - rtbody = /", "" ], - legend: [ 1, "
    ", "
    " ], - thead: [ 1, "", "
    " ], - tr: [ 2, "", "
    " ], - td: [ 3, "", "
    " ], - col: [ 2, "", "
    " ], - area: [ 1, "", "" ], - _default: [ 0, "", "" ] - }; - -wrapMap.optgroup = wrapMap.option; -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - -// IE can't serialize and ."; - } - }; - - _pageWindow.load(function () { _pageLoaded = true; }); - - signalR.fn = signalR.prototype = { - init: function (url, qs, logging) { - this.url = url; - this.qs = qs; - if (typeof (logging) === "boolean") { - this.logging = logging; - } - }, - - ajaxDataType: "json", - - logging: false, - - state: signalR.connectionState.disconnected, - - reconnectDelay: 2000, - - start: function (options, callback) { - /// Starts the connection - /// Options map - /// A callback function to execute when the connection has started - var connection = this, - config = { - waitForPageLoad: true, - transport: "auto", - jsonp: false - }, - initialize, - deferred = connection.deferral || $.Deferred(),// Check to see if there is a pre-existing deferral that's being built on, if so we want to keep using it - parser = window.document.createElement("a"); - - if ($.type(options) === "function") { - // Support calling with single callback parameter - callback = options; - } else if ($.type(options) === "object") { - $.extend(config, options); - if ($.type(config.callback) === "function") { - callback = config.callback; - } - } - - // Check to see if start is being called prior to page load - // If waitForPageLoad is true we then want to re-direct function call to the window load event - if (!_pageLoaded && config.waitForPageLoad === true) { - _pageWindow.load(function () { - connection.deferral = deferred; - connection.start(options, callback); - }); - return deferred.promise(); - } - - if (changeState(connection, - signalR.connectionState.disconnected, - signalR.connectionState.connecting) === false) { - // Already started, just return - deferred.resolve(connection); - return deferred.promise(); - } - - // Resolve the full url - parser.href = connection.url; - if (!parser.protocol || parser.protocol === ":") { - connection.protocol = window.document.location.protocol; - connection.host = window.document.location.host; - connection.baseUrl = connection.protocol + "//" + connection.host; - } - else { - connection.protocol = parser.protocol; - connection.host = parser.host; - connection.baseUrl = parser.protocol + "//" + parser.host; - } - - // Set the websocket protocol - connection.wsProtocol = connection.protocol === "https:" ? "wss://" : "ws://"; - - if (isCrossDomain(connection.url)) { - connection.log("Auto detected cross domain url."); - - if (config.transport === "auto") { - // If you didn't say you wanted to use jsonp, determine if it's your only choice - // i.e. if your browser doesn't supports CORS - if (!config.jsonp) { - config.jsonp = !$.support.cors; - - if (config.jsonp) { - connection.log("Using jsonp because this browser doesn't support CORS"); - } - } - - // If we're using jsonp thn just change to longpolling - if (config.jsonp === true) { - config.transport = "longPolling"; - } - else { - // Otherwise try webSockets and longPolling since SSE doesn't support CORS - // TODO: Support XDM with foreverFrame - config.transport = ["webSockets", "longPolling"]; - } - } - } - - connection.ajaxDataType = config.jsonp ? "jsonp" : "json"; - - $(connection).bind(events.onStart, function (e, data) { - if ($.type(callback) === "function") { - callback.call(connection); - } - deferred.resolve(connection); - }); - - initialize = function (transports, index) { - index = index || 0; - if (index >= transports.length) { - if (!connection.transport) { - // No transport initialized successfully - $(connection).trigger(events.onError, "SignalR: No transport could be initialized successfully. Try specifying a different transport or none at all for auto initialization."); - deferred.reject("SignalR: No transport could be initialized successfully. Try specifying a different transport or none at all for auto initialization."); - // Stop the connection if it has connected and move it into the disconnected state - connection.stop(); - } - return; - } - - var transportName = transports[index], - transport = $.type(transportName) === "object" ? transportName : signalR.transports[transportName]; - - if (transportName.indexOf("_") === 0) { - // Private member - initialize(transports, index + 1); - return; - } - - transport.start(connection, function () { // success - connection.transport = transport; - - changeState(connection, - signalR.connectionState.connecting, - signalR.connectionState.connected); - - $(connection).trigger(events.onStart); - - _pageWindow.unload(function () { // failure - connection.stop(false /* async */); - }); - - }, function () { - initialize(transports, index + 1); - }); - }; - - var url = connection.url + "/negotiate"; - connection.log("Negotiating with '" + url + "'."); - $.ajax({ - url: url, - global: false, - cache: false, - type: "GET", - data: {}, - dataType: connection.ajaxDataType, - error: function (error) { - $(connection).trigger(events.onError, [error.responseText]); - deferred.reject("SignalR: Error during negotiation request: " + error.responseText); - // Stop the connection if negotiate failed - connection.stop(); - }, - success: function (res) { - connection.appRelativeUrl = res.Url; - connection.id = res.ConnectionId; - connection.webSocketServerUrl = res.WebSocketServerUrl; - - if (!res.ProtocolVersion || res.ProtocolVersion !== "1.0") { - $(connection).trigger(events.onError, "SignalR: Incompatible protocol version."); - deferred.reject("SignalR: Incompatible protocol version."); - return; - } - - $(connection).trigger(events.onStarting); - - var transports = [], - supportedTransports = []; - - $.each(signalR.transports, function (key) { - if (key === "webSockets" && !res.TryWebSockets) { - // Server said don't even try WebSockets, but keep processing the loop - return true; - } - supportedTransports.push(key); - }); - - if ($.isArray(config.transport)) { - // ordered list provided - $.each(config.transport, function () { - var transport = this; - if ($.type(transport) === "object" || ($.type(transport) === "string" && $.inArray("" + transport, supportedTransports) >= 0)) { - transports.push($.type(transport) === "string" ? "" + transport : transport); - } - }); - } else if ($.type(config.transport) === "object" || - $.inArray(config.transport, supportedTransports) >= 0) { - // specific transport provided, as object or a named transport, e.g. "longPolling" - transports.push(config.transport); - } else { // default "auto" - transports = supportedTransports; - } - initialize(transports); - } - }); - - return deferred.promise(); - }, - - starting: function (callback) { - /// Adds a callback that will be invoked before the connection is started - /// A callback function to execute when the connection is starting - /// - var connection = this, - $connection = $(connection); - - $connection.bind(events.onStarting, function (e, data) { - callback.call(connection); - // Unbind immediately, we don't want to call this callback again - $connection.unbind(events.onStarting); - }); - - return connection; - }, - - send: function (data) { - /// Sends data over the connection - /// The data to send over the connection - /// - var connection = this; - - if (connection.state === signalR.connectionState.disconnected) { - // Connection hasn't been started yet - throw "SignalR: Connection must be started before data can be sent. Call .start() before .send()"; - } - - if (connection.state === signalR.connectionState.connecting) { - // Connection hasn't been started yet - throw "SignalR: Connection has not been fully initialized. Use .start().done() or .start().fail() to run logic after the connection has started."; - } - - connection.transport.send(connection, data); - // REVIEW: Should we return deferred here? - return connection; - }, - - sending: function (callback) { - /// Adds a callback that will be invoked before anything is sent over the connection - /// A callback function to execute before each time data is sent on the connection - /// - var connection = this; - $(connection).bind(events.onSending, function (e, data) { - callback.call(connection); - }); - return connection; - }, - - received: function (callback) { - /// Adds a callback that will be invoked after anything is received over the connection - /// A callback function to execute when any data is received on the connection - /// - var connection = this; - $(connection).bind(events.onReceived, function (e, data) { - callback.call(connection, data); - }); - return connection; - }, - - stateChanged: function (callback) { - /// Adds a callback that will be invoked when the connection state changes - /// A callback function to execute when the connection state changes - /// - var connection = this; - $(connection).bind(events.onStateChanged, function (e, data) { - callback.call(connection, data); - }); - return connection; - }, - - error: function (callback) { - /// Adds a callback that will be invoked after an error occurs with the connection - /// A callback function to execute when an error occurs on the connection - /// - var connection = this; - $(connection).bind(events.onError, function (e, data) { - callback.call(connection, data); - }); - return connection; - }, - - disconnected: function (callback) { - /// Adds a callback that will be invoked when the client disconnects - /// A callback function to execute when the connection is broken - /// - var connection = this; - $(connection).bind(events.onDisconnect, function (e, data) { - callback.call(connection); - }); - return connection; - }, - - reconnected: function (callback) { - /// Adds a callback that will be invoked when the underlying transport reconnects - /// A callback function to execute when the connection is restored - /// - var connection = this; - $(connection).bind(events.onReconnect, function (e, data) { - callback.call(connection); - }); - return connection; - }, - - stop: function (async) { - /// Stops listening - /// - var connection = this; - - if (connection.state === signalR.connectionState.disconnected) { - return; - } - - try { - if (connection.transport) { - connection.transport.abort(connection, async); - connection.transport.stop(connection); - connection.transport = null; - } - - // Trigger the disconnect event - $(connection).trigger(events.onDisconnect); - - delete connection.messageId; - delete connection.groups; - } - finally { - changeState(connection, connection.state, signalR.connectionState.disconnected); - } - - return connection; - }, - - log: function (msg) { - log(msg, this.logging); - } - }; - - signalR.fn.init.prototype = signalR.fn; - - signalR.noConflict = function () { - /// Reinstates the original value of $.connection and returns the signalR object for manual assignment - /// - if ($.connection === signalR) { - $.connection = _connection; - } - return signalR; - }; - - if ($.connection) { - _connection = $.connection; - } - - $.connection = $.signalR = signalR; - -}(window.jQuery, window)); -/* jquery.signalR.transports.common.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - var signalR = $.signalR, - events = $.signalR.events; - - signalR.transports = {}; - - signalR.transports._logic = { - addQs: function (url, connection) { - if (!connection.qs) { - return url; - } - - if (typeof (connection.qs) === "object") { - return url + "&" + $.param(connection.qs); - } - - if (typeof (connection.qs) === "string") { - return url + "&" + connection.qs; - } - - return url + "&" + window.escape(connection.qs.toString()); - }, - - getUrl: function (connection, transport, reconnecting, appendReconnectUrl) { - /// Gets the url for making a GET based connect request - var baseUrl = transport === "webSockets" ? "" : connection.baseUrl, - url = baseUrl + connection.appRelativeUrl, - qs = "transport=" + transport + "&connectionId=" + window.escape(connection.id); - - if (connection.data) { - qs += "&connectionData=" + window.escape(connection.data); - } - - if (!reconnecting) { - url = url + "/connect"; - } else { - if (appendReconnectUrl) { - url = url + "/reconnect"; - } - if (connection.messageId) { - qs += "&messageId=" + connection.messageId; - } - if (connection.groups) { - qs += "&groups=" + window.escape(JSON.stringify(connection.groups)); - } - } - url += "?" + qs; - url = this.addQs(url, connection); - url += "&tid=" + Math.floor(Math.random() * 11); - return url; - }, - - ajaxSend: function (connection, data) { - var url = connection.url + "/send" + "?transport=" + connection.transport.name + "&connectionId=" + window.escape(connection.id); - url = this.addQs(url, connection); - return $.ajax({ - url: url, - global: false, - type: "POST", - dataType: connection.ajaxDataType, - data: { - data: data - }, - success: function (result) { - if (result) { - $(connection).trigger(events.onReceived, [result]); - } - }, - error: function (errData, textStatus) { - if (textStatus === "abort" || - (textStatus === "parsererror" && connection.ajaxDataType === "jsonp")) { - // The parsererror happens for sends that don't return any data, and hence - // don't write the jsonp callback to the response. This is harder to fix on the server - // so just hack around it on the client for now. - return; - } - $(connection).trigger(events.onError, [errData]); - } - }); - }, - - ajaxAbort: function (connection, async) { - if (typeof (connection.transport) === "undefined") { - return; - } - - // Async by default unless explicitly overidden - async = typeof async === "undefined" ? true : async; - - var url = connection.url + "/abort" + "?transport=" + connection.transport.name + "&connectionId=" + window.escape(connection.id); - url = this.addQs(url, connection); - $.ajax({ - url: url, - async: async, - timeout: 1000, - global: false, - type: "POST", - dataType: connection.ajaxDataType, - data: {} - }); - - connection.log("Fired ajax abort async = " + async); - }, - - processMessages: function (connection, data) { - var $connection = $(connection); - - if (!data) { - return; - } - - if (data.Disconnect) { - connection.log("Disconnect command received from server"); - - // Disconnected by the server - connection.stop(); - return; - } - - if (data.Messages) { - $.each(data.Messages, function () { - try { - $connection.trigger(events.onReceived, [this]); - } - catch (e) { - connection.log("Error raising received " + e); - $(connection).trigger(events.onError, [e]); - } - }); - } - - if (data.MessageId) { - connection.messageId = data.MessageId; - } - - if (data.TransportData) { - connection.groups = data.TransportData.Groups; - } - }, - - foreverFrame: { - count: 0, - connections: {} - } - }; - -}(window.jQuery, window)); -/* jquery.signalR.transports.webSockets.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - var signalR = $.signalR, - events = $.signalR.events, - changeState = $.signalR.changeState, - transportLogic = signalR.transports._logic; - - signalR.transports.webSockets = { - name: "webSockets", - - send: function (connection, data) { - connection.socket.send(data); - }, - - start: function (connection, onSuccess, onFailed) { - var url, - opened = false, - that = this, - reconnecting = !onSuccess, - $connection = $(connection); - - if (window.MozWebSocket) { - window.WebSocket = window.MozWebSocket; - } - - if (!window.WebSocket) { - onFailed(); - return; - } - - if (!connection.socket) { - if (connection.webSocketServerUrl) { - url = connection.webSocketServerUrl; - } - else { - url = connection.wsProtocol + connection.host; - } - - // Build the url - $(connection).trigger(events.onSending); - - url += transportLogic.getUrl(connection, this.name, reconnecting); - - connection.log("Connecting to websocket endpoint '" + url + "'"); - connection.socket = new window.WebSocket(url); - connection.socket.onopen = function () { - opened = true; - connection.log("Websocket opened"); - if (onSuccess) { - onSuccess(); - } - else { - if (changeState(connection, - signalR.connectionState.reconnecting, - signalR.connectionState.connected) === true) { - $connection.trigger(events.onReconnect); - } - } - }; - - connection.socket.onclose = function (event) { - if (!opened) { - if (onFailed) { - onFailed(); - } - else if (reconnecting) { - that.reconnect(connection); - } - return; - } - else if (typeof event.wasClean !== "undefined" && event.wasClean === false) { - // Ideally this would use the websocket.onerror handler (rather than checking wasClean in onclose) but - // I found in some circumstances Chrome won't call onerror. This implementation seems to work on all browsers. - $(connection).trigger(events.onError, [event.reason]); - connection.log("Unclean disconnect from websocket." + event.reason); - } - else { - connection.log("Websocket closed"); - } - - that.reconnect(connection); - }; - - connection.socket.onmessage = function (event) { - var data = window.JSON.parse(event.data), - $connection; - if (data) { - $connection = $(connection); - - if (data.Messages) { - transportLogic.processMessages(connection, data); - } else { - $connection.trigger(events.onReceived, [data]); - } - } - }; - } - }, - - reconnect: function (connection) { - var that = this; - window.setTimeout(function () { - that.stop(connection); - - if (connection.state === signalR.connectionState.reconnecting || - changeState(connection, - signalR.connectionState.connected, - signalR.connectionState.reconnecting) === true) { - - connection.log("Websocket reconnecting"); - that.start(connection); - } - }, - connection.reconnectDelay); - }, - - stop: function (connection) { - if (connection.socket !== null) { - connection.log("Closing the Websocket"); - connection.socket.close(); - connection.socket = null; - } - }, - - abort: function (connection) { - } - }; - -}(window.jQuery, window)); -/* jquery.signalR.transports.serverSentEvents.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - var signalR = $.signalR, - events = $.signalR.events, - changeState = $.signalR.changeState, - transportLogic = signalR.transports._logic; - - signalR.transports.serverSentEvents = { - name: "serverSentEvents", - - timeOut: 3000, - - start: function (connection, onSuccess, onFailed) { - var that = this, - opened = false, - $connection = $(connection), - reconnecting = !onSuccess, - url, - connectTimeOut; - - if (connection.eventSource) { - connection.log("The connection already has an event source. Stopping it."); - connection.stop(); - } - - if (!window.EventSource) { - if (onFailed) { - connection.log("This browser doesn't support SSE."); - onFailed(); - } - return; - } - - $connection.trigger(events.onSending); - - url = transportLogic.getUrl(connection, this.name, reconnecting); - - try { - connection.log("Attempting to connect to SSE endpoint '" + url + "'"); - connection.eventSource = new window.EventSource(url); - } - catch (e) { - connection.log("EventSource failed trying to connect with error " + e.Message); - if (onFailed) { - // The connection failed, call the failed callback - onFailed(); - } - else { - $connection.trigger(events.onError, [e]); - if (reconnecting) { - // If we were reconnecting, rather than doing initial connect, then try reconnect again - that.reconnect(connection); - } - } - return; - } - - // After connecting, if after the specified timeout there's no response stop the connection - // and raise on failed - connectTimeOut = window.setTimeout(function () { - if (opened === false) { - connection.log("EventSource timed out trying to connect"); - connection.log("EventSource readyState: " + connection.eventSource.readyState); - - if (!reconnecting) { - that.stop(connection); - } - - if (reconnecting) { - // If we're reconnecting and the event source is attempting to connect, - // don't keep retrying. This causes duplicate connections to spawn. - if (connection.eventSource.readyState !== window.EventSource.CONNECTING && - connection.eventSource.readyState !== window.EventSource.OPEN) { - // If we were reconnecting, rather than doing initial connect, then try reconnect again - that.reconnect(connection); - } - } else if (onFailed) { - onFailed(); - } - } - }, - that.timeOut); - - connection.eventSource.addEventListener("open", function (e) { - connection.log("EventSource connected"); - - if (connectTimeOut) { - window.clearTimeout(connectTimeOut); - } - - if (opened === false) { - opened = true; - - if (onSuccess) { - onSuccess(); - } - - if (reconnecting) { - if (changeState(connection, - signalR.connectionState.reconnecting, - signalR.connectionState.connected) === true) { - $connection.trigger(events.onReconnect); - } - } - } - }, false); - - connection.eventSource.addEventListener("message", function (e) { - // process messages - if (e.data === "initialized") { - return; - } - transportLogic.processMessages(connection, window.JSON.parse(e.data)); - }, false); - - connection.eventSource.addEventListener("error", function (e) { - if (!opened) { - if (onFailed) { - onFailed(); - } - return; - } - - connection.log("EventSource readyState: " + connection.eventSource.readyState); - - if (e.eventPhase === window.EventSource.CLOSED) { - // We don't use the EventSource's native reconnect function as it - // doesn't allow us to change the URL when reconnecting. We need - // to change the URL to not include the /connect suffix, and pass - // the last message id we received. - connection.log("EventSource reconnecting due to the server connection ending"); - that.reconnect(connection); - } else { - // connection error - connection.log("EventSource error"); - $connection.trigger(events.onError); - } - }, false); - }, - - reconnect: function (connection) { - var that = this; - window.setTimeout(function () { - that.stop(connection); - - if (connection.state === signalR.connectionState.reconnecting || - changeState(connection, - signalR.connectionState.connected, - signalR.connectionState.reconnecting) === true) { - connection.log("EventSource reconnecting"); - that.start(connection); - } - - }, connection.reconnectDelay); - }, - - send: function (connection, data) { - transportLogic.ajaxSend(connection, data); - }, - - stop: function (connection) { - if (connection && connection.eventSource) { - connection.log("EventSource calling close()"); - connection.eventSource.close(); - connection.eventSource = null; - delete connection.eventSource; - } - }, - abort: function (connection, async) { - transportLogic.ajaxAbort(connection, async); - } - }; - -}(window.jQuery, window)); -/* jquery.signalR.transports.foreverFrame.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - var signalR = $.signalR, - events = $.signalR.events, - changeState = $.signalR.changeState, - transportLogic = signalR.transports._logic; - - signalR.transports.foreverFrame = { - name: "foreverFrame", - - timeOut: 3000, - - start: function (connection, onSuccess, onFailed) { - var that = this, - frameId = (transportLogic.foreverFrame.count += 1), - url, - connectTimeOut, - frame = $(""); - - if (window.EventSource) { - // If the browser supports SSE, don't use Forever Frame - if (onFailed) { - connection.log("This brower supports SSE, skipping Forever Frame."); - onFailed(); - } - return; - } - - $(connection).trigger(events.onSending); - - // Build the url - url = transportLogic.getUrl(connection, this.name); - url += "&frameId=" + frameId; - - frame.prop("src", url); - transportLogic.foreverFrame.connections[frameId] = connection; - - connection.log("Binding to iframe's readystatechange event."); - frame.bind("readystatechange", function () { - if ($.inArray(this.readyState, ["loaded", "complete"]) >= 0) { - connection.log("Forever frame iframe readyState changed to " + this.readyState + ", reconnecting"); - - that.reconnect(connection); - } - }); - - connection.frame = frame[0]; - connection.frameId = frameId; - - if (onSuccess) { - connection.onSuccess = onSuccess; - } - - $("body").append(frame); - - // After connecting, if after the specified timeout there's no response stop the connection - // and raise on failed - // REVIEW: Why is connectTimeOut set here and never used again? - connectTimeOut = window.setTimeout(function () { - if (connection.onSuccess) { - connection.log("Failed to connect using forever frame source, it timed out after " + that.timeOut + "ms."); - that.stop(connection); - - if (onFailed) { - onFailed(); - } - } - }, that.timeOut); - }, - - reconnect: function (connection) { - var that = this; - window.setTimeout(function () { - if (!connection.frame) { - return; - } - - if (connection.state === signalR.connectionState.reconnecting || - changeState(connection, - signalR.connectionState.connected, - signalR.connectionState.reconnecting) === true) { - - var frame = connection.frame, - src = transportLogic.getUrl(connection, that.name, true) + "&frameId=" + connection.frameId; - connection.log("Upating iframe src to '" + src + "'."); - frame.src = src; - } - - }, connection.reconnectDelay); - }, - - send: function (connection, data) { - transportLogic.ajaxSend(connection, data); - }, - - receive: function (connection, data) { - var cw; - transportLogic.processMessages(connection, data); - // Delete the script & div elements - connection.frameMessageCount = (connection.frameMessageCount || 0) + 1; - if (connection.frameMessageCount > 50) { - connection.frameMessageCount = 0; - cw = connection.frame.contentWindow || connection.frame.contentDocument; - if (cw && cw.document) { - $("body", cw.document).empty(); - } - } - }, - - stop: function (connection) { - var cw = null; - if (connection.frame) { - if (connection.frame.stop) { - connection.frame.stop(); - } else { - cw = connection.frame.contentWindow || connection.frame.contentDocument; - if (cw.document && cw.document.execCommand) { - cw.document.execCommand("Stop"); - } - } - $(connection.frame).remove(); - delete transportLogic.foreverFrame.connections[connection.frameId]; - connection.frame = null; - connection.frameId = null; - delete connection.frame; - delete connection.frameId; - connection.log("Stopping forever frame"); - } - }, - - abort: function (connection, async) { - transportLogic.ajaxAbort(connection, async); - }, - - getConnection: function (id) { - return transportLogic.foreverFrame.connections[id]; - }, - - started: function (connection) { - if (connection.onSuccess) { - connection.onSuccess(); - connection.onSuccess = null; - delete connection.onSuccess; - } - else { - if (changeState(connection, - signalR.connectionState.reconnecting, - signalR.connectionState.connected) === true) { - // If there's no onSuccess handler we assume this is a reconnect - $(connection).trigger(events.onReconnect); - } - } - } - }; - -}(window.jQuery, window)); -/* jquery.signalR.transports.longPolling.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - var signalR = $.signalR, - events = $.signalR.events, - changeState = $.signalR.changeState, - isDisconnecting = $.signalR.isDisconnecting, - transportLogic = signalR.transports._logic; - - signalR.transports.longPolling = { - name: "longPolling", - - reconnectDelay: 3000, - - start: function (connection, onSuccess, onFailed) { - /// Starts the long polling connection - /// The SignalR connection to start - var that = this, - initialConnectFired = false; - - if (connection.pollXhr) { - connection.log("Polling xhr requests already exists, aborting."); - connection.stop(); - } - - connection.messageId = null; - - window.setTimeout(function () { - (function poll(instance, raiseReconnect) { - $(instance).trigger(events.onSending); - - var messageId = instance.messageId, - connect = (messageId === null), - reconnecting = !connect, - url = transportLogic.getUrl(instance, that.name, reconnecting, raiseReconnect), - reconnectTimeOut = null, - reconnectFired = false; - - if (reconnecting === true && raiseReconnect === true) { - if (connection.state !== signalR.connectionState.reconnecting && - changeState(connection, - signalR.connectionState.connected, - signalR.connectionState.reconnecting) === false) { - return; - } - } - - connection.log("Attempting to connect to '" + url + "' using longPolling."); - instance.pollXhr = $.ajax({ - url: url, - global: false, - cache: false, - type: "GET", - dataType: connection.ajaxDataType, - success: function (data) { - var delay = 0, - timedOutReceived = false; - - if (initialConnectFired === false) { - onSuccess(); - initialConnectFired = true; - } - - if (raiseReconnect === true) { - // Fire the reconnect event if it hasn't been fired as yet - if (reconnectFired === false) { - connection.log("Raising the reconnect event"); - - if (changeState(connection, - signalR.connectionState.reconnecting, - signalR.connectionState.connected) === true) { - - $(instance).trigger(events.onReconnect); - reconnectFired = true; - } - } - } - - transportLogic.processMessages(instance, data); - if (data && - data.TransportData && - $.type(data.TransportData.LongPollDelay) === "number") { - delay = data.TransportData.LongPollDelay; - } - - if (data && data.TimedOut) { - timedOutReceived = data.TimedOut; - } - - if (data && data.Disconnect) { - return; - } - - if (isDisconnecting(instance) === true) { - return; - } - - if (delay > 0) { - window.setTimeout(function () { - poll(instance, timedOutReceived); - }, delay); - } else { - poll(instance, timedOutReceived); - } - }, - - error: function (data, textStatus) { - if (textStatus === "abort") { - connection.log("Aborted xhr requst."); - return; - } - - connection.log("An error occurred using longPolling. Status = " + textStatus + ". " + data.responseText); - - if (reconnectTimeOut) { - // If the request failed then we clear the timeout so that the - // reconnect event doesn't get fired - window.clearTimeout(reconnectTimeOut); - } - - $(instance).trigger(events.onError, [data.responseText]); - - window.setTimeout(function () { - if (isDisconnecting(instance) === false) { - poll(instance, true); - } - }, connection.reconnectDelay); - } - }); - - if (raiseReconnect === true) { - reconnectTimeOut = window.setTimeout(function () { - if (reconnectFired === false) { - if (changeState(connection, - signalR.connectionState.reconnecting, - signalR.connectionState.connected) === true) { - - $(instance).trigger(events.onReconnect); - reconnectFired = true; - } - } - }, - that.reconnectDelay); - } - - }(connection)); - - // Now connected - // There's no good way know when the long poll has actually started so - // we assume it only takes around 150ms (max) to start the connection - window.setTimeout(function () { - if (initialConnectFired === false) { - onSuccess(); - initialConnectFired = true; - } - }, 150); - - }, 250); // Have to delay initial poll so Chrome doesn't show loader spinner in tab - }, - - send: function (connection, data) { - transportLogic.ajaxSend(connection, data); - }, - - stop: function (connection) { - /// Stops the long polling connection - /// The SignalR connection to stop - if (connection.pollXhr) { - connection.pollXhr.abort(); - connection.pollXhr = null; - delete connection.pollXhr; - } - }, - - abort: function (connection, async) { - transportLogic.ajaxAbort(connection, async); - } - }; - -}(window.jQuery, window)); -/* jquery.signalR.hubs.js */ -/*global window:false */ -/// - -(function ($, window) { - "use strict"; - - // we use a global id for tracking callbacks so the server doesn't have to send extra info like hub name - var callbackId = 0, - callbacks = {}, - eventNamespace = "proxy."; - - // Array.prototype.map - if (!Array.prototype.hasOwnProperty("map")) { - Array.prototype.map = function (fun, thisp) { - var arr = this, - i, - length = arr.length, - result = []; - for (i = 0; i < length; i += 1) { - if (arr.hasOwnProperty(i)) { - result[i] = fun.call(thisp, arr[i], i, arr); - } - } - return result; - }; - } - - function getArgValue(a) { - return $.isFunction(a) ? null : ($.type(a) === "undefined" ? null : a); - } - - // hubProxy - function hubProxy(hubConnection, hubName) { - /// - /// Creates a new proxy object for the given hub connection that can be used to invoke - /// methods on server hubs and handle client method invocation requests from the server. - /// - return new hubProxy.fn.init(hubConnection, hubName); - } - - hubProxy.fn = hubProxy.prototype = { - init: function (connection, hubName) { - this.state = {}; - this.connection = connection; - this.hubName = hubName; - this.subscribed = false; - }, - - on: function (eventName, callback) { - /// Wires up a callback to be invoked when a invocation request is received from the server hub. - /// The name of the hub event to register the callback for. - /// The callback to be invoked. - var self = this; - - // Normalize the event name to lowercase - eventName = eventName.toLowerCase(); - - $(self).bind(eventNamespace + eventName, function (e, data) { - callback.apply(self, data); - }); - self.subscribed = true; - return self; - }, - - invoke: function (methodName) { - /// Invokes a server hub method with the given arguments. - /// The name of the server hub method. - - var self = this, - args = $.makeArray(arguments).slice(1), - userCallback = args[args.length - 1], // last argument - methodArgs = $.type(userCallback) === "function" ? args.slice(0, args.length - 1) /* all but last */ : args, - argValues = methodArgs.map(getArgValue), - data = { hub: self.hubName, method: methodName, args: argValues, state: self.state, id: callbackId }, - d = $.Deferred(), - callback = function (result) { - // Update the hub state - $.extend(this.state, result.State); - - if (result.Error) { - // Server hub method threw an exception, log it & reject the deferred - if (result.StackTrace) { - self.connection.log(result.Error + "\n" + result.StackTrace); - } - d.rejectWith(self, [result.Error]); - } else { - // Server invocation succeeded, invoke any user callback & resolve the deferred - if ($.type(userCallback) === "function") { - userCallback.call(self, result.Result); - } - d.resolveWith(self, [result.Result]); - } - }; - - callbacks[callbackId.toString()] = { scope: self, method: callback }; - callbackId += 1; - self.connection.send(window.JSON.stringify(data)); - - return d.promise(); - } - }; - - hubProxy.fn.init.prototype = hubProxy.fn; - - - // hubConnection - function hubConnection(url, options) { - /// Creates a new hub connection. - /// [Optional] The hub route url, defaults to "/signalr". - /// [Optional] Settings to use when creating the hubConnection. - var settings = { - qs: null, - logging: false, - useDefaultPath : true - }; - - $.extend(settings, options); - - if (!url || settings.useDefaultPath) { - url = (url || "") + "/signalr"; - } - return new hubConnection.fn.init(url, settings); - } - - hubConnection.fn = hubConnection.prototype = $.connection(); - - hubConnection.fn.init = function (url, options) { - var settings = { - qs: null, - logging: false, - useDefaultPath: true - }, - connection = this; - - $.extend(settings, options); - - // Call the base constructor - $.signalR.fn.init.call(connection, url, settings.qs, settings.logging); - - // Object to store hub proxies for this connection - connection.proxies = {}; - - // Wire up the sending handler - connection.sending(function () { - // Set the connection's data object with all the hub proxies with active subscriptions. - // These proxies will receive notifications from the server. - var subscribedHubs = []; - - $.each(this.proxies, function (key) { - if (this.subscribed) { - subscribedHubs.push({ name: key }); - } - }); - - this.data = window.JSON.stringify(subscribedHubs); - }); - - // Wire up the received handler - connection.received(function (data) { - var proxy, dataCallbackId, callback, hubName, eventName; - if (!data) { - return; - } - - if (typeof (data.Id) !== "undefined") { - // We received the return value from a server method invocation, look up callback by id and call it - dataCallbackId = data.Id.toString(); - callback = callbacks[dataCallbackId]; - if (callback) { - // Delete the callback from the proxy - callbacks[dataCallbackId] = null; - delete callbacks[dataCallbackId]; - - // Invoke the callback - callback.method.call(callback.scope, data); - } - } else { - // We received a client invocation request, i.e. broadcast from server hub - connection.log("Triggering client hub event '" + data.Method + "' on hub '" + data.Hub + "'."); - - // Normalize the names to lowercase - hubName = data.Hub.toLowerCase(); - eventName = data.Method.toLowerCase(); - - // Trigger the local invocation event - proxy = this.proxies[hubName]; - - // Update the hub state - $.extend(proxy.state, data.State); - $(proxy).trigger(eventNamespace + eventName, [data.Args]); - } - }); - }; - - hubConnection.fn.createProxy = function (hubName) { - /// - /// Creates a new proxy object for the given hub connection that can be used to invoke - /// methods on server hubs and handle client method invocation requests from the server. - /// - /// - /// The name of the hub on the server to create the proxy for. - /// - - // Normalize the name to lowercase - hubName = hubName.toLowerCase(); - - var proxy = this.proxies[hubName]; - if (!proxy) { - proxy = hubProxy(this, hubName); - this.proxies[hubName] = proxy; - } - return proxy; - }; - - hubConnection.fn.init.prototype = hubConnection.fn; - - $.hubConnection = hubConnection; - -} (window.jQuery, window)); diff --git a/NzbDrone.Web/Scripts/jquery.signalR-0.5.3.min.js b/NzbDrone.Web/Scripts/jquery.signalR-0.5.3.min.js deleted file mode 100644 index b711f8482..000000000 --- a/NzbDrone.Web/Scripts/jquery.signalR-0.5.3.min.js +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * SignalR JavaScript Library v0.5.3 - * http://signalr.net/ - * - * Copyright David Fowler and Damian Edwards 2012 - * Licensed under the MIT. - * https://github.com/SignalR/SignalR/blob/master/LICENSE.md - */ -(function(n,t){"use strict";if(typeof n!="function")throw"SignalR: jQuery not found. Please ensure jQuery is referenced before the SignalR.js file.";if(!t.JSON)throw"SignalR: No JSON parser found. Please ensure json2.js is referenced before the SignalR.js file if you need to support clients without native JSON parsing support, e.g. IE<8.";var i,e,o=!1,f=n(t),r={onStart:"onStart",onStarting:"onStarting",onSending:"onSending",onReceived:"onReceived",onError:"onError",onReconnect:"onReconnect",onStateChanged:"onStateChanged",onDisconnect:"onDisconnect"},h=function(n,i){if(i!==!1){var r;typeof t.console!="undefined"&&(r="["+(new Date).toTimeString()+"] SignalR: "+n,t.console.debug?t.console.debug(r):t.console.log&&t.console.log(r))}},c=function(i){var r;return(i=n.trim(i),i.indexOf("http")!==0)?!1:(r=t.document.createElement("a"),r.href=i,r.protocol+r.host!==t.location.protocol+t.location.host)},u=function(t,i,u){return i===t.state?(n(t).trigger(r.onStateChanged,[{oldState:t.state,newState:u}]),t.state=u,!0):!1},s=function(n){return n.state===i.connectionState.disconnected};i=function(n,t,r){return new i.fn.init(n,t,r)},i.events=r,i.changeState=u,i.isDisconnecting=s,i.connectionState={connecting:0,connected:1,reconnecting:2,disconnected:4},i.hub={start:function(){throw"SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Missing/Index.cshtml b/NzbDrone.Web/Views/Missing/Index.cshtml deleted file mode 100644 index b1a087666..000000000 --- a/NzbDrone.Web/Views/Missing/Index.cshtml +++ /dev/null @@ -1,69 +0,0 @@ -@model IEnumerable -@using DataTables.Mvc.Core -@using NzbDrone.Web.Helpers -@using SortDirection = DataTables.Mvc.Core.Enum.SortDirection -@{ViewBag.Title = "Missing";} - -@section ActionMenu{ - -} - -@Html.GridHtml("missingGrid", "dataTablesGrid") - -@section Scripts -{ - @( Html.GridScriptForModel("#missingGrid") - .Paginate(true) - .PageLength(20) - .ChangePageLength(false) - .Filter(true) - .Sort(true) - .PaginationType("four_button") - .AddColumn(new Column().DataProperty("return seriesTitle(source, type, val);", true).Title("Series Title")) - .AddColumn(new Column().DataProperty("EpisodeNumbering").Width("80px").Sortable(false).Title("Episode")) - .AddColumn(new Column().DataProperty("EpisodeTitle").Sortable(false).Title("Episode Title")) - .AddColumn(new Column().DataProperty("return airDate(source, type, val);", true).Width("150px").Title("Air Date")) - .AddColumn(new Column().DataProperty("EpisodeId").Width("40px").Sortable(false).RenderFunction("return actions(row);")) - .AddColumn(new Column().DataProperty("Details").Sortable(false).Visible(false).RenderFunction("return details(row);")) - .AddSorting(3, SortDirection.Desc) - .Language(new Language().EmptyTable("No missing episodes found").ZeroRecords("No missing episodes match the filter")) - ) - - -} diff --git a/NzbDrone.Web/Views/SearchHistory/Details.cshtml b/NzbDrone.Web/Views/SearchHistory/Details.cshtml deleted file mode 100644 index 3a94b69e5..000000000 --- a/NzbDrone.Web/Views/SearchHistory/Details.cshtml +++ /dev/null @@ -1,47 +0,0 @@ -@using DataTables.Mvc.Core -@using DataTables.Mvc.Core.Enum -@model NzbDrone.Web.Models.SearchDetailsModel - -@{ - ViewBag.Title = "Search Details"; -} - -

    @Model.DisplayName

    - -@Html.GridHtml("searchDetailsGrid") - -@section Scripts -{ - @(Html.GridScriptFor(m => m.SearchHistoryItems, "#searchDetailsGrid") - .PageLength(20) - .ChangePageLength(false) - .AddColumn(new Column().Image("/Image/Newznab?name={Indexer}", new { alt = "{Indexer}", title = "{Indexer}" }, "{Indexer}").Sortable(false).Title("").Width("20px")) - .AddColumn(new Column().DataProperty("ReportTitle").Title("Report Title")) - .AddColumn(new Column().DataProperty("Success").Title("Successful").Width("100px")) - //.AddColumn(new Column().Image("/Content/Images/{Success}.png", new { alt = "{Success}", title = "{Success}", @class = "gridImage" }, "{Success}").Title("Successful").Width("100px")) - .AddColumn(new Column().DisplayAndSort("Quality", "QualityInt").Title("Quality").Width("80px")) - .AddColumn(new Column().DataProperty("SearchError").Title("Error")) - .AddColumn(new Column().DataProperty("return actionColumn(source, type, val);", true).Sortable(false).Searchable(false)) - .AddColumn(new Column().DataProperty("Details").Sortable(false).Visible(false).RenderFunction("return details(row);")) - .AddSorting(3, DataTables.Mvc.Core.Enum.SortDirection.Desc) - .Language(new Language().EmptyTable("This seach yielded no results").ZeroRecords("No results match the filter"))) - - -} diff --git a/NzbDrone.Web/Views/SearchHistory/Index.cshtml b/NzbDrone.Web/Views/SearchHistory/Index.cshtml deleted file mode 100644 index 341ab1502..000000000 --- a/NzbDrone.Web/Views/SearchHistory/Index.cshtml +++ /dev/null @@ -1,23 +0,0 @@ -@using DataTables.Mvc.Core -@using SortDirection = DataTables.Mvc.Core.Enum.SortDirection -@model IEnumerable - -@{ - ViewBag.Title = "Search Results"; -} - -@Html.GridHtml("searchResultsGrid", "dataTablesGrid no-details") - -@section Scripts -{ - @(Html.GridScriptForModel("#searchResultsGrid") - .PageLength(20) - .ChangePageLength(false) - .AddColumn(new Column().DataProperty("DisplayName").Link("SearchHistory/Details?searchId={Id}", "{DisplayName}", null).Title("Name")) - .AddColumn(new Column().DataProperty("SearchTime").Title("Time").Width("170px")) - .AddColumn(new Column().DataProperty("ReportCount").Title("Reports Found").Width("140px")) - .AddColumn(new Column().DataProperty("Successful").Title("Successful").Width("110px")) - //.AddColumn(new Column().Image("/Content/Images/{Successful}.png", new { alt = "{Successful}", title = "{Successful}", @class = "gridImage" }, "{Successful}").Title("Successful").Width("110px")) - .AddSorting(1, SortDirection.Desc) - .Language(new Language().EmptyTable("No search results available").ZeroRecords("No results match the filter"))) -} diff --git a/NzbDrone.Web/Views/Series/Details.cshtml b/NzbDrone.Web/Views/Series/Details.cshtml deleted file mode 100644 index a9d63a4dd..000000000 --- a/NzbDrone.Web/Views/Series/Details.cshtml +++ /dev/null @@ -1,146 +0,0 @@ -@model SeriesDetailsModel - -@using NzbDrone.Web.Helpers -@using NzbDrone.Web.Models - -@section HeaderContent -{ - @Html.IncludeCss("Settings.css") - -} -@{ ViewBag.Title = Model.Title; } - -@section ActionMenu -{ - -} - -@if (Model.HasBanner) -{ - var bannerUrl = "../../MediaCover/Banners/" + Model.SeriesId + ".jpg"; - -} - -
    - @foreach (var season in Model.Seasons.OrderBy(s => s.SeasonNumber)) - { - - } -
    -@foreach (var s in Model.Seasons.OrderByDescending(a => a.SeasonNumber)) -{ -
    - @{ - var season = s; - Html.RenderPartial("Season", season); - } -
    -} - -
    -
    -
    - -
    - - Are you sure you want to delete ''? -
    - @Html.CheckBox("DeleteFilesFromDisk") - -
    -
    - -
    - - @Html.DropDownList("NewQuality", Model.QualitySelectList) -
    -
    - -@section Scripts{ - @Html.IncludeScript("NzbDrone/seriesDetails.js") - @Html.IncludeScript("NzbDrone/series.js") - - -} diff --git a/NzbDrone.Web/Views/Series/Edit.cshtml b/NzbDrone.Web/Views/Series/Edit.cshtml deleted file mode 100644 index c7770a995..000000000 --- a/NzbDrone.Web/Views/Series/Edit.cshtml +++ /dev/null @@ -1,45 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.SeriesModel -@{ - Layout = null; -} - - - -
    - @using (Html.BeginForm("Edit", "Series", FormMethod.Post, new { id = "SeriesEditorForm", name = "SeriesEditorForm", @class = "settingsForm" })) - { - @Html.HiddenFor(m => m.SeriesId) - @Html.HiddenFor(m => m.Status) - - @Html.CheckBoxFor(m => m.Monitored, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.SeasonFolder, new { @class = "inputClass checkClass" }) - - @Html.DropDownListFor(m => m.QualityProfileId, (SelectList)ViewData["SelectList"], new { @class = "inputClass" }) - - @Html.TextBoxFor(m => m.Path, new { @class = "inputClass" }) - - @Html.DropDownListFor(m => m.BacklogSetting, (SelectList)ViewData["BacklogSettingSelectList"], new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.CustomStartDate, new { type = "date", @class = "inputClass jQuery-datepicker" }) - } -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Series/Editor.cshtml b/NzbDrone.Web/Views/Series/Editor.cshtml deleted file mode 100644 index 0db6ff1f6..000000000 --- a/NzbDrone.Web/Views/Series/Editor.cshtml +++ /dev/null @@ -1,258 +0,0 @@ -@using NzbDrone.Web.Helpers -@model IEnumerable -@{ViewBag.Title = "Series Editor";} - -@section HeaderContent -{ - @Html.IncludeCss("Settings.css") - @Html.IncludeCss("SeriesEditor.css") -} - -@section ActionMenu -{ - -} - -@using (Html.BeginForm("Editor", "Series", FormMethod.Post, new { id = "SeriesEditor", name = "SeriesEditor" })) -{ - - - - - - - - - - - - - - - - - @foreach (var series in Model) - { - Html.RenderPartial("EditorItem", series); - } - - - - - - - - - - - - - - -
    @Html.CheckBox("editToggleMaster", false, new { @class = "editToggleMaster" })TitleQualityMonitoredSeason FolderBacklog StatusStart DatePath
    - @Html.DropDownList("masterQualitySelector", (SelectList)ViewData["MasterProfileSelectList"], new { @class = "footer-control-quality masterSelector master-quality", disabled = true }) - - @Html.DropDownList("masterMonitored", (SelectList)ViewData["BoolSelectList"], new { @class = "footer-control-boolean masterSelector master-monitored", disabled = true }) - - @Html.DropDownList("masterSeasonFolder", (SelectList)ViewData["BoolSelectList"], new { @class = "footer-control-boolean masterSelector master-season-folder", disabled = true }) - - @Html.DropDownList("masterBacklogSetting", (SelectList)ViewData["MasterBacklogSettingSelectList"], new { @class = "footer-control masterSelector master-backlog-setting", disabled = true }) - - @Html.TextBox("masterStartDate", "" , new { type = "date", @class = "footer-control-start-date masterSelector master-start-date jQuery-datepicker", disabled = true }) - - - - -
    - -@Html.CheckBox("highlightEnded", true) - -} - -@section Scripts -{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Series/EditorItem.cshtml b/NzbDrone.Web/Views/Series/EditorItem.cshtml deleted file mode 100644 index 6b2efe736..000000000 --- a/NzbDrone.Web/Views/Series/EditorItem.cshtml +++ /dev/null @@ -1,38 +0,0 @@ -@model NzbDrone.Web.Models.SeriesModel -@using NzbDrone.Core.Model -@using NzbDrone.Core.Repository.Quality -@using NzbDrone.Web.Helpers - -@{ - Layout = null; -} - -@*SeriesId, Title, Quality, Monitored, Use Season Folder, Root Directory/Path*, Backlog Toggle*@ - - - @using (Html.BeginCollectionItem("series")) - { - var idClean = ViewData.TemplateInfo.HtmlFieldPrefix.Replace('[', '_').Replace(']', '_'); - - @Html.HiddenFor(m => m.SeriesId) - @Html.CheckBox("editToggle", false, new {@class = "editToggle"}) - @Model.Title - @Html.DropDownListFor(m => m.QualityProfileId, new SelectList((List)ViewData["QualityProfiles"], "QualityProfileId", "Name", Model.QualityProfileId), new { @class = "quality" }) - @Html.CheckBoxFor(m => m.Monitored, new {@class = "seriesCheckbox monitored"}) - @Html.CheckBoxFor(m => m.SeasonFolder, new {@class = "seriesCheckbox seasonFolder"}) - @Html.DropDownListFor(m => m.BacklogSetting, new SelectList((List>)ViewData["BacklogSettingTypes"], "Key", "Value", (int)Model.BacklogSetting), new { @class = "backlogSetting" }) - @Html.TextBoxFor(m => m.CustomStartDate, new { type = "date", @class = "start-date jQuery-datepicker" }) - @Html.TextBoxFor(m => m.Path, new { @class = "path" }) - - @if (Model.Status == "Ended") - { - - } - - else - { - - } - - } - \ No newline at end of file diff --git a/NzbDrone.Web/Views/Series/Episode.cshtml b/NzbDrone.Web/Views/Series/Episode.cshtml deleted file mode 100644 index 01f0b9f56..000000000 --- a/NzbDrone.Web/Views/Series/Episode.cshtml +++ /dev/null @@ -1,37 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.EpisodeModel - - - @Model.EpisodeNumber - @Model.Title - @Model.AirDate - @Model.Quality - - @{ - string cellColourClass = String.Empty; - - if (Model.Status == "Missing") - { - cellColourClass = "episodeMissing"; - } - - if (Model.Ignored) - { - cellColourClass = "episodeIgnored"; - } - } - - @*Commands Column*@ - - - @Ajax.IconActionLink("icon-search gridAction", "", "Search", "Episode", new { EpisodeId = Model.EpisodeId }, null, new { title = "Search for episode" }) - - - - - - - @Model.Overview
    - @Model.Path - - \ No newline at end of file diff --git a/NzbDrone.Web/Views/Series/Index.cshtml b/NzbDrone.Web/Views/Series/Index.cshtml deleted file mode 100644 index c747b70a1..000000000 --- a/NzbDrone.Web/Views/Series/Index.cshtml +++ /dev/null @@ -1,255 +0,0 @@ -@using NzbDrone.Web.Helpers -@{ViewBag.Title = "NzbDrone";} - -@section HeaderContent -{ - @Html.IncludeCss("Settings.css") -} - -@section ActionMenu{ - -} - - - - - - - - - - - - - - @*Commands Column*@ - - - - - -
    StatusTitleSeasonsQualityNetworkNext AiringEpisodes
    - -
    -
    -
    - -
    - - Are you sure you want to delete ''? -
    - @Html.CheckBox("DeleteFromDisk") - -
    -
    -
    -@section Scripts{ - @Html.IncludeScript("NzbDrone/series.js") - - -} diff --git a/NzbDrone.Web/Views/Series/Season.cshtml b/NzbDrone.Web/Views/Series/Season.cshtml deleted file mode 100644 index 0c9b125c4..000000000 --- a/NzbDrone.Web/Views/Series/Season.cshtml +++ /dev/null @@ -1,48 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.SeasonModel - -

    - @(Model.SeasonNumber == 0 ? "Specials" : "Season " + Model.SeasonNumber) -

    - - - - - - - - - - - - - - - - - @*Commands Column*@ - - - - - @for (int i = 0; i < Model.Episodes.Count; i++) - { - var episode = Model.Episodes[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("Episode", episode); - } - - else - { - Html.RenderPartial("Episode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - -
    #TitleAir DateQuality - - @Ajax.IconActionLink("icon-search gridAction", "", "SearchSeason", "Episode", new { SeriesId = Model.SeriesId, seasonnumber = Model.SeasonNumber }, null, new { title = "Search for all episodes in this season" }) - - @Ajax.IconActionLink("icon-pencil gridAction", "", "RenameSeason", "Episode", new { SeriesId = Model.SeriesId, seasonnumber = Model.SeasonNumber }, null, new { Title = "Rename all episodes in this season" }) -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Blackhole.cshtml b/NzbDrone.Web/Views/Settings/Blackhole.cshtml deleted file mode 100644 index 335b10065..000000000 --- a/NzbDrone.Web/Views/Settings/Blackhole.cshtml +++ /dev/null @@ -1,14 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.DownloadClientSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.TextBoxFor(m => m.BlackholeDirectory, new { @class = "inputClass folderLookup" }) -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/DownloadClient.cshtml b/NzbDrone.Web/Views/Settings/DownloadClient.cshtml deleted file mode 100644 index 3ce526b9c..000000000 --- a/NzbDrone.Web/Views/Settings/DownloadClient.cshtml +++ /dev/null @@ -1,170 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.DownloadClientSettingsModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - - -
    - @using (Html.BeginForm("SaveDownloadClient", "Settings", FormMethod.Post, new { id = "DownloadClientForm", name = "DownloadClientForm", @class = "settingsForm" })) - { -
    - - @Html.DropDownListFor(m => m.DownloadClient, Model.DownloadClientSelectList, new { @class = "inputClass selectClass" }) - - - @Html.TextBoxFor(m => m.DownloadClientDropDirectory, new { @class = "inputClass folderLookup" }) - - - @Html.CheckBoxFor(m => m.UseSceneName, new { @class = "inputClass checkClass" }) -
    - -
    -

    Sabnzbd

    - @{Html.RenderPartial("Sabnzbd", Model);} - -

    Blackhole

    - @{Html.RenderPartial("Blackhole", Model);} - -

    Pneumatic

    - @{Html.RenderPartial("Pneumatic", Model);} - -

    Nzbget

    - @{Html.RenderPartial("Nzbget", Model);} -
    - - - } -
    -
    -
    - -@section Scripts{ - -} diff --git a/NzbDrone.Web/Views/Settings/EpisodeNamingPartial.cshtml b/NzbDrone.Web/Views/Settings/EpisodeNamingPartial.cshtml deleted file mode 100644 index bec5a1c5e..000000000 --- a/NzbDrone.Web/Views/Settings/EpisodeNamingPartial.cshtml +++ /dev/null @@ -1,57 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.EpisodeNamingModel -@{ - Layout = null; -} - -
    - @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") - - @Html.CheckBoxFor(m => m.SceneName, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.SeriesName, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.EpisodeName, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.ReplaceSpaces, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.AppendQuality, new { @class = "inputClass checkClass" }) - - @Html.CheckBoxFor(m => m.SeasonFolders, new { @class = "inputClass checkClass" }) - - @Html.TextBoxFor(m => m.SeasonFolderFormat, new { @class = "inputClass" }) - - @Html.DropDownListFor(m => m.SeparatorStyle, Model.SeparatorStyles, new { @class = "inputClass selectClass" }) - - @Html.DropDownListFor(m => m.NumberStyle, Model.NumberStyles, new { @class = "inputClass selectClass" }) - - @Html.DropDownListFor(m => m.MultiEpisodeStyle, Model.MultiEpisodeStyles, new { @class = "inputClass selectClass" }) -
    -
    -
    - Single Episode Example: -
    -
    - Multi-Episode Example: -
    -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Growl.cshtml b/NzbDrone.Web/Views/Settings/Growl.cshtml deleted file mode 100644 index c0e26a967..000000000 --- a/NzbDrone.Web/Views/Settings/Growl.cshtml +++ /dev/null @@ -1,39 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.GrowlEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.GrowlNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.GrowlNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.GrowlHost, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.GrowlPassword, new { @class = "inputClass", type = "password" }) - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Indexers.cshtml b/NzbDrone.Web/Views/Settings/Indexers.cshtml deleted file mode 100644 index 05b904e6e..000000000 --- a/NzbDrone.Web/Views/Settings/Indexers.cshtml +++ /dev/null @@ -1,317 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.IndexerSettingsModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - - - -
    - @Html.CheckBox("nzbsRusStatus", @Model.NzbsRUsEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("newznabStatus", @Model.NewznabEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("womblesStatus", @Model.WomblesEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("fileSharingTalkStatus", @Model.FileSharingTalkEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("nzbIndexStatus", @Model.NzbIndexEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("nzbClubStatus", @Model.NzbClubEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("omgwtfnzbsStatus", @Model.OmgwtfnzbsEnabled, new { @class = "indexerStatusButton" }) - - - @Html.CheckBox("nzbxStatus", @Model.NzbxEnabled, new { @class = "indexerStatusButton" }) - -
    -
    - @using (Html.BeginForm("SaveIndexers", "Settings", FormMethod.Post, new { id = "IndexersForm", name = "IndexersForm", @class = "settingsForm" })) - { -
    -

    NZBsRus

    -
    -
    NZBsRus does not support backlog searching
    - - @Html.CheckBoxFor(m => m.NzbsRUsEnabled, new { @class = "inputClass checkClass enabledCheck" }) - - @Html.TextBoxFor(m => m.NzbsrusUId, new { @class = "inputClass" }) - - @Html.TextBoxFor(m => m.NzbsrusHash, new { @class = "inputClass" }) -
    - -

    Newznab

    -
    - - @Html.CheckBoxFor(m => m.NewznabEnabled, new { @class = "inputClass checkClass enabledCheck" }) -
    -
    -

    -

    - - - Add Newznab Provider -
    - @foreach (var provider in Model.NewznabDefinitions) - { - Html.RenderAction("GetNewznabProviderView", provider); - } -
    -
    - -

    Womble's Index

    -
    -
    Womble's Index does not support backlog searching
    - - @Html.CheckBoxFor(m => m.WomblesEnabled, new { @class = "inputClass checkClass enabledCheck" }) -
    - -

    File Sharing Talk

    -
    -
    File Sharing Talk does not support backlog searching
    - - @Html.CheckBoxFor(m => m.FileSharingTalkEnabled, new { @class = "inputClass checkClass enabledCheck" }) - - @Html.TextBoxFor(m => m.FileSharingTalkUid, new { @class = "inputClass" }) - - @Html.TextBoxFor(m => m.FileSharingTalkSecret, new { @class = "inputClass" }) -
    - -

    NzbIndex

    -
    - - @Html.CheckBoxFor(m => m.NzbIndexEnabled, new { @class = "inputClass checkClass enabledCheck" }) -
    - -

    NzbClub

    -
    - - @Html.CheckBoxFor(m => m.NzbClubEnabled, new { @class = "inputClass checkClass enabledCheck" }) -
    - -

    omgwtfnzbs

    -
    - - @Html.CheckBoxFor(m => m.OmgwtfnzbsEnabled, new { @class = "inputClass checkClass enabledCheck" }) - - - @Html.TextBoxFor(m => m.OmgwtfnzbsUsername, new { @class = "inputClass" }) - - @Html.TextBoxFor(m => m.OmgwtfnzbsApiKey, new { @class = "inputClass" }) -
    - -

    nzbx

    -
    - - @Html.CheckBoxFor(m => m.NzbxEnabled, new { @class = "inputClass checkClass enabledCheck" }) -
    -
    - -
    - @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") - - @Html.TextBoxFor(m => m.Retention, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.RssSyncInterval, new { @class = "inputClass" }) -
    - - - } -
    - -@section Scripts -{ - -} diff --git a/NzbDrone.Web/Views/Settings/MetadataPartial.cshtml b/NzbDrone.Web/Views/Settings/MetadataPartial.cshtml deleted file mode 100644 index c37de47b4..000000000 --- a/NzbDrone.Web/Views/Settings/MetadataPartial.cshtml +++ /dev/null @@ -1,15 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.EpisodeNamingModel -@{ - Layout = null; -} - - -@Html.CheckBoxFor(m => m.MetadataXbmcEnabled, new { @class = "inputClass checkClass" }) - - -@Html.CheckBoxFor(m => m.MetadataUseBanners, new { @class = "inputClass checkClass" }) \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Misc.cshtml b/NzbDrone.Web/Views/Settings/Misc.cshtml deleted file mode 100644 index c2230d6ce..000000000 --- a/NzbDrone.Web/Views/Settings/Misc.cshtml +++ /dev/null @@ -1,41 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.MiscSettingsModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - -
    - Enabling Backlog Searching can use lots of bandwidth and is not recommended for users with block Usenet accounts or bandwidth restrictions. -
    - -
    - @using (Html.BeginForm("SaveMisc", "Settings", FormMethod.Post, new { id = "MiscForm", name = "MiscForm", @class = "settingsForm" })) - { - - @Html.CheckBoxFor(m => m.EnableBacklogSearching, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.AutoIgnorePreviouslyDownloadedEpisodes, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.AllowedReleaseGroups, new { @class = "inputClass" }) - - - @Html.CheckBoxFor(m => m.IgnoreArticlesWhenSortingSeries, new { @class = "inputClass checkClass" }) - -
    -
    - - - } -
    diff --git a/NzbDrone.Web/Views/Settings/Naming.cshtml b/NzbDrone.Web/Views/Settings/Naming.cshtml deleted file mode 100644 index f2c1b2620..000000000 --- a/NzbDrone.Web/Views/Settings/Naming.cshtml +++ /dev/null @@ -1,45 +0,0 @@ -@model NzbDrone.Web.Models.EpisodeNamingModel -@{ - Layout = "_SettingsLayout.cshtml"; -} - - -
    - @using (Html.BeginForm("SaveNaming", "Settings", FormMethod.Post, new { id = "NamingForm", name = "NamingForm", @class = "settingsForm" })) - { -
    -

    Episode Naming

    -
    - @{Html.RenderPartial("EpisodeNamingPartial", Model);} -
    - -

    Metadata

    -
    - @{Html.RenderPartial("MetaDataPartial", Model);} -
    -
    - - - } -
    - -@section Scripts{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/NewznabProvider.cshtml b/NzbDrone.Web/Views/Settings/NewznabProvider.cshtml deleted file mode 100644 index c910a8099..000000000 --- a/NzbDrone.Web/Views/Settings/NewznabProvider.cshtml +++ /dev/null @@ -1,57 +0,0 @@ -@model NzbDrone.Core.Repository.NewznabDefinition -@using NzbDrone.Web.Helpers -@{ - Layout = null; -} - -@using (Html.BeginCollectionItem("NewznabDefinitions")) -{ - var idClean = ViewData.TemplateInfo.HtmlFieldPrefix.Replace('[', '_').Replace(']', '_'); - -
    -
    - - @Model.Name - - @if(!Model.BuiltIn) - { - - - } -
    -
    -
    - @Html.Label("Enabled") - @Html.CheckBoxFor(m => m.Enable) -
    - -
    - @Html.LabelFor(x => x.Name) - @Html.TextBoxFor(x => x.Name, new {@class = "providerName_textbox"}) -
    -
    - @if(!Model.BuiltIn) - { - @Html.LabelFor(x => x.Url) - @Html.TextBoxFor(m => m.Url) - } - - else - { - @Html.LabelFor(x => x.Url) - @Html.TextBox("DisabledIndexer", Model.Url, new { disabled = "disabled" }) - @Html.HiddenFor(m => m.Url) - } -
    - -
    - @Html.LabelFor(x => x.ApiKey) - @Html.TextBoxFor(m => m.ApiKey) -
    -
    - - @Html.HiddenFor(x => x.Id, new {@class = "newznabProviderId"}) - @Html.Hidden("cleanId", idClean, new {@class = "cleanId"}) - @Html.HiddenFor(m => m.BuiltIn) -
    -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Notifications.cshtml b/NzbDrone.Web/Views/Settings/Notifications.cshtml deleted file mode 100644 index 1facc51db..000000000 --- a/NzbDrone.Web/Views/Settings/Notifications.cshtml +++ /dev/null @@ -1,99 +0,0 @@ -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - - -
    - @using (Html.BeginForm("SaveNotifications", "Settings", FormMethod.Post, new { id = "NotificationForm", name = "NotificationForm", @class = "settingsForm" })) - { -
    -

    - XBMC

    - @{Html.RenderPartial("Xbmc", Model);} -

    - Plex

    - @{Html.RenderPartial("Plex", Model);} -

    - Growl

    - @{Html.RenderPartial("Growl", Model);} -

    - Prowl

    - @{Html.RenderPartial("Prowl", Model);} -

    - Email

    - @{Html.RenderPartial("Smtp", Model);} -

    - Twitter

    - @{Html.RenderPartial("Twitter", Model);} -
    - - - } -
    - -@section Scripts -{ - -} diff --git a/NzbDrone.Web/Views/Settings/Nzbget.cshtml b/NzbDrone.Web/Views/Settings/Nzbget.cshtml deleted file mode 100644 index 56068aa3e..000000000 --- a/NzbDrone.Web/Views/Settings/Nzbget.cshtml +++ /dev/null @@ -1,50 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.DownloadClientSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.TextBoxFor(m => m.NzbgetHost, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.NzbgetPort, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.NzbgetUsername, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.NzbgetPassword, new { @class = "inputClass", type = "password" }) - - - @Html.TextBoxFor(m => m.NzbgetTvCategory, new { @class = "inputClass" }) - - - @Html.DropDownListFor(m => m.NzbgetBacklogTvPriority, Model.NzbgetPrioritySelectList, new { @class = "inputClass selectClass" }) - - - @Html.DropDownListFor(m => m.NzbgetRecentTvPriority, Model.NzbgetPrioritySelectList, new { @class = "inputClass selectClass" }) - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Plex.cshtml b/NzbDrone.Web/Views/Settings/Plex.cshtml deleted file mode 100644 index 14ffebfc1..000000000 --- a/NzbDrone.Web/Views/Settings/Plex.cshtml +++ /dev/null @@ -1,60 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.PlexEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.PlexNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.PlexNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.PlexUpdateLibrary, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.PlexServerHost, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.PlexClientHosts, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.PlexUsername, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.PlexPassword, new { @class = "inputClass", type = "password" }) - - - - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Pneumatic.cshtml b/NzbDrone.Web/Views/Settings/Pneumatic.cshtml deleted file mode 100644 index 02e68ae16..000000000 --- a/NzbDrone.Web/Views/Settings/Pneumatic.cshtml +++ /dev/null @@ -1,14 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.DownloadClientSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.TextBoxFor(m => m.PneumaticDirectory, new { @class = "inputClass folderLookup" }) -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Prowl.cshtml b/NzbDrone.Web/Views/Settings/Prowl.cshtml deleted file mode 100644 index aaf1ef473..000000000 --- a/NzbDrone.Web/Views/Settings/Prowl.cshtml +++ /dev/null @@ -1,39 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.ProwlEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.ProwlNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.ProwlNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.ProwlApiKeys, new { @class = "inputClass" }) - - - @Html.DropDownListFor(m => m.ProwlPriority, Model.ProwlPrioritySelectList, new { @class = "inputClass selectClass" }) - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Quality.cshtml b/NzbDrone.Web/Views/Settings/Quality.cshtml deleted file mode 100644 index c007dbb0e..000000000 --- a/NzbDrone.Web/Views/Settings/Quality.cshtml +++ /dev/null @@ -1,110 +0,0 @@ -@using NzbDrone.Core.Repository.Quality -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.QualityModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - -
    - @using (Html.BeginForm("SaveQuality", "Settings", FormMethod.Post, new { id = "QualityForm", name = "QualityForm", @class = "settingsForm" })) - { -
    - - @Html.DropDownListFor(m => m.DefaultQualityProfileId, Model.QualityProfileSelectList, new { @class = "inputClass" }) - -
    - -
    - -
    -

    Profiles

    -
    -
    -
    -
    - -

    Size Limits

    -
    -
    - Size Limits specify the maximum download size NzbDrone will send to your download client. -
    -
    -
    -
    - } -
    - -@section Scripts { - @Html.IncludeScript("NzbDrone/qualitySettings.js") - - @Html.IncludeScript("backbone/apps/qualityProfileApp.js") - @Html.IncludeScript("backbone/apps/qualityTypeApp.js") - @Html.IncludeScript("backbone/constants.js") - @Html.IncludeScript("backbone/models/qualityProfile.js") - @Html.IncludeScript("backbone/models/qualityProfileCollection.js") - @Html.IncludeScript("backbone/views/qualityProfiles.js") - @Html.IncludeScript("backbone/models/qualityType.js") - @Html.IncludeScript("backbone/models/qualityTypeCollection.js") - @Html.IncludeScript("backbone/views/qualityTypes.js") - - - - - - - - - - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Sabnzbd.cshtml b/NzbDrone.Web/Views/Settings/Sabnzbd.cshtml deleted file mode 100644 index 7fd63f809..000000000 --- a/NzbDrone.Web/Views/Settings/Sabnzbd.cshtml +++ /dev/null @@ -1,62 +0,0 @@ -@using NzbDrone.Web.Helpers; -@model NzbDrone.Web.Models.DownloadClientSettingsModel - -@{ - Layout = null; -} - -
    - - - - - @Html.TextBoxFor(m => m.SabHost, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SabPort, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SabApiKey, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SabUsername, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SabPassword, new { @class = "inputClass", type = "password" }) - - - @Html.DropDownListFor(m => m.SabTvCategory, Model.SabTvCategorySelectList, new { @class = "inputClass selectClass" }) - - - @Html.DropDownListFor(m => m.SabBacklogTvPriority, Model.SabPrioritySelectList, new { @class = "inputClass selectClass" }) - - - @Html.DropDownListFor(m => m.SabRecentTvPriority, Model.SabPrioritySelectList, new { @class = "inputClass selectClass" }) - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Smtp.cshtml b/NzbDrone.Web/Views/Settings/Smtp.cshtml deleted file mode 100644 index ba4b667f6..000000000 --- a/NzbDrone.Web/Views/Settings/Smtp.cshtml +++ /dev/null @@ -1,64 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.SmtpEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.SmtpNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.SmtpNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.SmtpServer, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SmtpPort, new { @class = "inputClass" }) - - - @Html.CheckBoxFor(m => m.SmtpUseSsl, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.SmtpUsername, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SmtpPassword, new { @class = "inputClass", type = "password" }) - - - @Html.TextBoxFor(m => m.SmtpFromAddress, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.SmtpToAddresses, new { @class = "inputClass" }) - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/System.cshtml b/NzbDrone.Web/Views/Settings/System.cshtml deleted file mode 100644 index 632a03d97..000000000 --- a/NzbDrone.Web/Views/Settings/System.cshtml +++ /dev/null @@ -1,77 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.SystemSettingsModel - -@{ - Layout = "_SettingsLayout.cshtml"; -} - -
    - You must manually restart NzbDrone for these changes to take effect. (Automatic restart coming soon!) -
    - -
    - @using (Html.BeginForm("SaveSystem", "Settings", FormMethod.Post, new { id = "SystemForm", name = "SystemForm", @class = "settingsForm" })) - { - @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") - - @Html.CheckBoxFor(m => m.LaunchBrowser, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.Port, new { @class = "inputClass" }) - - - @Html.DropDownListFor(m => m.AuthenticationType, Model.AuthTypeSelectList, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.RecycleBin, new { @class = "inputClass folderLookup" }) - - - - - - } -
    - -@section Scripts -{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Twitter.cshtml b/NzbDrone.Web/Views/Settings/Twitter.cshtml deleted file mode 100644 index dac35b055..000000000 --- a/NzbDrone.Web/Views/Settings/Twitter.cshtml +++ /dev/null @@ -1,40 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.TwitterEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.TwitterNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.TwitterNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - - - - @Html.TextBox("twitterVerification", "", new { @class = "inputClass" }) - - - - - @Html.Hidden("authorizationRequestToken") -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Xbmc.cshtml b/NzbDrone.Web/Views/Settings/Xbmc.cshtml deleted file mode 100644 index 46a6456da..000000000 --- a/NzbDrone.Web/Views/Settings/Xbmc.cshtml +++ /dev/null @@ -1,64 +0,0 @@ -@using NzbDrone.Web.Helpers -@model NzbDrone.Web.Models.NotificationSettingsModel - -@{ - Layout = null; -} - -
    - - @Html.CheckBoxFor(m => m.XbmcEnabled, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.XbmcNotifyOnGrab, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.XbmcNotifyOnDownload, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.XbmcUpdateLibrary, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.XbmcCleanLibrary, new { @class = "inputClass checkClass" }) - - - @Html.CheckBoxFor(m => m.XbmcUpdateWhenPlaying, new { @class = "inputClass checkClass" }) - - - @Html.TextBoxFor(m => m.XbmcHosts, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.XbmcUsername, new { @class = "inputClass" }) - - - @Html.TextBoxFor(m => m.XbmcPassword, new { @class = "inputClass", type = "password" }) - - - - - - -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/_SettingsLayout.cshtml b/NzbDrone.Web/Views/Settings/_SettingsLayout.cshtml deleted file mode 100644 index 4cb5581ae..000000000 --- a/NzbDrone.Web/Views/Settings/_SettingsLayout.cshtml +++ /dev/null @@ -1,30 +0,0 @@ -@using NzbDrone.Web.Helpers - -@{ - Layout = "~/Views/Shared/_Layout.cshtml"; - ViewBag.Title = "Settings"; -} - -@section HeaderContent -{ - @Html.IncludeCss("Settings.css") - @Html.IncludeCss("IndexerSettings.css") - @Html.IncludeCss("QualitySettings.css") -} - -
      - @MvcHtmlString.Create(Html.CurrentActionLink("Naming", "Naming", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("Quality", "Quality", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("Indexers", "Indexers", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("Download Client", "DownloadClient", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("Notifications", "Notifications", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("System", "System", "Settings")) - @MvcHtmlString.Create(Html.CurrentActionLink("Misc", "Misc", "Settings")) -
    - -@RenderBody() - -@section Scripts{ - @Html.IncludeScript("NzbDrone/settings.js") - @RenderSection("Scripts", required: false) -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Shared/Error.cshtml b/NzbDrone.Web/Views/Shared/Error.cshtml deleted file mode 100644 index 84954a43c..000000000 --- a/NzbDrone.Web/Views/Shared/Error.cshtml +++ /dev/null @@ -1,7 +0,0 @@ -@model HandleErrorInfo -@{ ViewBag.Title = "EPIC FAIL!"; } -

    - @Model.Exception.Message -

    -
    -@Model.Exception.ToString() diff --git a/NzbDrone.Web/Views/Shared/Footer.cshtml b/NzbDrone.Web/Views/Shared/Footer.cshtml deleted file mode 100644 index 8573e1a0a..000000000 --- a/NzbDrone.Web/Views/Shared/Footer.cshtml +++ /dev/null @@ -1,4 +0,0 @@ -@using NzbDrone.Web.Models -@model FooterModel -@Html.ActionLink(String.Format("NzbDrone {0} ({1:MMM d, yyyy})", Model.Version, Model.BuildTime), "Index", "Update") - diff --git a/NzbDrone.Web/Views/Shared/FreeSpace.cshtml b/NzbDrone.Web/Views/Shared/FreeSpace.cshtml deleted file mode 100644 index 603045c15..000000000 --- a/NzbDrone.Web/Views/Shared/FreeSpace.cshtml +++ /dev/null @@ -1,23 +0,0 @@ -@using NzbDrone.Core -@model Dictionary -@{ - Layout = null; -} - - -@{ - var rootDirString = ""; - - foreach(var rootDir in Model) - { -
    - @rootDir.Value.ToBestFileSize(1) Free -
    - - rootDirString += String.Format("{0} - {1} Free\r\n", rootDir.Key, rootDir.Value.ToBestFileSize(1)); - } - -
    - -
    -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Shared/NoSeriesBanner.cshtml b/NzbDrone.Web/Views/Shared/NoSeriesBanner.cshtml deleted file mode 100644 index cb78348ce..000000000 --- a/NzbDrone.Web/Views/Shared/NoSeriesBanner.cshtml +++ /dev/null @@ -1 +0,0 @@ -
    It looks like you haven't added any series to NzbDrone. Click here to add one.
    diff --git a/NzbDrone.Web/Views/Shared/_Layout.cshtml b/NzbDrone.Web/Views/Shared/_Layout.cshtml deleted file mode 100644 index ecd94320d..000000000 --- a/NzbDrone.Web/Views/Shared/_Layout.cshtml +++ /dev/null @@ -1,60 +0,0 @@ - -@{ Layout = "~/Views/Shared/_ReferenceLayout.cshtml"; } -@using NzbDrone.Common -@using NzbDrone.Web.Helpers -@using StackExchange.Profiling -@section HeaderContent -{ - @if (string.IsNullOrWhiteSpace(ViewBag.Title) || String.Equals(ViewBag.Title, "NzbDrone", StringComparison.InvariantCultureIgnoreCase)) - { - ViewBag.Title = "NzbDrone"; - } - else - { - ViewBag.Title = String.Format("{0} - NzbDrone", ViewBag.Title); - } - @ViewBag.Title - @if (!Request.Browser.IsMobileDevice && (!EnvironmentProvider.IsProduction || ProfilerHelper.Enabled())) - { - @MiniProfiler.RenderIncludes() - } - @Html.IncludeCss("Grid.css") - @RenderSection("HeaderContent", required: false) -} -
    - -
    -
      -
    • @{ Html.RenderAction("FreeSpace", "Shared"); }
    • -
    • -
    -
    - - -
    - @RenderSection("ActionMenu", required: false) - @RenderBody() -
    - -
    -
    - background notification -
    -@section Scripts -{ - @RenderSection("Scripts", required: false) -} diff --git a/NzbDrone.Web/Views/Shared/_ReferenceLayout.cshtml b/NzbDrone.Web/Views/Shared/_ReferenceLayout.cshtml deleted file mode 100644 index 86d5d67db..000000000 --- a/NzbDrone.Web/Views/Shared/_ReferenceLayout.cshtml +++ /dev/null @@ -1,68 +0,0 @@ - -@using NzbDrone.Web.Helpers -@using StackExchange.Profiling - - - - @this.InitClientTimings() - - - - - - - - - - - - - - @Html.IncludeCss("jQueryUI/jquery-ui-1.8.16.custom.css") - @Html.IncludeCss("jquery.gritter.css") - @Html.IncludeCss("NzbDrone.css") - @Html.IncludeCss("ActionButton.css") - @Html.IncludeCss("Menu.css") - @Html.IncludeCss("Messages.css") - @Html.IncludeCss("DataTables-NzbDrone/media/css/jquery.dataTables.css") - @Html.IncludeCss("overrides.css") - @Html.IncludeCss("font-awesome.css") - @RenderSection("HeaderContent", required: false) - - - @RenderBody() - @Html.IncludeScript("jquery-1.8.2.min.js") - @Html.IncludeScript("jquery-ui-1.8.24.js") - @Html.IncludeScript("jquery.livequery.js") - @Html.IncludeScript("jquery.gritter.js") - @Html.IncludeScript("jquery.form.js") - @Html.IncludeScript("jquery-tgc-countdown-1.0.js") - @Html.IncludeScript("jquery.watermark.min.js") - @Html.IncludeScript("jquery.hotkeys.js") - @Html.IncludeScript("jquery.signalR-0.5.3.min.js") - @Html.IncludeScript("jquery.validate.js") - @Html.IncludeScript("jquery.validate.unobtrusive.js") - @Html.IncludeScript("jquery.unobtrusive-ajax.min.js") - @Html.IncludeScript("jquery.cookie.js") - @Html.IncludeScript("doTimeout.js") - @Html.IncludeScript("conditional-validation.js") - - @Html.IncludeScript("NzbDrone/localSearch.js") - @Html.IncludeScript("NzbDrone/AutoComplete.js") - @Html.IncludeScript("NzbDrone/Notification.js") - @Html.IncludeScript("NzbDrone/AutoBind.js") - @Html.IncludeScript("NzbDrone/grid.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/jquery.dataTables.min.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/jquery.dataTables.reloadAjax.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/jquery.dataTables.editable.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/jquery.jeditable.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/jquery.dataTablesFilteringDelay.js") - @Html.IncludeScript("DataTables-1.9.4/media/js/FixedHeader.min.js") - @Html.IncludeScript("jquery.dataTables.4button.pagination.js") - @Html.IncludeScript("NzbDrone/common.js") - @Html.IncludeScript("underscore.min.js") - @Html.IncludeScript("backbone.min.js") - @Html.IncludeScript("backbone.marionette.min.js") - @RenderSection("Scripts", required: false) - - \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Config.cshtml b/NzbDrone.Web/Views/System/Config.cshtml deleted file mode 100644 index f7ad4ab5a..000000000 --- a/NzbDrone.Web/Views/System/Config.cshtml +++ /dev/null @@ -1,101 +0,0 @@ -@model string -@{ViewBag.Title = "Configuration";} - -@section HeaderContent{ - -} - -
    - - - - - - - - - - -
    KeyValue
    -
    - -
    - -
    - -
    -
    - -@section Scripts{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Index.cshtml b/NzbDrone.Web/Views/System/Index.cshtml deleted file mode 100644 index e2cd2ef49..000000000 --- a/NzbDrone.Web/Views/System/Index.cshtml +++ /dev/null @@ -1,35 +0,0 @@ -@using NzbDrone.Web.Helpers -@{ - ViewBag.Title = "System"; - - } - -@* -@section HeaderContent -{ - @Html.IncludeCss("Settings.css") - -}*@ - -@section ActionMenu{ - -} - -
    -
    - - -
    -
    \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Indexers.cshtml b/NzbDrone.Web/Views/System/Indexers.cshtml deleted file mode 100644 index e9dd0e203..000000000 --- a/NzbDrone.Web/Views/System/Indexers.cshtml +++ /dev/null @@ -1,43 +0,0 @@ -@model string - -
    - - - - - - - - - - - -
    IDEnableIndex Provider TypeName
    -
    - -@section Scripts{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Jobs.cshtml b/NzbDrone.Web/Views/System/Jobs.cshtml deleted file mode 100644 index d11f82ee5..000000000 --- a/NzbDrone.Web/Views/System/Jobs.cshtml +++ /dev/null @@ -1,98 +0,0 @@ -@using NzbDrone.Web.Helpers -@model string -@{ViewBag.Title = "Jobs";} - -
    - - - - - - - - - - - - @*Commands Column*@ - - - - - -
    IDEnableType NameNameIntervalLast ExecutionSuccessActions
    -
    - -

    Items currently in queue

    - -
    - - - - - - - - - -
    TypeOptions
    -
    - -@section Scripts{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Logs.cshtml b/NzbDrone.Web/Views/System/Logs.cshtml deleted file mode 100644 index 7406acda3..000000000 --- a/NzbDrone.Web/Views/System/Logs.cshtml +++ /dev/null @@ -1,101 +0,0 @@ -@using NzbDrone.Core.Instrumentation -@model IEnumerable -@{ ViewBag.Title = "Logs";} -@section ActionMenu{ - -} -@section HeaderContent{ - -} -
    - Log entries older than 30 days are automatically deleted.
    -
    - - - - - - - - @*Details Column*@ - - - - - -
    - Time - - Level - - Source - - Message - - Details -
    -
    -@section Scripts{ - -} diff --git a/NzbDrone.Web/Views/System/PendingProcessing.cshtml b/NzbDrone.Web/Views/System/PendingProcessing.cshtml deleted file mode 100644 index a9d429789..000000000 --- a/NzbDrone.Web/Views/System/PendingProcessing.cshtml +++ /dev/null @@ -1,76 +0,0 @@ -@model string -@using NzbDrone.Web.Models -@{ViewBag.Title = "Pending Processing";} - -
    - - - - - - - - - - -
    NameCreation Date
    -
    - -@section Scripts -{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/System/Stats.cshtml b/NzbDrone.Web/Views/System/Stats.cshtml deleted file mode 100644 index 72d6288e1..000000000 --- a/NzbDrone.Web/Views/System/Stats.cshtml +++ /dev/null @@ -1,39 +0,0 @@ -@model NzbDrone.Core.Model.StatsModel - -@{ - ViewBag.Title = "Stats"; -} - -@section HeaderContent -{ - -} - -@Html.LabelFor(m => m.SeriesTotal): -@Html.DisplayTextFor(m => m.SeriesTotal) -
    -@Html.LabelFor(m => m.SeriesContinuing): -@Html.DisplayTextFor(m => m.SeriesContinuing) -
    -@Html.LabelFor(m => m.SeriesEnded): -@Html.DisplayTextFor(m => m.SeriesEnded) -
    -@Html.LabelFor(m => m.EpisodesTotal): -@Html.DisplayTextFor(m => m.EpisodesTotal) -
    -@Html.LabelFor(m => m.EpisodesOnDisk): -@Html.DisplayTextFor(m => m.EpisodesOnDisk) -
    -@Html.LabelFor(m => m.EpisodesMissing): -@Html.DisplayTextFor(m => m.EpisodesMissing) -
    -@Html.LabelFor(m => m.DownloadLastWeek): -@Html.DisplayTextFor(m => m.DownloadLastWeek) -
    -@Html.LabelFor(m => m.DownloadedLastMonth): -@Html.DisplayTextFor(m => m.DownloadedLastMonth) \ No newline at end of file diff --git a/NzbDrone.Web/Views/Upcoming/Index.cshtml b/NzbDrone.Web/Views/Upcoming/Index.cshtml deleted file mode 100644 index 0e08dd2dd..000000000 --- a/NzbDrone.Web/Views/Upcoming/Index.cshtml +++ /dev/null @@ -1,277 +0,0 @@ -@model NzbDrone.Web.Models.UpcomingEpisodesModel -@{ViewBag.Title = "Upcoming";} -@section HeaderContent -{ - -} -@section ActionMenu{ - -} -
    - @Html.CheckBox("showDownloaded", true) - -
    - - - - - - - - - - - - - - - @*Commands/Status Column*@ - - - - - - - - @for (int i = 0; i < Model.Yesterday.Count; i++) - { - var episode = Model.Yesterday[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.Today.Count; i++) - { - var episode = Model.Today[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - @for (int i = 0; i < Model.Tomorrow.Count; i++) - { - var episode = Model.Tomorrow[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.TwoDays.Count; i++) - { - var episode = Model.TwoDays[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.ThreeDays.Count; i++) - { - var episode = Model.ThreeDays[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.FourDays.Count; i++) - { - var episode = Model.FourDays[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.FiveDays.Count; i++) - { - var episode = Model.FiveDays[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.SixDays.Count; i++) - { - var episode = Model.SixDays[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - - - - @for (int i = 0; i < Model.Later.Count; i++) - { - var episode = Model.Later[i]; - - if (i % 2 == 0) - { - Html.RenderPartial("UpcomingEpisode", episode); - } - - else - { - Html.RenderPartial("UpcomingEpisode", episode, new ViewDataDictionary { new KeyValuePair("AltRow", true) }); - } - } - -
    - Series Title - - Episode - - Episode Title - - Air Time - - Status -
    - Yesterday -
    - Today -
    - Tomorrow -
    - @DateTime.Today.AddDays(2).DayOfWeek -
    - @DateTime.Today.AddDays(3).DayOfWeek -
    - @DateTime.Today.AddDays(4).DayOfWeek -
    - @DateTime.Today.AddDays(5).DayOfWeek -
    - @DateTime.Today.AddDays(6).DayOfWeek -
    - Later -
    -@section Scripts{ - -} diff --git a/NzbDrone.Web/Views/Upcoming/UpcomingEpisode.cshtml b/NzbDrone.Web/Views/Upcoming/UpcomingEpisode.cshtml deleted file mode 100644 index c1193d5fc..000000000 --- a/NzbDrone.Web/Views/Upcoming/UpcomingEpisode.cshtml +++ /dev/null @@ -1,61 +0,0 @@ -@using NzbDrone.Core.Model -@using NzbDrone.Web.Helpers -@using NzbDrone.Web.Models -@model UpcomingEpisodeModel - -@{ - Layout = null; -} - - - @Html.ActionLink(Model.SeriesTitle, "Details", "Series", new { seriesId = Model.SeriesId }, null) - @Model.EpisodeNumbering - @Model.Title - - - @{ if(Model.AirDateTime >= DateTime.Today.AddDays(-1) && Model.AirDateTime <= DateTime.Today.AddDays(2)) - { - @(Model.AirTime) - } - else - { - @(Model.AirDate + " at " + Model.AirTime) - } - } - - - @{ - string cellColourClass = String.Empty; - - if (Model.Status == "Missing") - { - cellColourClass = "episodeMissing"; - } - } - - @{ - var statusTitle = Model.Status; - - if (Model.Status == "AirsToday") - { - statusTitle = "Airs today"; - } - - if (Model.Status == "NotAired") - { - statusTitle = "Not yet aired"; - } - } - - @*Commands Column*@ - - - @Ajax.IconActionLink("icon-search gridAction", "", "Search", "Episode", new { EpisodeId = Model.EpisodeId }, null, new { title = "Search for episode" }) - - - - - - Overview: @Model.Overview - - \ No newline at end of file diff --git a/NzbDrone.Web/Views/Update/Index.cshtml b/NzbDrone.Web/Views/Update/Index.cshtml deleted file mode 100644 index b5583b20a..000000000 --- a/NzbDrone.Web/Views/Update/Index.cshtml +++ /dev/null @@ -1,61 +0,0 @@ -@model NzbDrone.Web.Models.UpdateModel -@{ViewBag.Title = "Update";} - -@if (Model.UpdatePackage == null) -{ -

    - There are no updates available.

    -} -else -{ -

    - Available Update: @Model.UpdatePackage.Version - @Ajax.ActionLink("Update", "StartUpdate", "Update", new AjaxOptions{ OnSuccess = "updateStarted" }) - @Html.HiddenFor(m => m.UpdatePackage.Version) -

    -} -@if (Model.LogFiles.Count != 0) -{ -

    - Update Logs (@Model.LogFolder) -

    -
    - foreach (var log in Model.LogFiles) - { - - } -} - -@section Scripts -{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Update/Post.cshtml b/NzbDrone.Web/Views/Update/Post.cshtml deleted file mode 100644 index 196569f40..000000000 --- a/NzbDrone.Web/Views/Update/Post.cshtml +++ /dev/null @@ -1,19 +0,0 @@ -@model NzbDrone.Web.Models.PostUpgradeModel -@{ - ViewBag.Title = "Post Upgrade"; -} - - @if (Model.Success) - { -

    Successfully upgraded to @(Model.CurrentVersion)

    - } - - else{ -

    Failed to upgrade to @(Model.ExpectedVersion)

    - -
    -

    Please review the log file: - - @Model.LogFile.Key.ToString("MMM dd, hh:mm tt")

    -
    - } diff --git a/NzbDrone.Web/Views/Update/ViewLog.cshtml b/NzbDrone.Web/Views/Update/ViewLog.cshtml deleted file mode 100644 index 4f0a6e2d1..000000000 --- a/NzbDrone.Web/Views/Update/ViewLog.cshtml +++ /dev/null @@ -1,2 +0,0 @@ -@{ViewBag.Title = "Update Log";} -@Html.Raw(ViewBag.Log) diff --git a/NzbDrone.Web/Views/Web.config b/NzbDrone.Web/Views/Web.config deleted file mode 100644 index a2c0c87cf..000000000 --- a/NzbDrone.Web/Views/Web.config +++ /dev/null @@ -1,20 +0,0 @@ - - - - -
    -
    - - - - - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/Views/_ViewStart.cshtml b/NzbDrone.Web/Views/_ViewStart.cshtml deleted file mode 100644 index 2de62418c..000000000 --- a/NzbDrone.Web/Views/_ViewStart.cshtml +++ /dev/null @@ -1,3 +0,0 @@ -@{ - Layout = "~/Views/Shared/_Layout.cshtml"; -} diff --git a/NzbDrone.Web/Web.Debug.config b/NzbDrone.Web/Web.Debug.config deleted file mode 100644 index 2c6dd51a7..000000000 --- a/NzbDrone.Web/Web.Debug.config +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/Web.Release.config b/NzbDrone.Web/Web.Release.config deleted file mode 100644 index fb7dec3f4..000000000 --- a/NzbDrone.Web/Web.Release.config +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/Web.config b/NzbDrone.Web/Web.config deleted file mode 100644 index b3eb527ca..000000000 --- a/NzbDrone.Web/Web.config +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/favicon.ico b/NzbDrone.Web/favicon.ico deleted file mode 100644 index ddfdd7a83..000000000 Binary files a/NzbDrone.Web/favicon.ico and /dev/null differ diff --git a/NzbDrone.Web/log.config b/NzbDrone.Web/log.config deleted file mode 100644 index 766a6f1c6..000000000 --- a/NzbDrone.Web/log.config +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.Web/packages.config b/NzbDrone.Web/packages.config deleted file mode 100644 index 13d011855..000000000 --- a/NzbDrone.Web/packages.config +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/NzbDrone.ncrunchsolution b/NzbDrone.ncrunchsolution index 13a4b6131..969da6dd4 100644 --- a/NzbDrone.ncrunchsolution +++ b/NzbDrone.ncrunchsolution @@ -1,12 +1,12 @@ 1 - False + True true + true UseDynamicAnalysis Disabled Disabled Disabled - NzbDrone.Web\**.* Run all tests automatically:BFRydWU=;Run all tests manually:BUZhbHNl;Run impacted tests automatically, others manually (experimental!):CklzSW1wYWN0ZWQ=;Run pinned tests automatically, others manually:CElzUGlubmVk diff --git a/package.bat b/package.bat index 3e6cdc8c7..fc70a3ba8 100644 --- a/package.bat +++ b/package.bat @@ -18,21 +18,6 @@ xcopy NzbDrone\bin\Release\*.* %TARGET%\ /E /V /I /Y xcopy NzbDrone.Update\bin\Debug\*.* %TARGET%\NzbDrone.Update\ /E /V /I /Y xcopy NzbDrone.Update\bin\Release\*.* %TARGET%\NzbDrone.Update\ /E /V /I /Y -xcopy NzbDrone.Web\bin\*.* %TARGET%\NzbDrone.Web\bin\ /E /V /I /Y -xcopy NzbDrone.Web\App_GlobalResources\*.* %TARGET%\NzbDrone.Web\App_GlobalResources\ /E /V /I /Y -xcopy NzbDrone.Web\Content\*.* %TARGET%\NzbDrone.Web\Content\ /E /V /I /Y -xcopy NzbDrone.Web\Scripts\*.* %TARGET%\NzbDrone.Web\Scripts\ /E /V /I /Y -xcopy NzbDrone.Web\Views\*.* %TARGET%\NzbDrone.Web\Views\ /E /V /I /Y -xcopy NzbDrone.Web\_backboneApp\*.* %TARGET%\NzbDrone.Web\_backboneApp\ /E /V /I /Y - -del %TARGET%\NzbDrone.Web\bin\*.xml /Q /F - - -xcopy NzbDrone.Web\log.config %TARGET%\NzbDrone.Web\ -xcopy NzbDrone.Web\Global.asax %TARGET%\NzbDrone.Web\ -xcopy NzbDrone.Web\favicon.ico %TARGET%\NzbDrone.Web\ -xcopy NzbDrone.Web\web.config %TARGET%\NzbDrone.Web\ - CD %PACKAGEROOT%