Fixed indexer tests & More Series removals?
|
@ -23,11 +23,11 @@ namespace NzbDrone.Core.Test.Indexers
|
||||||
public class IndexerServiceTest : CoreTest<IndexerService>
|
public class IndexerServiceTest : CoreTest<IndexerService>
|
||||||
{
|
{
|
||||||
[Test]
|
[Test]
|
||||||
public void Init_indexer_test()
|
public void should_insert_indexer_in_repository_when_it_doesnt_exist()
|
||||||
{
|
{
|
||||||
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<MockIndexer>() });
|
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<MockIndexer>() });
|
||||||
|
|
||||||
Mocker.Resolve<IndexerService>();
|
Subject.Init();
|
||||||
|
|
||||||
Mocker.GetMock<IIndexerRepository>()
|
Mocker.GetMock<IIndexerRepository>()
|
||||||
.Verify(v => v.Insert(It.IsAny<Indexer>()), Times.Once());
|
.Verify(v => v.Insert(It.IsAny<Indexer>()), Times.Once());
|
||||||
|
@ -50,7 +50,7 @@ namespace NzbDrone.Core.Test.Indexers
|
||||||
{
|
{
|
||||||
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<DefaultEnabledIndexer>() });
|
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<DefaultEnabledIndexer>() });
|
||||||
|
|
||||||
Mocker.Resolve<IndexerService>();
|
Subject.Init();
|
||||||
|
|
||||||
Mocker.GetMock<IIndexerRepository>()
|
Mocker.GetMock<IIndexerRepository>()
|
||||||
.Verify(v => v.Insert(It.Is<Indexer>(indexer => indexer.Enable)), Times.Once());
|
.Verify(v => v.Insert(It.Is<Indexer>(indexer => indexer.Enable)), Times.Once());
|
||||||
|
@ -64,7 +64,7 @@ namespace NzbDrone.Core.Test.Indexers
|
||||||
{
|
{
|
||||||
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<MockIndexer>() });
|
Mocker.SetConstant<IEnumerable<IndexerBase>>(new List<IndexerBase> { Mocker.Resolve<MockIndexer>() });
|
||||||
|
|
||||||
Mocker.Resolve<IndexerService>();
|
Subject.Init();
|
||||||
|
|
||||||
Mocker.GetMock<IIndexerRepository>()
|
Mocker.GetMock<IIndexerRepository>()
|
||||||
.Verify(v => v.Insert(It.Is<Indexer>(indexer => indexer.Enable)), Times.Never());
|
.Verify(v => v.Insert(It.Is<Indexer>(indexer => indexer.Enable)), Times.Never());
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Web;
|
|
||||||
using Autofac;
|
|
||||||
using MongoDB.Driver;
|
|
||||||
using NzbDrone.Services.Api.Datastore;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api
|
|
||||||
{
|
|
||||||
public static class ApiServicesRegistrationExtention
|
|
||||||
{
|
|
||||||
public static ContainerBuilder RegisterApiServices(this ContainerBuilder containerBuilder)
|
|
||||||
{
|
|
||||||
containerBuilder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly()).SingleInstance();
|
|
||||||
|
|
||||||
containerBuilder.Register(c => c.Resolve<Connection>().GetMainDb())
|
|
||||||
.As<MongoDatabase>().SingleInstance();
|
|
||||||
|
|
||||||
return containerBuilder;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Web;
|
|
||||||
using AutoMapper;
|
|
||||||
using Autofac;
|
|
||||||
using MongoDB.Bson;
|
|
||||||
using NLog;
|
|
||||||
using Nancy.Bootstrapper;
|
|
||||||
using Nancy.Bootstrappers.Autofac;
|
|
||||||
using NzbDrone.Services.Api.Extensions;
|
|
||||||
using NzbDrone.Services.Api.SceneMapping;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api
|
|
||||||
{
|
|
||||||
public class Bootstrapper : AutofacNancyBootstrapper
|
|
||||||
{
|
|
||||||
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
|
||||||
|
|
||||||
protected override ILifetimeScope GetApplicationContainer()
|
|
||||||
{
|
|
||||||
ApplicationPipelines.OnError.AddItemToEndOfPipeline((context, exception) =>
|
|
||||||
{
|
|
||||||
Logger.FatalException("Application Exception", exception);
|
|
||||||
return null;
|
|
||||||
});
|
|
||||||
|
|
||||||
var builder = new ContainerBuilder();
|
|
||||||
builder.RegisterApiServices();
|
|
||||||
var container = builder.Build();
|
|
||||||
|
|
||||||
return container;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override NancyInternalConfiguration InternalConfiguration
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return NancyInternalConfiguration.WithOverrides(c => c.Serializers.Add(typeof(NancyJsonSerializer)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void ApplicationStartup(ILifetimeScope container, IPipelines pipelines)
|
|
||||||
{
|
|
||||||
InitializeAutomapper();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void InitializeAutomapper()
|
|
||||||
{
|
|
||||||
Mapper.CreateMap<SceneMappingModel, SceneMappingJsonModel>()
|
|
||||||
.ForMember(dest => dest.MapId, opt => opt.MapFrom(src => src.MapId.ToString()));
|
|
||||||
|
|
||||||
Mapper.CreateMap<SceneMappingJsonModel, SceneMappingModel>()
|
|
||||||
.ForMember(dest => dest.MapId, opt => opt.MapFrom(src => ObjectId.Parse(src.MapId)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Bson.Serialization.Attributes;
|
|
||||||
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.DailySeries
|
|
||||||
{
|
|
||||||
public class DailySeriesModel
|
|
||||||
{
|
|
||||||
public const string CollectionName = "DailySeries";
|
|
||||||
|
|
||||||
[BsonId]
|
|
||||||
public Int32 Id { get; set; }
|
|
||||||
|
|
||||||
public String Title { get; set; }
|
|
||||||
|
|
||||||
public Boolean Public { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using Nancy;
|
|
||||||
using NzbDrone.Services.Api.Extensions;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.DailySeries
|
|
||||||
{
|
|
||||||
public class DailySeriesModule : NancyModule
|
|
||||||
{
|
|
||||||
private readonly DailySeriesRepository _dailySeriesRepository;
|
|
||||||
|
|
||||||
public DailySeriesModule(DailySeriesRepository dailySeriesRepository)
|
|
||||||
: base("/dailyseries")
|
|
||||||
{
|
|
||||||
_dailySeriesRepository = dailySeriesRepository;
|
|
||||||
|
|
||||||
Get["/"] = x => OnGet();
|
|
||||||
Get["/all"] = x => OnGet();
|
|
||||||
Get["/{Id}"] = x => OnGet((int)x.Id);
|
|
||||||
Get["/isdaily/{Id}"] = x => OnGet((int)x.Id);
|
|
||||||
}
|
|
||||||
|
|
||||||
private Response OnGet()
|
|
||||||
{
|
|
||||||
return _dailySeriesRepository.Public().AsResponse();
|
|
||||||
}
|
|
||||||
|
|
||||||
private Response OnGet(int seriesId)
|
|
||||||
{
|
|
||||||
var result = _dailySeriesRepository.Find(seriesId) != null;
|
|
||||||
|
|
||||||
return result.AsResponse();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Driver;
|
|
||||||
using MongoDB.Driver.Builders;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.DailySeries
|
|
||||||
{
|
|
||||||
public class DailySeriesRepository
|
|
||||||
{
|
|
||||||
private readonly MongoDatabase _mongoDb;
|
|
||||||
|
|
||||||
public DailySeriesRepository(MongoDatabase mongoDb)
|
|
||||||
{
|
|
||||||
_mongoDb = mongoDb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public DailySeriesRepository()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<DailySeriesModel> All()
|
|
||||||
{
|
|
||||||
return _mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).FindAll().ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<DailySeriesModel> Public()
|
|
||||||
{
|
|
||||||
var query = Query<DailySeriesModel>.EQ(d => d.Public, true);
|
|
||||||
return _mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).Find(query).ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
public DailySeriesModel Find(int seriesId)
|
|
||||||
{
|
|
||||||
var query = Query<DailySeriesModel>.EQ(d => d.Id, seriesId);
|
|
||||||
return _mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).FindOne(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Insert(DailySeriesModel dailySeries)
|
|
||||||
{
|
|
||||||
_mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).Insert(dailySeries);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Delete(int seriesId)
|
|
||||||
{
|
|
||||||
var query = Query<DailySeriesModel>.EQ(d => d.Id, seriesId);
|
|
||||||
_mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).Remove(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void TogglePublic(int seriesId, bool status)
|
|
||||||
{
|
|
||||||
var query = Query<DailySeriesModel>.EQ(d => d.Id, seriesId);
|
|
||||||
var update = Update<DailySeriesModel>.Set(d => d.Public, status);
|
|
||||||
_mongoDb.GetCollection<DailySeriesModel>(DailySeriesModel.CollectionName).Update(query, update);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,25 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Configuration;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Driver;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.Datastore
|
|
||||||
{
|
|
||||||
public class Connection
|
|
||||||
{
|
|
||||||
public MongoDatabase GetMainDb()
|
|
||||||
{
|
|
||||||
var db = GetMongoDb(ConfigurationManager.ConnectionStrings["MongoLab"].ConnectionString, "services-dev");
|
|
||||||
return db;
|
|
||||||
}
|
|
||||||
|
|
||||||
public MongoDatabase GetMongoDb(string connectionString, string dbName)
|
|
||||||
{
|
|
||||||
var mongoServer = MongoServer.Create(connectionString);
|
|
||||||
var database = mongoServer.GetDatabase(dbName.ToLowerInvariant());
|
|
||||||
return database;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
using Nancy;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.Extensions
|
|
||||||
{
|
|
||||||
public class NancyJsonSerializer : ISerializer
|
|
||||||
{
|
|
||||||
public readonly static NancyJsonSerializer Instance = new NancyJsonSerializer();
|
|
||||||
|
|
||||||
public bool CanSerialize(string contentType)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Serialize<TModel>(string contentType, TModel model, Stream outputStream)
|
|
||||||
{
|
|
||||||
var jsonTextWriter = new JsonTextWriter(new StreamWriter(outputStream));
|
|
||||||
Serializer.Instance.Serialize(jsonTextWriter, model);
|
|
||||||
jsonTextWriter.Flush();
|
|
||||||
}
|
|
||||||
|
|
||||||
public IEnumerable<string> Extensions { get; private set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,25 +0,0 @@
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
using Nancy;
|
|
||||||
using Nancy.Responses;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.Extensions
|
|
||||||
{
|
|
||||||
public static class JsonExtensions
|
|
||||||
{
|
|
||||||
public static T FromJson<T>(this Stream body)
|
|
||||||
{
|
|
||||||
var reader = new StreamReader(body, true);
|
|
||||||
body.Position = 0;
|
|
||||||
var value = reader.ReadToEnd();
|
|
||||||
return JsonConvert.DeserializeObject<T>(value, Serializer.Settings);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static JsonResponse<TModel> AsResponse<TModel>(this TModel model, HttpStatusCode statusCode = HttpStatusCode.OK)
|
|
||||||
{
|
|
||||||
var jsonResponse = new JsonResponse<TModel>(model, new NancyJsonSerializer()) { StatusCode = statusCode };
|
|
||||||
return jsonResponse;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,33 +0,0 @@
|
||||||
using System.Linq;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
using Newtonsoft.Json.Serialization;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.Extensions
|
|
||||||
{
|
|
||||||
public static class Serializer
|
|
||||||
{
|
|
||||||
static Serializer()
|
|
||||||
{
|
|
||||||
Settings = new JsonSerializerSettings
|
|
||||||
{
|
|
||||||
DateTimeZoneHandling = DateTimeZoneHandling.Utc,
|
|
||||||
NullValueHandling = NullValueHandling.Ignore,
|
|
||||||
Formatting = Formatting.None,
|
|
||||||
DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate
|
|
||||||
};
|
|
||||||
|
|
||||||
Instance = new JsonSerializer
|
|
||||||
{
|
|
||||||
DateTimeZoneHandling = Settings.DateTimeZoneHandling,
|
|
||||||
NullValueHandling = NullValueHandling.Ignore,
|
|
||||||
Formatting = Formatting.None,
|
|
||||||
DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate,
|
|
||||||
ContractResolver = new CamelCasePropertyNamesContractResolver()
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
public static JsonSerializerSettings Settings { get; private set; }
|
|
||||||
|
|
||||||
public static JsonSerializer Instance { get; private set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,177 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
||||||
<ProductVersion>
|
|
||||||
</ProductVersion>
|
|
||||||
<SchemaVersion>2.0</SchemaVersion>
|
|
||||||
<ProjectGuid>{A675DE45-D30A-4CAC-991A-34DA56947DD7}</ProjectGuid>
|
|
||||||
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
|
|
||||||
<OutputType>Library</OutputType>
|
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
||||||
<RootNamespace>NzbDrone.Services.Api</RootNamespace>
|
|
||||||
<AssemblyName>NzbDrone.Services.Api</AssemblyName>
|
|
||||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
|
||||||
<UseIISExpress>true</UseIISExpress>
|
|
||||||
<IISExpressSSLPort />
|
|
||||||
<IISExpressAnonymousAuthentication />
|
|
||||||
<IISExpressWindowsAuthentication />
|
|
||||||
<IISExpressUseClassicPipelineMode />
|
|
||||||
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
|
|
||||||
<RestorePackages>true</RestorePackages>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
||||||
<DebugSymbols>true</DebugSymbols>
|
|
||||||
<DebugType>full</DebugType>
|
|
||||||
<Optimize>false</Optimize>
|
|
||||||
<OutputPath>bin\</OutputPath>
|
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
||||||
<DebugType>pdbonly</DebugType>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<OutputPath>bin\</OutputPath>
|
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Reference Include="Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\Autofac.3.0.1\lib\net40\Autofac.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Autofac.Configuration, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\Autofac.3.0.1\lib\net40\Autofac.Configuration.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="AutoMapper, Version=2.2.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\AutoMapper.2.2.1\lib\net40\AutoMapper.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.CSharp" />
|
|
||||||
<Reference Include="MongoDB.Bson, Version=1.7.1.4791, Culture=neutral, PublicKeyToken=f686731cfb9cc103, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\mongocsharpdriver.1.7.1\lib\net35\MongoDB.Bson.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="MongoDB.Driver, Version=1.7.1.4791, Culture=neutral, PublicKeyToken=f686731cfb9cc103, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\mongocsharpdriver.1.7.1\lib\net35\MongoDB.Driver.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Nancy, Version=0.16.1.0, Culture=neutral, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\Nancy.0.16.1\lib\net40\Nancy.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Nancy.Bootstrappers.Autofac, Version=0.16.1.0, Culture=neutral, processorArchitecture=MSIL">
|
|
||||||
<SpecificVersion>False</SpecificVersion>
|
|
||||||
<HintPath>..\packages\Nancy.Bootstrappers.Autofac.0.16.1\lib\net40\Nancy.Bootstrappers.Autofac.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Newtonsoft.Json">
|
|
||||||
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="NLog">
|
|
||||||
<HintPath>..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Web.DynamicData" />
|
|
||||||
<Reference Include="System.Web.Entity" />
|
|
||||||
<Reference Include="System.Web.ApplicationServices" />
|
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
|
||||||
<Reference Include="System" />
|
|
||||||
<Reference Include="System.Data" />
|
|
||||||
<Reference Include="System.Core" />
|
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
|
||||||
<Reference Include="System.Web.Extensions" />
|
|
||||||
<Reference Include="System.Xml.Linq" />
|
|
||||||
<Reference Include="System.Drawing" />
|
|
||||||
<Reference Include="System.Web" />
|
|
||||||
<Reference Include="System.Xml" />
|
|
||||||
<Reference Include="System.Configuration" />
|
|
||||||
<Reference Include="System.Web.Services" />
|
|
||||||
<Reference Include="System.EnterpriseServices" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Content Include="Web.config" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Compile Include="ApiServicesRegistrationExtention.cs" />
|
|
||||||
<Compile Include="Bootstrapper.cs" />
|
|
||||||
<Compile Include="DailySeries\DailySeriesModel.cs" />
|
|
||||||
<Compile Include="DailySeries\DailySeriesModule.cs" />
|
|
||||||
<Compile Include="DailySeries\DailySeriesRepository.cs" />
|
|
||||||
<Compile Include="Datastore\Connection.cs" />
|
|
||||||
<Compile Include="Extensions\NancyJsonSerializer.cs" />
|
|
||||||
<Compile Include="Extensions\RequestExtensions.cs" />
|
|
||||||
<Compile Include="Extensions\Serializer.cs" />
|
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
||||||
<Compile Include="SceneMapping\SceneMappingJsonModel.cs" />
|
|
||||||
<Compile Include="SceneMapping\SceneMappingModel.cs" />
|
|
||||||
<Compile Include="SceneMapping\SceneMappingModule.cs" />
|
|
||||||
<Compile Include="SceneMapping\SceneMappingRepository.cs" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Content Include="packages.config" />
|
|
||||||
<None Include="Web.Debug.config">
|
|
||||||
<DependentUpon>Web.config</DependentUpon>
|
|
||||||
</None>
|
|
||||||
<None Include="Web.Release.config">
|
|
||||||
<DependentUpon>Web.config</DependentUpon>
|
|
||||||
</None>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Folder Include="Resolvers\" />
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup>
|
|
||||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
|
||||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
|
|
||||||
<DebugSymbols>true</DebugSymbols>
|
|
||||||
<OutputPath>bin\</OutputPath>
|
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
||||||
<DebugType>full</DebugType>
|
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
|
|
||||||
<OutputPath>bin\</OutputPath>
|
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<DebugType>pdbonly</DebugType>
|
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
|
||||||
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
|
|
||||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
|
|
||||||
<ProjectExtensions>
|
|
||||||
<VisualStudio>
|
|
||||||
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
|
|
||||||
<WebProjectProperties>
|
|
||||||
<UseIIS>False</UseIIS>
|
|
||||||
<AutoAssignPort>True</AutoAssignPort>
|
|
||||||
<DevelopmentServerPort>28501</DevelopmentServerPort>
|
|
||||||
<DevelopmentServerVPath>/</DevelopmentServerVPath>
|
|
||||||
<IISUrl>http://localhost:1306/</IISUrl>
|
|
||||||
<NTLMAuthentication>False</NTLMAuthentication>
|
|
||||||
<UseCustomServer>False</UseCustomServer>
|
|
||||||
<CustomServerUrl>
|
|
||||||
</CustomServerUrl>
|
|
||||||
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
|
|
||||||
</WebProjectProperties>
|
|
||||||
</FlavorProperties>
|
|
||||||
</VisualStudio>
|
|
||||||
</ProjectExtensions>
|
|
||||||
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
|
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
|
||||||
<Target Name="BeforeBuild">
|
|
||||||
</Target>
|
|
||||||
<Target Name="AfterBuild">
|
|
||||||
</Target>
|
|
||||||
-->
|
|
||||||
</Project>
|
|
|
@ -1,35 +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.Services.Api")]
|
|
||||||
[assembly: AssemblyDescription("")]
|
|
||||||
[assembly: AssemblyConfiguration("")]
|
|
||||||
[assembly: AssemblyCompany("")]
|
|
||||||
[assembly: AssemblyProduct("NzbDrone.Services.Api")]
|
|
||||||
[assembly: AssemblyCopyright("Copyright © 2013")]
|
|
||||||
[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("616405a2-4ccc-4272-9464-905c69b5a8d3")]
|
|
||||||
|
|
||||||
// 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 Revision and Build Numbers
|
|
||||||
// by using the '*' as shown below:
|
|
||||||
[assembly: AssemblyVersion("1.0.0.0")]
|
|
||||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
|
@ -1,29 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Bson;
|
|
||||||
using MongoDB.Bson.Serialization.Attributes;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.SceneMapping
|
|
||||||
{
|
|
||||||
public class SceneMappingJsonModel
|
|
||||||
{
|
|
||||||
public String MapId { get; set; }
|
|
||||||
|
|
||||||
public string CleanTitle { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Id")]
|
|
||||||
public int SeriesId { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Title")]
|
|
||||||
public string SceneName { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Season")]
|
|
||||||
public int SeasonNumber { get; set; }
|
|
||||||
|
|
||||||
public Boolean Public { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Bson;
|
|
||||||
using MongoDB.Bson.Serialization.Attributes;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.SceneMapping
|
|
||||||
{
|
|
||||||
public class SceneMappingModel
|
|
||||||
{
|
|
||||||
public const string CollectionName = "SceneMappings";
|
|
||||||
|
|
||||||
[BsonId]
|
|
||||||
public ObjectId MapId { get; set; }
|
|
||||||
|
|
||||||
public string CleanTitle { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Id")]
|
|
||||||
public int SeriesId { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Title")]
|
|
||||||
public string SceneName { get; set; }
|
|
||||||
|
|
||||||
[JsonProperty(PropertyName = "Season")]
|
|
||||||
public int SeasonNumber { get; set; }
|
|
||||||
|
|
||||||
public Boolean Public { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,38 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using AutoMapper;
|
|
||||||
using MongoDB.Bson;
|
|
||||||
using Nancy;
|
|
||||||
using NzbDrone.Services.Api.Extensions;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.SceneMapping
|
|
||||||
{
|
|
||||||
public class SceneMappingModule : NancyModule
|
|
||||||
{
|
|
||||||
private readonly SceneMappingRepository _sceneMappingRepository;
|
|
||||||
|
|
||||||
public SceneMappingModule(SceneMappingRepository sceneMappingRepository)
|
|
||||||
: base("/scenemapping")
|
|
||||||
{
|
|
||||||
_sceneMappingRepository = sceneMappingRepository;
|
|
||||||
|
|
||||||
Get["/"] = x => OnGet();
|
|
||||||
Get["/active"] = x => OnGet();
|
|
||||||
Get["/{MapId}"] = x => OnGet(x.MapId);
|
|
||||||
}
|
|
||||||
|
|
||||||
private Response OnGet()
|
|
||||||
{
|
|
||||||
var mappings = _sceneMappingRepository.Public();
|
|
||||||
return Mapper.Map<List<SceneMappingModel>, List<SceneMappingJsonModel>>(mappings).AsResponse();
|
|
||||||
}
|
|
||||||
|
|
||||||
private Response OnGet(string mapId)
|
|
||||||
{
|
|
||||||
var mapping = _sceneMappingRepository.Find(ObjectId.Parse(mapId));
|
|
||||||
return Mapper.Map<SceneMappingModel, SceneMappingJsonModel>(mapping).AsResponse();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,63 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Web;
|
|
||||||
using MongoDB.Bson;
|
|
||||||
using MongoDB.Driver;
|
|
||||||
using MongoDB.Driver.Builders;
|
|
||||||
using NzbDrone.Services.Api.DailySeries;
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Api.SceneMapping
|
|
||||||
{
|
|
||||||
public class SceneMappingRepository
|
|
||||||
{
|
|
||||||
private readonly MongoDatabase _mongoDb;
|
|
||||||
|
|
||||||
public SceneMappingRepository(MongoDatabase mongoDb)
|
|
||||||
{
|
|
||||||
_mongoDb = mongoDb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public SceneMappingRepository()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<SceneMappingModel> All()
|
|
||||||
{
|
|
||||||
return _mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).FindAll().ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<SceneMappingModel> Public()
|
|
||||||
{
|
|
||||||
var query = Query<SceneMappingModel>.EQ(d => d.Public, true);
|
|
||||||
return _mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).Find(query).ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
public SceneMappingModel Find(ObjectId mapId)
|
|
||||||
{
|
|
||||||
var query = Query<SceneMappingModel>.EQ(d => d.MapId, mapId);
|
|
||||||
return _mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).FindOne(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
public ObjectId Insert(SceneMappingModel mapping)
|
|
||||||
{
|
|
||||||
mapping.MapId = ObjectId.GenerateNewId();
|
|
||||||
_mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).Insert(mapping);
|
|
||||||
|
|
||||||
return mapping.MapId;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Delete(ObjectId mapId)
|
|
||||||
{
|
|
||||||
var query = Query<SceneMappingModel>.EQ(d => d.MapId, mapId);
|
|
||||||
_mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).Remove(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void TogglePublic(ObjectId mapId, bool status)
|
|
||||||
{
|
|
||||||
var query = Query<SceneMappingModel>.EQ(d => d.MapId, mapId);
|
|
||||||
var update = Update<SceneMappingModel>.Set(d => d.Public, status);
|
|
||||||
_mongoDb.GetCollection<SceneMappingModel>(SceneMappingModel.CollectionName).Update(query, update);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,30 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
|
|
||||||
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
|
|
||||||
|
|
||||||
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
|
|
||||||
<!--
|
|
||||||
In the example below, the "SetAttributes" transform will change the value of
|
|
||||||
"connectionString" to use "ReleaseSQLServer" only when the "Match" locator
|
|
||||||
finds an attribute "name" that has a value of "MyDB".
|
|
||||||
|
|
||||||
<connectionStrings>
|
|
||||||
<add name="MyDB"
|
|
||||||
connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
|
|
||||||
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
|
|
||||||
</connectionStrings>
|
|
||||||
-->
|
|
||||||
<system.web>
|
|
||||||
<!--
|
|
||||||
In the example below, the "Replace" transform will replace the entire
|
|
||||||
<customErrors> section of your web.config file.
|
|
||||||
Note that because there is only one customErrors section under the
|
|
||||||
<system.web> node, there is no need to use the "xdt:Locator" attribute.
|
|
||||||
|
|
||||||
<customErrors defaultRedirect="GenericError.htm"
|
|
||||||
mode="RemoteOnly" xdt:Transform="Replace">
|
|
||||||
<error statusCode="500" redirect="InternalError.htm"/>
|
|
||||||
</customErrors>
|
|
||||||
-->
|
|
||||||
</system.web>
|
|
||||||
</configuration>
|
|
|
@ -1,31 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
|
|
||||||
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
|
|
||||||
|
|
||||||
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
|
|
||||||
<!--
|
|
||||||
In the example below, the "SetAttributes" transform will change the value of
|
|
||||||
"connectionString" to use "ReleaseSQLServer" only when the "Match" locator
|
|
||||||
finds an attribute "name" that has a value of "MyDB".
|
|
||||||
|
|
||||||
<connectionStrings>
|
|
||||||
<add name="MyDB"
|
|
||||||
connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
|
|
||||||
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
|
|
||||||
</connectionStrings>
|
|
||||||
-->
|
|
||||||
<system.web>
|
|
||||||
<compilation xdt:Transform="RemoveAttributes(debug)" />
|
|
||||||
<!--
|
|
||||||
In the example below, the "Replace" transform will replace the entire
|
|
||||||
<customErrors> section of your web.config file.
|
|
||||||
Note that because there is only one customErrors section under the
|
|
||||||
<system.web> node, there is no need to use the "xdt:Locator" attribute.
|
|
||||||
|
|
||||||
<customErrors defaultRedirect="GenericError.htm"
|
|
||||||
mode="RemoteOnly" xdt:Transform="Replace">
|
|
||||||
<error statusCode="500" redirect="InternalError.htm"/>
|
|
||||||
</customErrors>
|
|
||||||
-->
|
|
||||||
</system.web>
|
|
||||||
</configuration>
|
|
|
@ -1,21 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
For more information on how to configure your ASP.NET application, please visit
|
|
||||||
http://go.microsoft.com/fwlink/?LinkId=169433
|
|
||||||
-->
|
|
||||||
<configuration>
|
|
||||||
<connectionStrings>
|
|
||||||
<add name="MongoLab" connectionString="mongodb://nzbdrone:h53huDrAzufRe8a3@ds035147.mongolab.com:35147/?safe=true;wtimeoutMS=2000" />
|
|
||||||
</connectionStrings>
|
|
||||||
<system.web>
|
|
||||||
<compilation debug="true" targetFramework="4.0" />
|
|
||||||
</system.web>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
|
@ -1,10 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<packages>
|
|
||||||
<package id="Autofac" version="3.0.1" targetFramework="net40" />
|
|
||||||
<package id="AutoMapper" version="2.2.1" targetFramework="net40" />
|
|
||||||
<package id="mongocsharpdriver" version="1.7.1" targetFramework="net40" />
|
|
||||||
<package id="Nancy" version="0.16.1" targetFramework="net40" />
|
|
||||||
<package id="Nancy.Bootstrappers.Autofac" version="0.16.1" targetFramework="net40" />
|
|
||||||
<package id="Newtonsoft.Json" version="4.5.11" targetFramework="net40" />
|
|
||||||
<package id="NLog" version="2.0.0.2000" targetFramework="net40" />
|
|
||||||
</packages>
|
|
|
@ -1,299 +0,0 @@
|
||||||
/*
|
|
||||||
|
|
||||||
ELMAH - Error Logging Modules and Handlers for ASP.NET
|
|
||||||
Copyright (c) 2004-9 Atif Aziz. All rights reserved.
|
|
||||||
|
|
||||||
Author(s):
|
|
||||||
|
|
||||||
Atif Aziz, http://www.raboof.com
|
|
||||||
Phil Haacked, http://haacked.com
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
-- ELMAH DDL script for Microsoft SQL Server 2000 or later.
|
|
||||||
|
|
||||||
-- $Id: SQLServer.sql 677 2009-09-29 18:02:39Z azizatif $
|
|
||||||
|
|
||||||
DECLARE @DBCompatibilityLevel INT
|
|
||||||
DECLARE @DBCompatibilityLevelMajor INT
|
|
||||||
DECLARE @DBCompatibilityLevelMinor INT
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
@DBCompatibilityLevel = cmptlevel
|
|
||||||
FROM
|
|
||||||
master.dbo.sysdatabases
|
|
||||||
WHERE
|
|
||||||
name = DB_NAME()
|
|
||||||
|
|
||||||
IF @DBCompatibilityLevel <> 80
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
SELECT @DBCompatibilityLevelMajor = @DBCompatibilityLevel / 10,
|
|
||||||
@DBCompatibilityLevelMinor = @DBCompatibilityLevel % 10
|
|
||||||
|
|
||||||
PRINT N'
|
|
||||||
===========================================================================
|
|
||||||
WARNING!
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
|
|
||||||
This script is designed for Microsoft SQL Server 2000 (8.0) but your
|
|
||||||
database is set up for compatibility with version '
|
|
||||||
+ CAST(@DBCompatibilityLevelMajor AS NVARCHAR(80))
|
|
||||||
+ N'.'
|
|
||||||
+ CAST(@DBCompatibilityLevelMinor AS NVARCHAR(80))
|
|
||||||
+ N'. Although
|
|
||||||
the script should work with later versions of Microsoft SQL Server,
|
|
||||||
you can ensure compatibility by executing the following statement:
|
|
||||||
|
|
||||||
ALTER DATABASE ['
|
|
||||||
+ DB_NAME()
|
|
||||||
+ N']
|
|
||||||
SET COMPATIBILITY_LEVEL = 80
|
|
||||||
|
|
||||||
If you are hosting ELMAH in the same database as your application
|
|
||||||
database and do not wish to change the compatibility option then you
|
|
||||||
should create a separate database to host ELMAH where you can set the
|
|
||||||
compatibility level more freely.
|
|
||||||
|
|
||||||
If you continue with the current setup, please report any compatibility
|
|
||||||
issues you encounter over at:
|
|
||||||
|
|
||||||
http://code.google.com/p/elmah/issues/list
|
|
||||||
|
|
||||||
===========================================================================
|
|
||||||
'
|
|
||||||
END
|
|
||||||
GO
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------------------
|
|
||||||
TABLES
|
|
||||||
------------------------------------------------------------------------ */
|
|
||||||
|
|
||||||
CREATE TABLE [dbo].[ELMAH_Error]
|
|
||||||
(
|
|
||||||
[ErrorId] UNIQUEIDENTIFIER NOT NULL,
|
|
||||||
[Application] NVARCHAR(60) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[Host] NVARCHAR(50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[Type] NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[Source] NVARCHAR(60) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[Message] NVARCHAR(500) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[User] NVARCHAR(50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
|
|
||||||
[StatusCode] INT NOT NULL,
|
|
||||||
[TimeUtc] DATETIME NOT NULL,
|
|
||||||
[Sequence] INT IDENTITY (1, 1) NOT NULL,
|
|
||||||
[AllXml] NTEXT COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
|
|
||||||
)
|
|
||||||
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
|
|
||||||
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [dbo].[ELMAH_Error] WITH NOCHECK ADD
|
|
||||||
CONSTRAINT [PK_ELMAH_Error] PRIMARY KEY NONCLUSTERED ([ErrorId]) ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [dbo].[ELMAH_Error] ADD
|
|
||||||
CONSTRAINT [DF_ELMAH_Error_ErrorId] DEFAULT (NEWID()) FOR [ErrorId]
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE NONCLUSTERED INDEX [IX_ELMAH_Error_App_Time_Seq] ON [dbo].[ELMAH_Error]
|
|
||||||
(
|
|
||||||
[Application] ASC,
|
|
||||||
[TimeUtc] DESC,
|
|
||||||
[Sequence] DESC
|
|
||||||
)
|
|
||||||
ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------------------
|
|
||||||
STORED PROCEDURES
|
|
||||||
------------------------------------------------------------------------ */
|
|
||||||
|
|
||||||
SET QUOTED_IDENTIFIER ON
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE PROCEDURE [dbo].[ELMAH_GetErrorXml]
|
|
||||||
(
|
|
||||||
@Application NVARCHAR(60),
|
|
||||||
@ErrorId UNIQUEIDENTIFIER
|
|
||||||
)
|
|
||||||
AS
|
|
||||||
|
|
||||||
SET NOCOUNT ON
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
[AllXml]
|
|
||||||
FROM
|
|
||||||
[ELMAH_Error]
|
|
||||||
WHERE
|
|
||||||
[ErrorId] = @ErrorId
|
|
||||||
AND
|
|
||||||
[Application] = @Application
|
|
||||||
|
|
||||||
GO
|
|
||||||
SET QUOTED_IDENTIFIER OFF
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
||||||
SET QUOTED_IDENTIFIER ON
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE PROCEDURE [dbo].[ELMAH_GetErrorsXml]
|
|
||||||
(
|
|
||||||
@Application NVARCHAR(60),
|
|
||||||
@PageIndex INT = 0,
|
|
||||||
@PageSize INT = 15,
|
|
||||||
@TotalCount INT OUTPUT
|
|
||||||
)
|
|
||||||
AS
|
|
||||||
|
|
||||||
SET NOCOUNT ON
|
|
||||||
|
|
||||||
DECLARE @FirstTimeUTC DATETIME
|
|
||||||
DECLARE @FirstSequence INT
|
|
||||||
DECLARE @StartRow INT
|
|
||||||
DECLARE @StartRowIndex INT
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
@TotalCount = COUNT(1)
|
|
||||||
FROM
|
|
||||||
[ELMAH_Error]
|
|
||||||
WHERE
|
|
||||||
[Application] = @Application
|
|
||||||
|
|
||||||
-- Get the ID of the first error for the requested page
|
|
||||||
|
|
||||||
SET @StartRowIndex = @PageIndex * @PageSize + 1
|
|
||||||
|
|
||||||
IF @StartRowIndex <= @TotalCount
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
SET ROWCOUNT @StartRowIndex
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
@FirstTimeUTC = [TimeUtc],
|
|
||||||
@FirstSequence = [Sequence]
|
|
||||||
FROM
|
|
||||||
[ELMAH_Error]
|
|
||||||
WHERE
|
|
||||||
[Application] = @Application
|
|
||||||
ORDER BY
|
|
||||||
[TimeUtc] DESC,
|
|
||||||
[Sequence] DESC
|
|
||||||
|
|
||||||
END
|
|
||||||
ELSE
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
SET @PageSize = 0
|
|
||||||
|
|
||||||
END
|
|
||||||
|
|
||||||
-- Now set the row count to the requested page size and get
|
|
||||||
-- all records below it for the pertaining application.
|
|
||||||
|
|
||||||
SET ROWCOUNT @PageSize
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
errorId = [ErrorId],
|
|
||||||
application = [Application],
|
|
||||||
host = [Host],
|
|
||||||
type = [Type],
|
|
||||||
source = [Source],
|
|
||||||
message = [Message],
|
|
||||||
[user] = [User],
|
|
||||||
statusCode = [StatusCode],
|
|
||||||
time = CONVERT(VARCHAR(50), [TimeUtc], 126) + 'Z'
|
|
||||||
FROM
|
|
||||||
[ELMAH_Error] error
|
|
||||||
WHERE
|
|
||||||
[Application] = @Application
|
|
||||||
AND
|
|
||||||
[TimeUtc] <= @FirstTimeUTC
|
|
||||||
AND
|
|
||||||
[Sequence] <= @FirstSequence
|
|
||||||
ORDER BY
|
|
||||||
[TimeUtc] DESC,
|
|
||||||
[Sequence] DESC
|
|
||||||
FOR
|
|
||||||
XML AUTO
|
|
||||||
|
|
||||||
GO
|
|
||||||
SET QUOTED_IDENTIFIER OFF
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
||||||
SET QUOTED_IDENTIFIER ON
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE PROCEDURE [dbo].[ELMAH_LogError]
|
|
||||||
(
|
|
||||||
@ErrorId UNIQUEIDENTIFIER,
|
|
||||||
@Application NVARCHAR(60),
|
|
||||||
@Host NVARCHAR(30),
|
|
||||||
@Type NVARCHAR(100),
|
|
||||||
@Source NVARCHAR(60),
|
|
||||||
@Message NVARCHAR(500),
|
|
||||||
@User NVARCHAR(50),
|
|
||||||
@AllXml NTEXT,
|
|
||||||
@StatusCode INT,
|
|
||||||
@TimeUtc DATETIME
|
|
||||||
)
|
|
||||||
AS
|
|
||||||
|
|
||||||
SET NOCOUNT ON
|
|
||||||
|
|
||||||
INSERT
|
|
||||||
INTO
|
|
||||||
[ELMAH_Error]
|
|
||||||
(
|
|
||||||
[ErrorId],
|
|
||||||
[Application],
|
|
||||||
[Host],
|
|
||||||
[Type],
|
|
||||||
[Source],
|
|
||||||
[Message],
|
|
||||||
[User],
|
|
||||||
[AllXml],
|
|
||||||
[StatusCode],
|
|
||||||
[TimeUtc]
|
|
||||||
)
|
|
||||||
VALUES
|
|
||||||
(
|
|
||||||
@ErrorId,
|
|
||||||
@Application,
|
|
||||||
@Host,
|
|
||||||
@Type,
|
|
||||||
@Source,
|
|
||||||
@Message,
|
|
||||||
@User,
|
|
||||||
@AllXml,
|
|
||||||
@StatusCode,
|
|
||||||
@TimeUtc
|
|
||||||
)
|
|
||||||
|
|
||||||
GO
|
|
||||||
SET QUOTED_IDENTIFIER OFF
|
|
||||||
GO
|
|
||||||
SET ANSI_NULLS ON
|
|
||||||
GO
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
Please note that in order to complete the installation of ELMAH.SqlServer you will have to do the following:
|
|
||||||
|
|
||||||
1) Run the Elmah.SqlServer.sql script against your database
|
|
||||||
2) Edit your web.config with the correct settings in the elmah <connectionString> to connect to your database
|
|
|
@ -1,31 +0,0 @@
|
||||||
using System.Linq;
|
|
||||||
using System.Web.Hosting;
|
|
||||||
using NLog;
|
|
||||||
using NzbDrone.Common;
|
|
||||||
using NzbDrone.Services.Service.App_Start;
|
|
||||||
|
|
||||||
[assembly: WebActivator.PreApplicationStartMethod(typeof(Logging), "PreStart")]
|
|
||||||
|
|
||||||
namespace NzbDrone.Services.Service.App_Start
|
|
||||||
{
|
|
||||||
|
|
||||||
public static class Logging
|
|
||||||
{
|
|
||||||
private static readonly Logger logger = LogManager.GetCurrentClassLogger();
|
|
||||||
|
|
||||||
public static void PreStart()
|
|
||||||
{
|
|
||||||
string logPath = string.Format("C:\\NLog\\{0}\\{1}\\${{shortdate}}-${{logger}}.log", HostingEnvironment.SiteName, new EnvironmentProvider().Version);
|
|
||||||
string error = string.Format("C:\\NLog\\{0}\\{1}\\${{shortdate}}_Error.log", HostingEnvironment.SiteName, new EnvironmentProvider().Version);
|
|
||||||
|
|
||||||
LogConfiguration.RegisterUdpLogger();
|
|
||||||
LogConfiguration.RegisterFileLogger(logPath, LogLevel.Trace);
|
|
||||||
//LogConfiguration.RegisterFileLogger(error, LogLevel.Warn);
|
|
||||||
LogConfiguration.Reload();
|
|
||||||
|
|
||||||
logger.Info("Logger has been configured. (App Start)");
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -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
|
|
||||||
{
|
|
||||||
}
|
|
|
@ -1,310 +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: 300px;
|
|
||||||
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
|
|
||||||
{
|
|
||||||
padding: 3px 18px 3px 10px;
|
|
||||||
border-top: 1px solid black;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
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_enabled.png') no-repeat top left; }
|
|
||||||
.paginate_enabled_first:hover { background: url('../images/back_enabled_hover.png') no-repeat top left; }
|
|
||||||
.paginate_disabled_first { background: url('../images/back_disabled.png') no-repeat top left; }
|
|
||||||
|
|
||||||
.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; }
|
|
||||||
|
|
||||||
.paginate_enabled_last { background: url('../images/forward_enabled.png') no-repeat top right; }
|
|
||||||
.paginate_enabled_last:hover { background: url('../images/forward_enabled_hover.png') no-repeat top right; }
|
|
||||||
.paginate_disabled_last { background: url('../images/forward_disabled.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;
|
|
||||||
}
|
|
||||||
|
|
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 894 B |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.0 KiB |
|
@ -1,88 +0,0 @@
|
||||||
.gridImage , .gridAction
|
|
||||||
{
|
|
||||||
width: 18px;
|
|
||||||
height: 18px;
|
|
||||||
padding: 3px 1px;
|
|
||||||
margin: 0px;
|
|
||||||
vertical-align: middle;
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.gridAction:hover
|
|
||||||
{
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.statusImage:hover {
|
|
||||||
background-color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 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
|
|
||||||
{
|
|
||||||
font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif;
|
|
||||||
font-size: 17px;
|
|
||||||
background-color: grey;
|
|
||||||
font-weight: lighter;
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-row
|
|
||||||
{
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Colour alternating rows */
|
|
||||||
.seriesTable .alt-row
|
|
||||||
{
|
|
||||||
background: #f0f5ff;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Episode Grid Row Colouring */
|
|
||||||
.episodeIgnored
|
|
||||||
{
|
|
||||||
background: lightgray;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.episodeMissing
|
|
||||||
{
|
|
||||||
background-color: #f5c5c5;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*Hidden Grid to prevent FOUSC*/
|
|
||||||
.hidden-grid {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.grid-container {
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 902 B |
Before Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 719 B |
Before Width: | Height: | Size: 198 B |
Before Width: | Height: | Size: 264 B |
Before Width: | Height: | Size: 816 B |
Before Width: | Height: | Size: 5.0 KiB |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 589 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 534 B |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 743 B |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 4.7 KiB |
Before Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 6.3 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 288 B |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 10 KiB |
|
@ -1,2 +0,0 @@
|
||||||
[InternetShortcut]
|
|
||||||
URL=http://www.iconfinder.com/search/?q=iconset:onebit
|
|
Before Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 288 B |
Before Width: | Height: | Size: 534 B |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 800 B |
Before Width: | Height: | Size: 819 B |
Before Width: | Height: | Size: 314 B |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 570 B |
Before Width: | Height: | Size: 1.2 KiB |
|
@ -1,26 +0,0 @@
|
||||||
.sub-menu
|
|
||||||
{
|
|
||||||
padding-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sub-menu li
|
|
||||||
{
|
|
||||||
display: inline;
|
|
||||||
list-style-type: none;
|
|
||||||
padding-left: 8px;
|
|
||||||
padding-right: 12px;
|
|
||||||
padding-top: 6px;
|
|
||||||
border-right: 1px solid #F0F0F0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sub-menu a
|
|
||||||
{
|
|
||||||
text-decoration: none;
|
|
||||||
color: #105CD6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.t-grid .sub-menu
|
|
||||||
{
|
|
||||||
margin-left: -10px;
|
|
||||||
margin-bottom: 0px;
|
|
||||||
}
|
|
|
@ -1,55 +0,0 @@
|
||||||
/*Pinned messages*/
|
|
||||||
|
|
||||||
.infoBox, .successBox, .warningBox, .errorBox, .validationBox
|
|
||||||
{
|
|
||||||
border: 0px solid;
|
|
||||||
margin: 10px 0px;
|
|
||||||
padding: 10px 10px 10px 50px;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: 10px center;
|
|
||||||
}
|
|
||||||
.infoBox
|
|
||||||
{
|
|
||||||
color: #00529B;
|
|
||||||
background-color: #f4f7f9;
|
|
||||||
background-image: url(images/blue.png);
|
|
||||||
}
|
|
||||||
.successBox
|
|
||||||
{
|
|
||||||
color: #4F8A10;
|
|
||||||
background-color: #DFF2BF;
|
|
||||||
background-image: url(images/green.png);
|
|
||||||
}
|
|
||||||
.warningBox
|
|
||||||
{
|
|
||||||
color: #9F6000;
|
|
||||||
background-color: #FEEFB3;
|
|
||||||
background-image: url(images/yellow.png);
|
|
||||||
}
|
|
||||||
.errorBox
|
|
||||||
{
|
|
||||||
color: #D8000C;
|
|
||||||
background-color: #FFBABA;
|
|
||||||
background-image: url(images/red.png);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*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: 99;
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
font-size: 20px;
|
|
||||||
color: White;
|
|
||||||
text-align: center;
|
|
||||||
white-space:nowrap;
|
|
||||||
}
|
|
|
@ -1,280 +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: 850px;
|
|
||||||
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;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Menu */
|
|
||||||
|
|
||||||
#menu
|
|
||||||
{
|
|
||||||
height: 60px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#menu ul
|
|
||||||
{
|
|
||||||
margin: 0;
|
|
||||||
padding: 5px 0px 5px 0px;
|
|
||||||
list-style: none;
|
|
||||||
line-height: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
#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;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Page */
|
|
||||||
|
|
||||||
#page
|
|
||||||
{
|
|
||||||
background-color: White;
|
|
||||||
padding: 10px 20px 100px 20px;
|
|
||||||
min-height: 300px;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** LOGO */
|
|
||||||
|
|
||||||
#logo
|
|
||||||
{
|
|
||||||
font-family: "Segoe UI Light" , "Open Sans" , "Segoe UI" , sans-serif;
|
|
||||||
font-weight: 100;
|
|
||||||
height: 135px;
|
|
||||||
background: url(images/header.jpg) no-repeat left top;
|
|
||||||
background-color: #065EFE;
|
|
||||||
font-size: 90px;
|
|
||||||
color: #FFFFFF;
|
|
||||||
text-transform: lowercase;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: normal;
|
|
||||||
padding-left: 120px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.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], 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;
|
|
||||||
}
|
|
||||||
|
|
||||||
#quickAdd
|
|
||||||
{
|
|
||||||
position: fixed;
|
|
||||||
top: 30px;
|
|
||||||
right: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#localSeriesLookup
|
|
||||||
{
|
|
||||||
width: 220px;
|
|
||||||
float: right;
|
|
||||||
margin-top: 7px;
|
|
||||||
margin-bottom: 0px;
|
|
||||||
border: 0px;
|
|
||||||
background: rgb(40, 40, 40);
|
|
||||||
color: rgb(169, 169, 169);
|
|
||||||
padding: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.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;
|
|
||||||
}
|
|
|
@ -1,59 +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: #065EFE;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-menu-item .ui-corner-all
|
|
||||||
{
|
|
||||||
color: #065EFE;
|
|
||||||
}
|
|
||||||
|
|
||||||
.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;
|
|
||||||
}
|
|
||||||
|
|
||||||
.jquery-tabs
|
|
||||||
{
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-button .ui-state-default{
|
|
||||||
background: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*MiniProfiler*/
|
|
||||||
|
|
||||||
.profiler-button
|
|
||||||
{
|
|
||||||
opacity: 0.6;
|
|
||||||
}
|
|
Before Width: | Height: | Size: 261 B |
Before Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 178 B |
Before Width: | Height: | Size: 607 B |
Before Width: | Height: | Size: 178 B |
Before Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 288 B |
Before Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 202 B |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 4.3 KiB |
|
@ -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; }
|
|
||||||
.ui-widget-content a { }
|
|
||||||
.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 .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.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%; }
|
|
|
@ -1,118 +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);
|
|
||||||
}
|
|
||||||
|
|
||||||
.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;
|
|
||||||
}
|
|