From 4864e5a3f16e5101dad18bff2b9bd6a4ef8232b4 Mon Sep 17 00:00:00 2001 From: sujitprasad Date: Mon, 4 Jan 2016 18:05:45 +0530 Subject: [PATCH] update v1.0.4 --- .../Admin/helpdesk/LanguageController.php | 249 ++ .../Admin/helpdesk/SettingsController.php | 8 + .../Agent/helpdesk/MailController.php | 3 +- app/Http/Controllers/Auth/AuthController.php | 145 +- .../Installer/helpdesk/InstallController.php | 8 +- app/Http/Middleware/LanguageMiddleware.php | 24 + app/Http/routes.php | 29 +- app/Model/helpdesk/Utility/Limit_Login.php | 11 + config/app.php | 10 +- config/database.php | 5 +- config/languages.php | 140 + public/downloads/en.zip | Bin 0 -> 2610 bytes public/lb-faveo/Img/icon/faveokb.png | Bin 385759 -> 0 bytes public/lb-faveo/dist/css/AdminLTE.css | 35 + public/lb-faveo/dist/css/AdminLTEsemi.css | 8 + public/lb-faveo/dist/css/bootstrap.min.css | 2 +- public/lb-faveo/installer/css/.DS_Store | Bin 0 -> 8196 bytes public/lb-faveo/installer/css/admin.css | 2 +- .../installer/css/bootstrap-datepicker.css | 512 +++ public/lb-faveo/installer/css/css.css | 2 +- .../installer/css/jquery.timepicker.css | 72 + public/lb-faveo/installer/css/load-styles.css | 51 +- public/lb-faveo/installer/css/style.css | 114 + public/lb-faveo/installer/css/wc-setup.css | 2 +- public/lb-faveo/installer/js/.DS_Store | Bin 0 -> 6148 bytes .../installer/js/bootstrap-datepicker.js | 1671 +++++++ public/lb-faveo/installer/js/index.js | 61 + public/lb-faveo/installer/js/tooltip.js | 10 + .../datatables/dataTables.bootstrap.css | 35 + public/uploads/en.zip | Bin 0 -> 2610 bytes resources/lang/en/lang.php | 17 + resources/lang/su.zip | Bin 7017 -> 0 bytes resources/lang/su/lang.php | 876 ---- resources/lang/su/pagination.php | 19 - resources/lang/su/passwords.php | 22 - resources/lang/su/validation.php | 107 - resources/views/auth/login.blade.php | 7 + .../admin/helpdesk/language/create.blade.php | 102 + .../admin/helpdesk/language/index.blade.php | 61 + .../default1/admin/helpdesk/setting.blade.php | 435 ++ .../default1/admin/layout/admin.blade.php | 80 +- .../helpdesk/organization/index.blade.php | 20 +- .../agent/helpdesk/ticket/timeline.blade.php | 2 +- .../agent/helpdesk/user/index.blade.php | 26 +- .../default1/agent/kb/article/index.blade.php | 8 +- .../default1/agent/layout/agent.blade.php | 23 +- .../default1/agent/layout/sidebar.blade.php | 7 +- .../helpdesk/step1.blade.php | 17 - .../helpdesk/view1.blade.php | 16 - .../helpdesk/view2.blade.php | 1510 ------- .../helpdesk/view3.blade.php | 80 - .../helpdesk/view4.blade.php | 74 - .../helpdesk/view5.blade.php | 57 - .../helpdesk/view6.blade.php | 49 - .../layout/installer.blade.php | 47 - .../installer - Copy/helpdesk/view1.blade.php | 119 + .../installer - Copy/helpdesk/view2.blade.php | 225 + .../installer - Copy/helpdesk/view3.blade.php | 166 + .../installer - Copy/helpdesk/view4.blade.php | 32 + .../installer - Copy/helpdesk/view5.blade.php | 205 + .../installer - Copy/helpdesk/view6.blade.php | 198 + .../installer - Copy/helpdesk/view7.blade.php | 26 + .../layout/installer.blade.php | 118 + .../installer/helpdesk/view1.blade.php | 174 +- .../installer/helpdesk/view2.blade.php | 258 +- .../installer/helpdesk/view3.blade.php | 242 +- .../installer/helpdesk/view4.blade.php | 239 +- .../installer/helpdesk/view4b.blade.php | 63 + .../installer/helpdesk/view5.blade.php | 501 ++- .../installer/helpdesk/view6.blade.php | 239 +- .../installer/layout/installer.blade.php | 186 +- vendor/autoload.php | 2 +- vendor/bin/phpspec | 8 +- vendor/bin/phpunit | 8 +- vendor/bugsnag/bugsnag-laravel/CHANGELOG.md | 10 + .../bugsnag/bugsnag-laravel/CONTRIBUTING.md | 23 +- vendor/bugsnag/bugsnag-laravel/README.md | 159 +- .../BugsnagLaravelServiceProvider.php | 2 +- .../src/Bugsnag/BugsnagLaravel/config.php | 8 +- vendor/bugsnag/bugsnag/.gitignore | 6 +- vendor/bugsnag/bugsnag/.travis.yml | 5 +- vendor/bugsnag/bugsnag/CHANGELOG.md | 18 + vendor/bugsnag/bugsnag/CONTRIBUTING.md | 26 +- vendor/bugsnag/bugsnag/README.md | 8 +- vendor/bugsnag/bugsnag/build/bugsnag.phar | Bin 55219 -> 55587 bytes vendor/bugsnag/bugsnag/example/php/README.md | 5 +- vendor/bugsnag/bugsnag/example/php/index.php | 2 +- vendor/bugsnag/bugsnag/src/Bugsnag/Client.php | 97 +- .../bugsnag/src/Bugsnag/Configuration.php | 8 +- vendor/bugsnag/bugsnag/src/Bugsnag/Error.php | 14 +- .../bugsnag/src/Bugsnag/Notification.php | 18 +- .../bugsnag/bugsnag/src/Bugsnag/Request.php | 14 +- .../tests/Bugsnag/Bugsnag_TestCase.php | 5 + .../bugsnag/tests/Bugsnag/ClientTest.php | 3 +- .../tests/Bugsnag/ConfigurationTest.php | 1 + .../bugsnag/tests/Bugsnag/DiagnosticsTest.php | 3 + .../bugsnag/tests/Bugsnag/ErrorTest.php | 5 +- .../tests/Bugsnag/NotificationTest.php | 5 + .../bugsnag/tests/Bugsnag/StacktraceTest.php | 2 + .../Datatable/Engines/CollectionEngine.php | 23 +- .../datatable/src/views/template.blade.php | 36 - vendor/chumper/zipper/.gitignore | 5 + vendor/chumper/zipper/.travis.yml | 11 + vendor/chumper/zipper/LICENSE | 191 + vendor/chumper/zipper/README.md | 150 + vendor/chumper/zipper/composer.json | 31 + vendor/chumper/zipper/phpunit.xml | 18 + .../src/Chumper/Zipper/Facades/Zipper.php | 13 + .../Repositories/RepositoryInterface.php | 88 + .../Zipper/Repositories/ZipRepository.php | 141 + .../zipper/src/Chumper/Zipper/Zipper.php | 474 ++ .../Chumper/Zipper/ZipperServiceProvider.php | 55 + vendor/chumper/zipper/tests/.gitkeep | 0 vendor/chumper/zipper/tests/ArrayArchive.php | 110 + .../tests/Repositories/ZipRepositoryTest.php | 101 + vendor/chumper/zipper/tests/ZipperTest.php | 238 + vendor/composer/LICENSE | 21 + vendor/composer/autoload_classmap.php | 2 + vendor/composer/autoload_files.php | 5 +- vendor/composer/autoload_namespaces.php | 3 +- vendor/composer/autoload_psr4.php | 4 + vendor/composer/autoload_real.php | 10 +- vendor/composer/installed.json | 3909 +++++++++-------- vendor/doctrine/inflector/.travis.yml | 12 +- vendor/doctrine/inflector/LICENSE | 2 +- vendor/doctrine/inflector/composer.json | 2 +- .../Doctrine/Common/Inflector/Inflector.php | 83 +- .../Tests/Common/Inflector/InflectorTest.php | 187 +- vendor/dompdf/dompdf/README.md | 10 +- vendor/dompdf/dompdf/dompdf.php | 20 +- .../dompdf/dompdf_config.custom.inc.php | 22 +- vendor/dompdf/dompdf/dompdf_config.inc.php | 8 +- .../dompdf/include/abstract_renderer.cls.php | 2 +- .../dompdf/include/cpdf_adapter.cls.php | 2 +- vendor/dompdf/dompdf/include/dompdf.cls.php | 40 +- .../dompdf/include/font_metrics.cls.php | 45 +- .../dompdf/dompdf/include/functions.inc.php | 70 +- .../dompdf/dompdf/include/gd_adapter.cls.php | 2 +- .../dompdf/dompdf/include/image_cache.cls.php | 12 +- .../include/image_frame_reflower.cls.php | 4 +- .../list_bullet_image_frame_decorator.cls.php | 2 +- .../include/list_bullet_renderer.cls.php | 2 +- .../dompdf/include/pdflib_adapter.cls.php | 2 +- .../dompdf/dompdf/include/stylesheet.cls.php | 4 +- vendor/dompdf/dompdf/lib/class.pdf.php | 6 +- vendor/dompdf/dompdf/www/debugger.php | 11 +- vendor/dompdf/dompdf/www/demo.php | 6 +- vendor/dompdf/dompdf/www/head.inc | 5 + vendor/dompdf/dompdf/www/setup.php | 11 + .../libphonenumber-for-php/.travis.yml | 1 - .../METADATA-VERSION.txt | 2 +- .../libphonenumber/Tests/Issues/PHP7Test.php | 52 + .../giggsey/libphonenumber-for-php/build.xml | 30 +- .../build/data-patches/.gitkeep | 0 .../build/data-patches/001-PHP7-PL.patch | 13 + .../libphonenumber-for-php/composer.json | 4 +- .../src/libphonenumber/carrier/data/Map.php | 117 +- .../libphonenumber/carrier/data/en/1246.php | 8 + .../libphonenumber/carrier/data/en/216.php | 3 + .../libphonenumber/carrier/data/en/245.php | 6 +- .../libphonenumber/carrier/data/en/252.php | 8 + .../libphonenumber/carrier/data/en/257.php | 5 +- .../libphonenumber/carrier/data/en/354.php | 15 +- .../libphonenumber/carrier/data/en/357.php | 1 + .../libphonenumber/carrier/data/en/373.php | 1 + .../libphonenumber/carrier/data/en/421.php | 8 + .../src/libphonenumber/carrier/data/en/45.php | 597 ++- .../src/libphonenumber/carrier/data/en/62.php | 1 + .../libphonenumber/carrier/data/en/686.php | 2 +- .../libphonenumber/carrier/data/en/853.php | 310 ++ .../libphonenumber/carrier/data/en/964.php | 10 +- .../libphonenumber/carrier/data/en/968.php | 14 +- .../libphonenumber/carrier/data/en/972.php | 14 +- .../libphonenumber/carrier/data/en/975.php | 2 + .../libphonenumber/carrier/data/en/976.php | 3 + .../data/PhoneNumberMetadata_AT.php | 42 +- .../data/PhoneNumberMetadata_BB.php | 73 +- .../data/PhoneNumberMetadata_BD.php | 6 +- .../data/PhoneNumberMetadata_BI.php | 12 +- .../data/PhoneNumberMetadata_BR.php | 54 +- .../data/PhoneNumberMetadata_BT.php | 9 +- .../data/PhoneNumberMetadata_CC.php | 25 +- .../data/PhoneNumberMetadata_CX.php | 25 +- .../data/PhoneNumberMetadata_CY.php | 2 +- .../data/PhoneNumberMetadata_FI.php | 13 +- .../data/PhoneNumberMetadata_GW.php | 63 +- .../data/PhoneNumberMetadata_ID.php | 55 +- .../data/PhoneNumberMetadata_IL.php | 4 +- .../data/PhoneNumberMetadata_IS.php | 30 +- .../data/PhoneNumberMetadata_KI.php | 8 +- .../data/PhoneNumberMetadata_MD.php | 3 +- .../data/PhoneNumberMetadata_MM.php | 34 +- .../data/PhoneNumberMetadata_MN.php | 9 +- .../data/PhoneNumberMetadata_MO.php | 7 +- .../data/PhoneNumberMetadata_NP.php | 2 +- .../data/PhoneNumberMetadata_OM.php | 18 +- .../data/PhoneNumberMetadata_PL.php | 2 +- .../data/PhoneNumberMetadata_RU.php | 3 +- .../data/PhoneNumberMetadata_SK.php | 35 +- .../data/PhoneNumberMetadata_SO.php | 8 +- .../data/PhoneNumberMetadata_TN.php | 8 +- .../data/PhoneNumberMetadata_TT.php | 2 +- .../data/PhoneNumberMetadata_VC.php | 2 +- .../data/PhoneNumberMetadata_VG.php | 3 +- .../data/ShortNumberMetadata_AT.php | 41 +- .../data/ShortNumberMetadata_BB.php | 10 +- .../data/ShortNumberMetadata_BG.php | 34 +- .../data/ShortNumberMetadata_BT.php | 2 +- .../data/ShortNumberMetadata_CY.php | 34 +- .../data/ShortNumberMetadata_CZ.php | 11 +- .../data/ShortNumberMetadata_DE.php | 42 +- .../data/ShortNumberMetadata_DK.php | 48 +- .../data/ShortNumberMetadata_EE.php | 36 +- .../data/ShortNumberMetadata_FI.php | 28 +- .../data/ShortNumberMetadata_GB.php | 13 +- .../data/ShortNumberMetadata_GR.php | 40 +- .../data/ShortNumberMetadata_ID.php | 5 +- .../data/ShortNumberMetadata_IE.php | 38 +- .../data/ShortNumberMetadata_IS.php | 64 +- .../data/ShortNumberMetadata_LT.php | 40 +- .../data/ShortNumberMetadata_LU.php | 32 +- .../data/ShortNumberMetadata_MT.php | 42 +- .../data/ShortNumberMetadata_NL.php | 32 +- .../data/ShortNumberMetadata_NO.php | 14 +- .../data/ShortNumberMetadata_PL.php | 13 +- .../data/ShortNumberMetadata_RO.php | 36 +- .../data/ShortNumberMetadata_SI.php | 42 +- .../data/ShortNumberMetadata_SK.php | 34 +- .../src/libphonenumber/geocoding/data/Map.php | 10 +- .../libphonenumber/geocoding/data/en/245.php | 41 +- .../libphonenumber/geocoding/data/en/95.php | 11 + .../libphonenumber/geocoding/data/en/968.php | 12 + .../libphonenumber/geocoding/data/en/972.php | 13 + .../libphonenumber/geocoding/data/en/975.php | 15 + .../libphonenumber/timezone/data/map_data.php | 16 +- vendor/jeremeamia/SuperClosure/composer.json | 8 +- .../SuperClosure/src/Analyzer/AstAnalyzer.php | 16 +- .../src/Analyzer/ClosureAnalyzer.php | 8 +- .../src/Analyzer/TokenAnalyzer.php | 2 +- .../Visitor/ClosureLocatorVisitor.php | 13 +- .../Analyzer/Visitor/MagicConstantVisitor.php | 2 +- .../SuperClosure/src/SerializableClosure.php | 123 +- .../SuperClosure/src/Serializer.php | 19 +- .../Database/Connectors/MySqlConnector.php | 4 + .../src/Illuminate/Foundation/Application.php | 2 +- vendor/league/flysystem/composer.json | 2 +- .../flysystem/src/Adapter/AbstractAdapter.php | 6 +- .../src/Adapter/AbstractFtpAdapter.php | 18 +- vendor/league/flysystem/src/Adapter/Ftp.php | 50 +- vendor/league/flysystem/src/Adapter/Ftpd.php | 4 +- vendor/league/flysystem/src/Adapter/Local.php | 86 +- .../Polyfill/NotSupportingVisibilityTrait.php | 4 +- .../Adapter/Polyfill/StreamedCopyTrait.php | 2 +- .../Adapter/Polyfill/StreamedReadingTrait.php | 2 +- vendor/league/flysystem/src/Config.php | 4 +- .../flysystem/src/FileExistsException.php | 2 +- .../flysystem/src/FileNotFoundException.php | 2 +- vendor/league/flysystem/src/Filesystem.php | 20 +- vendor/league/flysystem/src/Handler.php | 4 +- vendor/league/flysystem/src/MountManager.php | 14 +- .../flysystem/src/NotSupportedException.php | 2 +- .../flysystem/src/Plugin/GetWithMetadata.php | 6 +- .../league/flysystem/src/Plugin/ListWith.php | 6 +- .../flysystem/src/Plugin/PluggableTrait.php | 12 +- .../flysystem/src/UnreadableFileException.php | 18 + vendor/league/flysystem/src/Util.php | 10 +- vendor/league/flysystem/src/Util/MimeType.php | 4 +- vendor/nesbot/carbon/composer.json | 15 +- vendor/nesbot/carbon/readme.md | 11 +- vendor/nesbot/carbon/src/Carbon/Carbon.php | 550 +-- .../carbon/src/Carbon/CarbonInterval.php | 100 +- vendor/nesbot/carbon/src/Carbon/Lang/af.php | 28 + vendor/nesbot/carbon/src/Carbon/Lang/ar.php | 11 +- vendor/nesbot/carbon/src/Carbon/Lang/az.php | 3 +- vendor/nesbot/carbon/src/Carbon/Lang/bg.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/bn.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/ca.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/cs.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/da.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/de.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/el.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/en.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/eo.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/es.php | 5 +- vendor/nesbot/carbon/src/Carbon/Lang/et.php | 30 + vendor/nesbot/carbon/src/Carbon/Lang/eu.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/fa.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/fi.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/fo.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/fr.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/he.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/hr.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/hu.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/id.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/it.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/ja.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/ko.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/lt.php | 3 +- vendor/nesbot/carbon/src/Carbon/Lang/lv.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/ms.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/nl.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/no.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/pl.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/pt.php | 1 - .../nesbot/carbon/src/Carbon/Lang/pt_BR.php | 5 +- vendor/nesbot/carbon/src/Carbon/Lang/ro.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/ru.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/sk.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/sl.php | 37 +- vendor/nesbot/carbon/src/Carbon/Lang/sq.php | 28 + vendor/nesbot/carbon/src/Carbon/Lang/sr.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/sv.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/th.php | 2 - vendor/nesbot/carbon/src/Carbon/Lang/tr.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/uk.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/uz.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/vi.php | 1 - .../nesbot/carbon/src/Carbon/Lang/zh-TW.php | 1 - vendor/nesbot/carbon/src/Carbon/Lang/zh.php | 1 - .../searchable/src/SearchableTrait.php | 44 +- vendor/php-imap/php-imap/README.md | 2 +- vendor/php-imap/php-imap/composer.json | 7 +- .../php-imap/src/PhpImap/IncomingMail.php | 1 + vendor/phpspec/phpspec/.scrutinizer.yml | 2 +- vendor/phpspec/phpspec/.travis.yml | 3 +- vendor/phpspec/phpspec/CHANGES.md | 37 + vendor/phpspec/phpspec/appveyor.yml | 50 + vendor/phpspec/phpspec/behat.yml.dist | 2 - vendor/phpspec/phpspec/bin/phpspec | 2 +- vendor/phpspec/phpspec/composer.json | 15 +- .../features/bootstrap/ApplicationContext.php | 38 +- .../features/bootstrap/FilesystemContext.php | 11 +- .../bootstrap/IsolatedProcessContext.php | 54 +- .../developer_generates_method.feature | 2 +- ...oper_specifies_object_construction.feature | 2 +- ...which_example_caused_a_fatal_error.feature | 126 + .../developer_is_shown_a_parse_error.feature | 82 + .../developer_is_shown_diffs.feature | 116 +- ...upported_collaborator_type_hinting.feature | 129 + ...eloper_uses_string_contain_matcher.feature | 41 + .../runner/developer_runs_specs.feature | 72 + ...eveloper_runs_specs_with_spec_path.feature | 52 + .../PhpSpec/Loader/StreamWrapperTest.php | 35 + .../PhpSpec/Loader/examples/ExampleSpec.php | 13 + .../MagicAwareAccessInspectorSpec.php | 1 - .../StaticRejectingNamespaceResolverSpec.php | 42 + .../TokenizedNamespaceResolverSpec.php | 105 + .../TokenizedTypeHintRewriterSpec.php | 147 + .../NewFileNotifyingGeneratorSpec.php | 109 + .../Generator/SpecificationGeneratorSpec.php | 47 +- .../PhpSpec/Event/FileCreationEventSpec.php | 31 + .../InvalidCollaboratorTypeExceptionSpec.php | 39 + .../Exception/CallArgumentsPresenterSpec.php | 65 + .../GenericPhpSpecExceptionPresenterSpec.php | 20 + .../HtmlPhpSpecExceptionPresenterSpec.php | 14 + .../SimpleExceptionElementPresenterSpec.php | 79 + .../SimpleExceptionPresenterSpec.php | 30 + .../TaggingExceptionElementPresenterSpec.php | 67 + .../Presenter/SimplePresenterSpec.php | 53 + .../Presenter/StringPresenterSpec.php | 8 +- .../Presenter/TaggingPresenterSpec.php | 38 + .../Value/ArrayTypePresenterSpec.php | 29 + .../Value/BaseExceptionTypePresenterSpec.php | 25 + .../Value/BooleanTypePresenterSpec.php | 30 + .../Value/CallableTypePresenterSpec.php | 113 + .../Value/ComposedValuePresenterSpec.php | 93 + .../Presenter/Value/NullTypePresenterSpec.php | 24 + .../Value/ObjectTypePresenterSpec.php | 24 + .../Value/QuotingStringTypePresenterSpec.php | 26 + .../TruncatingStringTypePresenterSpec.php | 47 + .../Listener/CurrentExampleListenerSpec.php | 57 + .../Transformer/InMemoryTypeHintIndexSpec.php | 43 + .../Transformer/TypeHintRewriterSpec.php | 28 + .../PhpSpec/Locator/PSR0/PSR0LocatorSpec.php | 21 + .../Matcher/StringContainMatcherSpec.php | 73 + .../Message/CurrentExampleTrackerSpec.php | 28 + .../PhpSpec/Process/Shutdown/ShutdownSpec.php | 22 + .../Shutdown/UpdateConsoleActionSpec.php | 26 + .../CodeAnalysis/AccessInspectorInterface.php | 2 +- .../DisallowedScalarTypehintException.php | 18 + .../CodeAnalysis/NamespaceResolver.php | 21 + .../StaticRejectingNamespaceResolver.php | 50 + .../TokenizedNamespaceResolver.php | 115 + .../TokenizedTypeHintRewriter.php | 174 + .../PhpSpec/CodeAnalysis/TypeHintRewriter.php | 24 + .../Generator/NewFileNotifyingGenerator.php | 107 + .../Generator/PromptingGenerator.php | 10 +- .../Generator/SpecificationGenerator.php | 9 +- .../src/PhpSpec/Console/Application.php | 7 + .../Console/Assembler/PresenterAssembler.php | 198 + .../PhpSpec/Console/Command/RunCommand.php | 23 + .../PhpSpec/Console/ContainerAssembler.php | 119 +- .../src/PhpSpec/Event/FileCreationEvent.php | 38 + .../CollaboratorNotFoundException.php | 15 +- .../InvalidCollaboratorTypeException.php | 44 + .../PhpSpec/Formatter/ConsoleFormatter.php | 20 +- .../src/PhpSpec/Formatter/FatalPresenter.php | 21 + .../PhpSpec/Formatter/Html/HtmlPresenter.php | 3 + .../Presenter/Differ/ArrayEngine.php | 8 +- .../AbstractPhpSpecExceptionPresenter.php | 60 + .../Exception/CallArgumentsPresenter.php | 149 + .../Exception/ExceptionElementPresenter.php | 59 + .../Exception/ExceptionPresenter.php | 24 + .../GenericPhpSpecExceptionPresenter.php | 59 + .../HtmlPhpSpecExceptionPresenter.php | 46 + .../Exception/PhpSpecExceptionPresenter.php | 26 + .../SimpleExceptionElementPresenter.php | 111 + .../Exception/SimpleExceptionPresenter.php | 273 ++ .../TaggingExceptionElementPresenter.php | 122 + .../PhpSpec/Formatter/Presenter/Presenter.php | 27 + .../Presenter/PresenterInterface.php | 26 +- .../Formatter/Presenter/SimplePresenter.php | 71 + .../Formatter/Presenter/StringPresenter.php | 8 +- .../Formatter/Presenter/TaggedPresenter.php | 3 + .../Formatter/Presenter/TaggingPresenter.php | 59 + .../Presenter/Value/ArrayTypePresenter.php | 43 + .../Value/BaseExceptionTypePresenter.php | 47 + .../Presenter/Value/BooleanTypePresenter.php | 43 + .../Presenter/Value/CallableTypePresenter.php | 71 + .../Value/ComposedValuePresenter.php | 49 + .../Value/ExceptionTypePresenter.php | 18 + .../Presenter/Value/NullTypePresenter.php | 43 + .../Presenter/Value/ObjectTypePresenter.php | 43 + .../Value/QuotingStringTypePresenter.php | 43 + .../Presenter/Value/StringTypePresenter.php | 18 + .../Value/TruncatingStringTypePresenter.php | 58 + .../Presenter/Value/TypePresenter.php | 35 + .../Presenter/Value/ValuePresenter.php | 24 + .../Listener/CurrentExampleListener.php | 56 + .../src/PhpSpec/Loader/ResourceLoader.php | 6 +- .../src/PhpSpec/Loader/SpecTransformer.php | 19 + .../src/PhpSpec/Loader/StreamWrapper.php | 91 + .../Transformer/InMemoryTypeHintIndex.php | 90 + .../Loader/Transformer/TypeHintIndex.php | 41 + .../Loader/Transformer/TypeHintRewriter.php | 43 + .../src/PhpSpec/Locator/PSR0/PSR0Locator.php | 39 +- .../PhpSpec/Matcher/StringContainMatcher.php | 76 + .../PhpSpec/Message/CurrentExampleTracker.php | 29 + .../phpspec/src/PhpSpec/ObjectBehavior.php | 4 +- .../ReRunner/PhpExecutableReRunner.php | 1 - .../src/PhpSpec/Process/Shutdown/Shutdown.php | 51 + .../Shutdown/ShutdownActionInterface.php | 19 + .../Process/Shutdown/UpdateConsoleAction.php | 41 + .../Maintainer/CollaboratorsMaintainer.php | 101 +- .../Runner/Maintainer/SubjectMaintainer.php | 2 +- .../src/PhpSpec/Util/MethodAnalyser.php | 4 +- .../phpspec/src/PhpSpec/Wrapper/Subject.php | 2 +- .../src/PhpSpec/Wrapper/Subject/Caller.php | 2 +- .../Subject/SubjectWithArrayAccess.php | 1 - .../phpspec/src/PhpSpec/Wrapper/Wrapper.php | 2 +- vendor/phpunit/phpunit/ChangeLog-4.8.md | 41 + vendor/phpunit/phpunit/build.xml | 6 +- vendor/phpunit/phpunit/build/bin/phpab | 126 +- vendor/phpunit/phpunit/composer.json | 5 + vendor/phpunit/phpunit/src/Runner/Version.php | 2 +- .../phpunit/phpunit/src/TextUI/TestRunner.php | 84 +- .../phpunit/phpunit/src/Util/PHP/Default.php | 7 +- .../phpunit/src/Util/PHP/eval-stdin.php | 3 + vendor/propaganistas/laravel-phone/.gitignore | 1 - .../propaganistas/laravel-phone/.travis.yml | 20 +- vendor/propaganistas/laravel-phone/README.md | 10 +- .../propaganistas/laravel-phone/composer.json | 12 +- .../laravel-phone/laravel4.phpunit.xml | 29 + .../propaganistas/laravel-phone/phpunit.xml | 2 +- .../Exceptions/InvalidParameterException.php | 2 +- .../NoValidCountryFoundException.php | 2 +- .../src/LaravelPhoneServiceProvider.php | 48 +- .../laravel-phone/src/PhoneValidator.php | 334 +- .../laravel-phone/src/helpers.php | 11 +- .../laravel-phone/tests/Laravel4.php | 10 + .../laravel-phone/tests/Laravel5.php | 10 + .../tests/PhoneValidatorTest.php | 167 + vendor/sebastian/diff/.php_cs | 66 + vendor/sebastian/diff/composer.json | 6 +- vendor/sebastian/diff/src/Chunk.php | 6 - vendor/sebastian/diff/src/Diff.php | 6 - vendor/sebastian/diff/src/Differ.php | 49 +- .../diff/src/LCS/LongestCommonSubsequence.php | 12 +- ...LongestCommonSubsequenceImplementation.php | 13 +- ...LongestCommonSubsequenceImplementation.php | 14 +- vendor/sebastian/diff/src/Line.php | 10 +- vendor/sebastian/diff/src/Parser.php | 12 +- vendor/sebastian/diff/tests/DifferTest.php | Bin 11371 -> 11492 bytes .../LCS/TimeEfficientImplementationTest.php | 24 +- vendor/sebastian/environment/src/Console.php | 2 +- .../recursion-context/src/Context.php | 2 +- vendor/services.json | 6 +- .../ContainerAwareEventDispatcher.php | 10 + .../Debug/TraceableEventDispatcher.php | 32 + .../event-dispatcher/EventDispatcher.php | 25 +- .../ImmutableEventDispatcher.php | 8 + .../Tests/AbstractEventDispatcherTest.php | 14 + .../ContainerAwareEventDispatcherTest.php | 4 + .../Debug/TraceableEventDispatcherTest.php | 18 +- vendor/symfony/event-dispatcher/composer.json | 15 +- vendor/symfony/filesystem/CHANGELOG.md | 5 + vendor/symfony/filesystem/Filesystem.php | 78 +- .../filesystem/Tests/FilesystemTest.php | 147 + .../Tests/Fixtures/MockStream/MockStream.php | 46 + vendor/symfony/filesystem/composer.json | 7 +- vendor/symfony/filesystem/phpunit.xml.dist | 1 + .../Symfony/Component/HttpKernel/Kernel.php | 6 +- vendor/symfony/polyfill-php56/LICENSE | 19 + vendor/symfony/polyfill-php56/Php56.php | 127 + vendor/symfony/polyfill-php56/README.md | 15 + vendor/symfony/polyfill-php56/bootstrap.php | 38 + vendor/symfony/polyfill-php56/composer.json | 32 + vendor/symfony/polyfill-util/Binary.php | 18 + .../polyfill-util/BinaryNoFuncOverload.php | 65 + .../polyfill-util/BinaryOnFuncOverload.php | 67 + vendor/symfony/polyfill-util/LICENSE | 19 + vendor/symfony/polyfill-util/README.md | 13 + vendor/symfony/polyfill-util/TestListener.php | 151 + vendor/symfony/polyfill-util/composer.json | 30 + vendor/symfony/yaml/CHANGELOG.md | 26 + vendor/symfony/yaml/Escaper.php | 2 + .../symfony/yaml/Exception/ParseException.php | 7 +- vendor/symfony/yaml/Inline.php | 9 +- vendor/symfony/yaml/Parser.php | 113 +- .../yaml/Tests/Fixtures/escapedCharacters.yml | 8 + .../symfony/yaml/Tests/Fixtures/sfQuotes.yml | 2 +- vendor/symfony/yaml/Tests/InlineTest.php | 51 +- .../symfony/yaml/Tests/ParseExceptionTest.php | 12 +- vendor/symfony/yaml/Tests/ParserTest.php | 195 +- vendor/symfony/yaml/Tests/YamlTest.php | 12 - vendor/symfony/yaml/Unescaper.php | 27 +- vendor/symfony/yaml/Yaml.php | 31 +- vendor/symfony/yaml/composer.json | 9 +- vendor/symfony/yaml/phpunit.xml.dist | 2 +- 529 files changed, 20956 insertions(+), 8178 deletions(-) create mode 100644 app/Http/Controllers/Admin/helpdesk/LanguageController.php create mode 100644 app/Http/Middleware/LanguageMiddleware.php create mode 100644 app/Model/helpdesk/Utility/Limit_Login.php create mode 100644 config/languages.php create mode 100644 public/downloads/en.zip delete mode 100644 public/lb-faveo/Img/icon/faveokb.png create mode 100644 public/lb-faveo/installer/css/.DS_Store create mode 100644 public/lb-faveo/installer/css/bootstrap-datepicker.css create mode 100644 public/lb-faveo/installer/css/jquery.timepicker.css create mode 100644 public/lb-faveo/installer/css/style.css create mode 100644 public/lb-faveo/installer/js/.DS_Store create mode 100644 public/lb-faveo/installer/js/bootstrap-datepicker.js create mode 100644 public/lb-faveo/installer/js/index.js create mode 100644 public/lb-faveo/installer/js/tooltip.js create mode 100644 public/uploads/en.zip delete mode 100644 resources/lang/su.zip delete mode 100644 resources/lang/su/lang.php delete mode 100644 resources/lang/su/pagination.php delete mode 100644 resources/lang/su/passwords.php delete mode 100644 resources/lang/su/validation.php create mode 100644 resources/views/themes/default1/admin/helpdesk/language/create.blade.php create mode 100644 resources/views/themes/default1/admin/helpdesk/language/index.blade.php create mode 100644 resources/views/themes/default1/admin/helpdesk/setting.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/step1.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view1.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view2.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view3.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view4.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view5.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/helpdesk/view6.blade.php delete mode 100644 resources/views/themes/default1/dkjsnkjsnckjsdnjcnsdkjncs/layout/installer.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view1.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view2.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view3.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view4.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view5.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view6.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/helpdesk/view7.blade.php create mode 100644 resources/views/themes/default1/installer - Copy/layout/installer.blade.php create mode 100644 resources/views/themes/default1/installer/helpdesk/view4b.blade.php create mode 100644 vendor/chumper/zipper/.gitignore create mode 100644 vendor/chumper/zipper/.travis.yml create mode 100644 vendor/chumper/zipper/LICENSE create mode 100644 vendor/chumper/zipper/README.md create mode 100644 vendor/chumper/zipper/composer.json create mode 100644 vendor/chumper/zipper/phpunit.xml create mode 100644 vendor/chumper/zipper/src/Chumper/Zipper/Facades/Zipper.php create mode 100644 vendor/chumper/zipper/src/Chumper/Zipper/Repositories/RepositoryInterface.php create mode 100644 vendor/chumper/zipper/src/Chumper/Zipper/Repositories/ZipRepository.php create mode 100644 vendor/chumper/zipper/src/Chumper/Zipper/Zipper.php create mode 100644 vendor/chumper/zipper/src/Chumper/Zipper/ZipperServiceProvider.php create mode 100644 vendor/chumper/zipper/tests/.gitkeep create mode 100644 vendor/chumper/zipper/tests/ArrayArchive.php create mode 100644 vendor/chumper/zipper/tests/Repositories/ZipRepositoryTest.php create mode 100644 vendor/chumper/zipper/tests/ZipperTest.php create mode 100644 vendor/composer/LICENSE create mode 100644 vendor/giggsey/libphonenumber-for-php/Tests/libphonenumber/Tests/Issues/PHP7Test.php create mode 100644 vendor/giggsey/libphonenumber-for-php/build/data-patches/.gitkeep create mode 100644 vendor/giggsey/libphonenumber-for-php/build/data-patches/001-PHP7-PL.patch create mode 100644 vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/853.php create mode 100644 vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/95.php create mode 100644 vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/968.php create mode 100644 vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/972.php create mode 100644 vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/975.php create mode 100644 vendor/league/flysystem/src/UnreadableFileException.php create mode 100644 vendor/nesbot/carbon/src/Carbon/Lang/af.php create mode 100644 vendor/nesbot/carbon/src/Carbon/Lang/et.php create mode 100644 vendor/nesbot/carbon/src/Carbon/Lang/sq.php create mode 100644 vendor/phpspec/phpspec/appveyor.yml create mode 100644 vendor/phpspec/phpspec/features/exception_handling/developer_is_notified_which_example_caused_a_fatal_error.feature create mode 100644 vendor/phpspec/phpspec/features/exception_handling/developer_is_shown_a_parse_error.feature create mode 100644 vendor/phpspec/phpspec/features/invalid_usage/developer_uses_unsupported_collaborator_type_hinting.feature create mode 100644 vendor/phpspec/phpspec/features/matchers/developer_uses_string_contain_matcher.feature create mode 100644 vendor/phpspec/phpspec/features/runner/developer_runs_specs_with_spec_path.feature create mode 100644 vendor/phpspec/phpspec/integration/PhpSpec/Loader/StreamWrapperTest.php create mode 100644 vendor/phpspec/phpspec/integration/PhpSpec/Loader/examples/ExampleSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/CodeAnalysis/StaticRejectingNamespaceResolverSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/CodeAnalysis/TokenizedNamespaceResolverSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/CodeAnalysis/TokenizedTypeHintRewriterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/CodeGenerator/Generator/NewFileNotifyingGeneratorSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Event/FileCreationEventSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Exception/Wrapper/InvalidCollaboratorTypeExceptionSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/CallArgumentsPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/GenericPhpSpecExceptionPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/HtmlPhpSpecExceptionPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/SimpleExceptionElementPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/SimpleExceptionPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Exception/TaggingExceptionElementPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/SimplePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/TaggingPresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/ArrayTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/BaseExceptionTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/BooleanTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/CallableTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/ComposedValuePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/NullTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/ObjectTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/QuotingStringTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Formatter/Presenter/Value/TruncatingStringTypePresenterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Listener/CurrentExampleListenerSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Loader/Transformer/InMemoryTypeHintIndexSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Loader/Transformer/TypeHintRewriterSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Matcher/StringContainMatcherSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Message/CurrentExampleTrackerSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Process/Shutdown/ShutdownSpec.php create mode 100644 vendor/phpspec/phpspec/spec/PhpSpec/Process/Shutdown/UpdateConsoleActionSpec.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/DisallowedScalarTypehintException.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/NamespaceResolver.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/StaticRejectingNamespaceResolver.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/TokenizedNamespaceResolver.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/TokenizedTypeHintRewriter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeAnalysis/TypeHintRewriter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/CodeGenerator/Generator/NewFileNotifyingGenerator.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Console/Assembler/PresenterAssembler.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Event/FileCreationEvent.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Exception/Wrapper/InvalidCollaboratorTypeException.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/FatalPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/AbstractPhpSpecExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/CallArgumentsPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/ExceptionElementPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/ExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/GenericPhpSpecExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/HtmlPhpSpecExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/PhpSpecExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/SimpleExceptionElementPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/SimpleExceptionPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Exception/TaggingExceptionElementPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Presenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/SimplePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/TaggingPresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/ArrayTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/BaseExceptionTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/BooleanTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/CallableTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/ComposedValuePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/ExceptionTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/NullTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/ObjectTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/QuotingStringTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/StringTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/TruncatingStringTypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/TypePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Formatter/Presenter/Value/ValuePresenter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Listener/CurrentExampleListener.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Loader/SpecTransformer.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Loader/StreamWrapper.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Loader/Transformer/InMemoryTypeHintIndex.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Loader/Transformer/TypeHintIndex.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Loader/Transformer/TypeHintRewriter.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Matcher/StringContainMatcher.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Message/CurrentExampleTracker.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Process/Shutdown/Shutdown.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Process/Shutdown/ShutdownActionInterface.php create mode 100644 vendor/phpspec/phpspec/src/PhpSpec/Process/Shutdown/UpdateConsoleAction.php create mode 100644 vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php create mode 100644 vendor/propaganistas/laravel-phone/laravel4.phpunit.xml create mode 100644 vendor/propaganistas/laravel-phone/tests/Laravel4.php create mode 100644 vendor/propaganistas/laravel-phone/tests/Laravel5.php create mode 100644 vendor/propaganistas/laravel-phone/tests/PhoneValidatorTest.php create mode 100644 vendor/sebastian/diff/.php_cs create mode 100644 vendor/symfony/filesystem/Tests/Fixtures/MockStream/MockStream.php create mode 100644 vendor/symfony/polyfill-php56/LICENSE create mode 100644 vendor/symfony/polyfill-php56/Php56.php create mode 100644 vendor/symfony/polyfill-php56/README.md create mode 100644 vendor/symfony/polyfill-php56/bootstrap.php create mode 100644 vendor/symfony/polyfill-php56/composer.json create mode 100644 vendor/symfony/polyfill-util/Binary.php create mode 100644 vendor/symfony/polyfill-util/BinaryNoFuncOverload.php create mode 100644 vendor/symfony/polyfill-util/BinaryOnFuncOverload.php create mode 100644 vendor/symfony/polyfill-util/LICENSE create mode 100644 vendor/symfony/polyfill-util/README.md create mode 100644 vendor/symfony/polyfill-util/TestListener.php create mode 100644 vendor/symfony/polyfill-util/composer.json diff --git a/app/Http/Controllers/Admin/helpdesk/LanguageController.php b/app/Http/Controllers/Admin/helpdesk/LanguageController.php new file mode 100644 index 000000000..27b602574 --- /dev/null +++ b/app/Http/Controllers/Admin/helpdesk/LanguageController.php @@ -0,0 +1,249 @@ + + */ +class LanguageController extends Controller { + + /** + * Create a new controller instance. + * @return type void + */ + public function __construct() { + $this->middleware('auth'); + $this->middleware('roles'); + } + + /** + * Switch language at runtime + * @param type "" $lang + * @return type response + */ + public function switchLanguage($lang) { + //if(Cache::has('language')) + //{ + // return Cache::get('language'); + //} else return 'false'; + // Cache::put('language',$) + + if(array_key_exists($lang, Config::get('languages'))) { + // dd(array_key_exists($lang, Config::get('languages'))); + // app()->setLocale($lang); + + Cache::forever('language', $lang); + // dd(Cache::get('language')); + // dd() + } else { + return Redirect::back()->with('message', 'Language package not found in your lang directroy.'); + } + return Redirect::back(); + } + + + + /** + *Shows language page + *@return type response + */ + public function index(){ + return view('themes.default1.admin.helpdesk.language.index'); + } + + + /** + *Shows Language upload form + *@return type response + */ + public function getForm(){ + return view('themes.default1.admin.helpdesk.language.create'); + } + + + /** + *Provide language datatable to language page + *@return type + */ + public function getLanguages() + { + $path = 'code/resources/lang'; + $values = scandir($path); //Extracts names of directories present in lang directory + $values = array_slice($values, 2); // skips array element $value[0] = '.' & $value[1] = '..' + return \Datatable::collection(new Collection($values)) + + ->addColumn('language', function($model){ + return Config::get('languages.'.$model); + }) + + ->addColumn('id', function($model){ + return $model; + }) + + ->addColumn('status',function($model){ + if(Lang::getLocale()===$model){return "".Lang::trans("lang.active").""; } else return "".Lang::trans("lang.inactive").""; + }) + + ->addColumn('Action', function($model){ + if(Lang::getLocale()===$model){ + return " + ". Lang::trans("lang.delete").""; + } else { + return " + ". Lang::trans("lang.delete").""; + } + }) + ->searchColumns('language','id') + + ->make(); + } + + + /** + *handle language file uploading + *@return response + */ + public function postForm() { + // getting all of the post data + $file = array( + 'File' => Input::file('File'), + 'language-name' => Input::input('language-name'), + 'iso-code' => Input::input('iso-code') + ); + + // setting up rules + $rules = array( + 'File' => 'required|mimes:zip|max:30000', + 'language-name' => 'required', + 'iso-code' => 'required|max:2' + ); // and for max size + + // doing the validation, passing post data, rules and the messages + $validator = Validator::make($file, $rules); + if ($validator->fails()) { + + // send back to the page with the input data and errors + return Redirect::back()->withInput()->withErrors($validator); + + } else { + + + //Checking if package already exists or not in lang folder + $path = 'code/resources/lang'; + if (in_array(Input::get('iso-code'), scandir($path))) { + + //sending back with error message + Session::flash('fails', "Language package already exists."); + Session::flash('link',"change-language/".Input::get('iso-code')); + return Redirect::back()->withInput(); + + } elseif (!array_key_exists(Input::get('iso-code'), Config::get('languages'))){//Checking Valid ISO code form Languages.php + + //sending back with error message + Session::flash('fails', "Enter correct ISO-code"); + return Redirect::back()->withInput(); + + } else { + + // checking file is valid. + if (Input::file('File')->isValid()) { + + $name = Input::file('File')->getClientOriginalName(); //uploaded file's original name + $destinationPath = 'code/public/uploads/'; // defining uploading path + $extractpath = 'code/resources/lang/'.Input::get('iso-code');//defining extracting path + mkdir($extractpath); //creating directroy for extracting uploadd file + //mkdir($destinationPath); + Input::file('File')->move($destinationPath, $name); // uploading file to given path + \Zipper::make($destinationPath.'/'.$name)->extractTo($extractpath);//extracting file to give path + + //check if Zip extract foldercontains any subfolder + $directories = File::directories($extractpath); + //$directories = glob($extractpath. '/*' , GLOB_ONLYDIR); + if(!empty($directories)){ //if extract folder contains subfolder + $success = File::deleteDirectory($extractpath); //remove extracted folder and it's subfolder from lang + //$success2 = File::delete($destinationPath.'/'.$name); + + if($success){ + //sending back with error message + Session::flash('fails', 'Error in directory structure. Zip file must contain language php files only. Try Again.'); + return Redirect::back()->withInput(); + } + + } else { + + // sending back with success message + Session::flash('success', "uploaded successfully."); + Session::flash('link',"change-language/".Input::get('iso-code')); + return Redirect::route('LanguageController'); + + } + + } else { + + // sending back with error message. + Session::flash('fails', 'uploaded file is not valid'); + return Redirect::route('form'); + + } + + } + } + } + + + /** + *allow user to download language template file + *@return type + */ + Public function download() + { + return response()->download('code/public/downloads/en.zip'); + } + + /** + * This function is used to delete languages + * @param type $lang + * @return type response + */ + public function deleteLanguage($lang){ + if($lang !== App::getLocale()){ + $deletePath = 'code/resources/lang/'.$lang; //define file path to delete + $success = File::deleteDirectory($deletePath); //remove extracted folder and it's subfolder from lang + if($success){ + //sending back with success message + Session::flash('success', 'Language package deleted successfully.'); + return Redirect::back(); + } else { + //sending back with error message + Session::flash('fails', 'Language package does not exist.'); + return Redirect::back(); + } + } else { + //sending back with error message + Session::flash('fails', 'Language package can not be deleted when it is active.'); + return redirect('languages'); + } + } + + +} diff --git a/app/Http/Controllers/Admin/helpdesk/SettingsController.php b/app/Http/Controllers/Admin/helpdesk/SettingsController.php index 518098f65..e95524ac0 100644 --- a/app/Http/Controllers/Admin/helpdesk/SettingsController.php +++ b/app/Http/Controllers/Admin/helpdesk/SettingsController.php @@ -47,6 +47,14 @@ class SettingsController extends Controller { $this->middleware('roles'); } + /** + * Main Settings Page + * @return type view + */ + public function settings() { + return view('themes.default1.admin.helpdesk.setting'); + } + /** * @param int $id * @return Response diff --git a/app/Http/Controllers/Agent/helpdesk/MailController.php b/app/Http/Controllers/Agent/helpdesk/MailController.php index 80b97bb3e..831577d04 100644 --- a/app/Http/Controllers/Agent/helpdesk/MailController.php +++ b/app/Http/Controllers/Agent/helpdesk/MailController.php @@ -111,11 +111,12 @@ class MailController extends Controller { $thread_id = $thread_id->id; foreach($mail->getAttachments() as $attachment) { + // dd($attachment); $support = "support"; // echo $_SERVER['DOCUMENT_ROOT']; $dir_img_paths = __DIR__; $dir_img_path = explode('/code', $dir_img_paths); - $filepath = explode('../../../../../../public/',$attachment->filePath); + $filepath = explode('../../../../../../public',$attachment->filePath); // dd($filepath); // $path = $dir_img_path[0]."/public/".$filepath[1]; $path = public_path().'/'.$filepath[1]; diff --git a/app/Http/Controllers/Auth/AuthController.php b/app/Http/Controllers/Auth/AuthController.php index 18a1cc5f6..9b023a135 100644 --- a/app/Http/Controllers/Auth/AuthController.php +++ b/app/Http/Controllers/Auth/AuthController.php @@ -17,6 +17,8 @@ use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers; /* Include login validator */ use Mail; use Auth; +// Model +// use App\Model\helpdesk\Utility\Limit_Login; /** * --------------------------------------------------- @@ -146,14 +148,45 @@ class AuthController extends Controller { * @return type Response */ public function postLogin(LoginRequest $request) { - // $email = $request->input('email'); - // $password = Hash::make($request->input('password')); - // $remember = $request->input('remember'); - // dd([$email,$password,$remember]); + + // Set login attempts and login time + $loginAttempts = 1; $credentials = $request->only('email', 'password'); - if ($this->auth->attempt($credentials, $request->has('remember'))) { + + $email = $request->email; + // $ip_address = $_SERVER['REMOTE_ADDR']; + + // $limit_login = Limit_Login::where('email' , '=' , $email)->where('ip_address', '=', $ip_address)->first(); + // if(isset($limit_login)) { + + // } + + + + // If session has login attempts, retrieve attempts counter and attempts time + if (\Session::has('loginAttempts')) { + $loginAttempts = \Session::get('loginAttempts'); + $loginAttemptTime = \Session::get('loginAttemptTime'); + $credentials = $request->only('email', 'password'); + // If attempts > 3 and time < 10 minutes + if ($loginAttempts > 4 && (time() - $loginAttemptTime <= 600)) { + return redirect()->back()->with('error', 'Maximum login attempts reached. Try again in a while'); + } + // If time > 10 minutes, reset attempts counter and time in session + if (time() - $loginAttemptTime > 600) { + \Session::put('loginAttempts', 1); + \Session::put('loginAttemptTime', time()); + } + } else // If no login attempts stored, init login attempts and time + { + \Session::put('loginAttempts', $loginAttempts); + \Session::put('loginAttemptTime', time()); + } + // If auth ok, redirect to restricted area + \Session::put('loginAttempts', $loginAttempts + 1); + if ($this->auth->attempt($credentials, $request->has('remember'))) { if(Auth::user()->role == 'user') { - return \Redirect::route('home'); + return \Redirect::route('/'); } else { return redirect()->intended($this->redirectPath()); } @@ -164,6 +197,7 @@ class AuthController extends Controller { 'email' => $this->getFailedLoginMessage(), 'password' => $this->getFailedLoginMessage(), ]); + // Increment login attempts } /** @@ -173,4 +207,101 @@ class AuthController extends Controller { protected function getFailedLoginMessage() { return 'This Field do not match our records.'; } -} + + + // public function postLogin(LoginRequest $request) { + // $email = $request->input('email'); + // $counter = 0; + // $user = User::where('email','=',$email)->first(); + // if($user) { + // if($user->active == 1) { + // $credentials = $request->only('email', 'password'); + + // while($counter < 10) { + // if($this->auth->attempt($credentials) === false) { + // $counter++; + // } + // } + // if ($this->auth->attempt($credentials, $request->has('remember'))) { + // if(Auth::user()) { + // if(Auth::user()->role == 'vendor') { + // return \Redirect::route('vendors.index'); + // } elseif(Auth::user()->role == 'admin') { + // return \Redirect::route('admin.dashboard'); + // } elseif(Auth::user()->role == 'sadmin') { + // return \Redirect::route('sadmin.dashboard'); + // } else { + // return redirect()->intended($this->redirectPath()); + // } + // } else { + // return redirect()->back()->with('message','Account Inactive, Please wait for Admin to approve.'); + // } + // } + // } else { + // return redirect()->back()->with('message','Account Inactive, Please wait for Admin to approve.'); + // } + // } + // return redirect($this->loginPath()) + // ->withInput($request->only('email', 'remember')) + // ->withErrors(['email' => $this->getFailedLoginMessage(), 'password' => $this->getFailedLoginMessage(), ]); + + // } + + + + + // public function authenticate() { + // // Set login attempts and login time + // $loginAttempts = 1; + // // If session has login attempts, retrieve attempts counter and attempts time + // if (Session::has('loginAttempts')) { + // $loginAttempts = Session::get('loginAttempts'); + // $loginAttemptTime = Session::get('loginAttemptTime'); + // // If attempts > 3 and time < 10 minutes + // if ($loginAttempts > 3 && (time() - $loginAttemptTime <= 600)) { + // return redirect()-back()->with('error', 'maximum login attempts reached. Try again in a while'); + // } + // // If time > 10 minutes, reset attempts counter and time in session + // if (time() - $loginAttemptTime > 600) { + // Session::put('loginAttempts', 1); + // Session::put('loginAttemptTime', time()); + // } + // } else // If no login attempts stored, init login attempts and time + // { + // Session::put('loginAttempts', $loginAttempts); + // Session::put('loginAttemptTime', time()); + // } + // // If auth ok, redirect to restricted area + // if (Auth::attempt(['email' => 'someone@example.com'])) { + // return redirect()->intended('dashboard'); + // } + // // Increment login attempts + // Session::put('loginAttempts', $loginAttempts + 1); + // } + + + + // public function postLogin(LoginRequest $request) { + // // $email = $request->input('email'); + // // $password = Hash::make($request->input('password')); + // // $remember = $request->input('remember'); + // // dd([$email,$password,$remember]); + // $credentials = $request->only('email', 'password'); + // if ($this->auth->attempt($credentials, $request->has('remember'))) { + // if(Auth::user()->role == 'user') { + // return \Redirect::route('home'); + // } else { + // return redirect()->intended($this->redirectPath()); + // } + // } + // return redirect($this->loginPath()) + // ->withInput($request->only('email', 'remember')) + // ->withErrors([ + // 'email' => $this->getFailedLoginMessage(), + // 'password' => $this->getFailedLoginMessage(), + // ]); + // } + + + +} \ No newline at end of file diff --git a/app/Http/Controllers/Installer/helpdesk/InstallController.php b/app/Http/Controllers/Installer/helpdesk/InstallController.php index 97548f79a..6beb9c0b6 100644 --- a/app/Http/Controllers/Installer/helpdesk/InstallController.php +++ b/app/Http/Controllers/Installer/helpdesk/InstallController.php @@ -145,7 +145,7 @@ class InstallController extends Controller { } if (Config::get('database.install') == '%0%') { if (Session::get('step2') == 'step2') { - return View::make('themes/default1/installer/helpdesk/view4'); + return View::make('themes/default1/installer/helpdesk/view3'); } else { return Redirect::route('prerequisites'); } @@ -281,7 +281,7 @@ class InstallController extends Controller { public function database() { if (Config::get('database.install') == '%0%') { if (Session::get('step4') == 'step4') { - return View::make('themes/default1/installer/helpdesk/view5'); + return View::make('themes/default1/installer/helpdesk/view4'); } else { return Redirect::route('configuration'); } @@ -302,7 +302,7 @@ class InstallController extends Controller { Session::forget('step1'); Session::forget('step2'); Session::forget('step3'); - return View::make('themes/default1/installer/helpdesk/view6'); + return View::make('themes/default1/installer/helpdesk/view5'); } else { return Redirect::route('configuration'); } @@ -420,7 +420,7 @@ class InstallController extends Controller { File::put($path22, $content23); try { - return View::make('themes/default1/installer/helpdesk/view7'); + return View::make('themes/default1/installer/helpdesk/view6'); } catch (Exception $e) { return Redirect::route('npl'); } diff --git a/app/Http/Middleware/LanguageMiddleware.php b/app/Http/Middleware/LanguageMiddleware.php new file mode 100644 index 000000000..bb490eb78 --- /dev/null +++ b/app/Http/Middleware/LanguageMiddleware.php @@ -0,0 +1,24 @@ + 'roles', 'middleware' => 'auth'], function () { Route::get('checkUpdate',['as'=>'checkupdate','uses'=>'Common\SettingsController@getupdate']); /* get Check update */ - Route::get('plugins',['as'=>'plugins','uses'=>'Common\SettingsController@Plugins']); + Route::get('admin', array('as'=>'setting', 'uses'=>'Admin\helpdesk\SettingsController@settings')); + + Route::get('plugins',['as'=>'plugins','uses'=>'Common\SettingsController@Plugins']); Route::get('getplugin', array('as'=>'get.plugin', 'uses'=>'Common\SettingsController@GetPlugin')); @@ -132,6 +134,27 @@ Route::group(['middleware' => 'roles', 'middleware' => 'auth'], function () { Route::get('plugin/delete/{slug}', array('as'=>'delete.plugin', 'uses'=>'Common\SettingsController@DeletePlugin')); Route::get('plugin/status/{slug}', array('as'=>'status.plugin', 'uses'=>'Common\SettingsController@StatusPlugin')); + + + + + //Routes for showing language table and switching language + Route::get('languages',['as'=>'LanguageController','uses'=>'Admin\helpdesk\LanguageController@index']); + + Route::get('get-languages', array('as'=>'getAllLanguages', 'uses'=>'Admin\helpdesk\LanguageController@getLanguages')); + + Route::get('change-language/{lang}', ['as'=>'lang.switch', 'uses'=>'Admin\helpdesk\LanguageController@switchLanguage']); + + //Route for download language template package + Route::get('/download-template', array('as' => 'download', 'uses' => 'Admin\helpdesk\LanguageController@download')); + + //Routes for language file upload form-----------You may want to use csrf protection for these route-------------- + Route::post('language/add', 'Admin\helpdesk\LanguageController@postForm'); + Route::get('language/add',array('as'=>'add-language','uses'=>'Admin\helpdesk\LanguageController@getForm')); + + //Routes for delete language package + Route::get('delete-language/{lang}', ['as'=>'lang.delete', 'uses'=>'Admin\helpdesk\LanguageController@deleteLanguage']); + }); /* @@ -447,7 +470,7 @@ $router->get('category/delete/{id}', 'Agent\kb\CategoryController@destroy'); $router->resource('article', 'Agent\kb\ArticleController'); $router->get('article/delete/{id}', 'Agent\kb\ArticleController@destroy'); /* get settings */ -$router->get('settings', ['as'=>'settings' , 'uses'=> 'Agent\kb\SettingsController@settings']); +$router->get('kb/settings', ['as'=>'settings' , 'uses'=> 'Agent\kb\SettingsController@settings']); /* post settings */ $router->patch('postsettings/{id}', 'Agent\kb\SettingsController@postSettings'); /* get the create faq page */ diff --git a/app/Model/helpdesk/Utility/Limit_Login.php b/app/Model/helpdesk/Utility/Limit_Login.php new file mode 100644 index 000000000..29169737c --- /dev/null +++ b/app/Model/helpdesk/Utility/Limit_Login.php @@ -0,0 +1,11 @@ + '%0%', @@ -38,7 +38,7 @@ return [ | */ - 'version' => 'COMMUNITY 1.0.3.5', + 'version' => 'COMMUNITY 1.0.4', /* |-------------------------------------------------------------------------- @@ -142,7 +142,9 @@ return [ +// + // // @@ -202,6 +204,8 @@ return [ 'Vsmoraes\Pdf\PdfServiceProvider', 'Thomaswelton\LaravelGravatar\LaravelGravatarServiceProvider', 'Chumper\Datatable\DatatableServiceProvider', + 'Chumper\Zipper\ZipperServiceProvider' + ], /* @@ -258,6 +262,8 @@ return [ 'UTC' => 'App\Http\Controllers\Agent\helpdesk\TicketController', 'SMTPS' => 'App\Http\Controllers\HomeController', 'Datatable' => 'Chumper\Datatable\Facades\DatatableFacade', + 'Zipper' => 'Chumper\Zipper\Zipper', + ], ]; \ No newline at end of file diff --git a/config/database.php b/config/database.php index 9106cc06e..47460f80e 100644 --- a/config/database.php +++ b/config/database.php @@ -1,5 +1,4 @@ [ 'driver' => 'pgsql', - 'host' => '%host1%', - 'database' => '%database1%', + 'host' => 'localhost', + 'database' => 'fav', 'username' => '%username1%', 'password' => '%password1%', 'port' => '%port1%', diff --git a/config/languages.php b/config/languages.php new file mode 100644 index 000000000..35ae57d00 --- /dev/null +++ b/config/languages.php @@ -0,0 +1,140 @@ + "Afar", + 'ab' => "Abkhazian", + 'af' => "Afrikaans", + 'am' => "Amharic", + 'ar' => "Arabic", + 'as' => "Assamese", + 'ay' => "Aymara", + 'az' => "Azerbaijani", + 'ba' => "Bashkir", + 'be' => "Byelorussian", + 'bg' => "Bulgarian", + 'bh' => "Bihari", + 'bi' => "Bislama", + 'bn' => "Bengali", + 'bo' => "Tibetan", + 'br' => "Breton", + 'ca' => "Catalan", + 'co' => "Corsican", + 'cs' => "Czech", + 'cy' => "Welsh", + 'da' => "Danish", + 'de' => "German", + 'dz' => "Bhutani", + 'el' => "Greek", + 'en' => "English", + 'eo' => "Esperanto", + 'es' => "Spanish", + 'et' => "Estonian", + 'eu' => "Basque", + 'fa' => "Persian", + 'fi' => "Finnish", + 'fj' => "Fiji", + 'fo' => "Faeroese", + 'fr' => "French", + 'fy' => "Frisian", + 'ga' => "Irish", + 'gd' => "Gaelic", + 'gl' => "Galician", + 'gn' => "Guarani", + 'gu' => "Gujarati", + 'ha' => "Hausa", + 'hi' => "Hindi", + 'hr' => "Croatian", + 'hu' => "Hungarian", + 'hy' => "Armenian", + 'ia' => "Interlingua", + 'ie' => "Interlingue", + 'ik' => "Inupiak", + 'in' => "Indonesian", + 'is' => "Icelandic", + 'it' => "Italian", + 'iw' => "Hebrew", + 'ja' => "Japanese", + 'ji' => "Yiddish", + 'jw' => "Javanese", + 'ka' => "Georgian", + 'kk' => "Kazakh", + 'kl' => "Greenlandic", + 'km' => "Cambodian", + 'kn' => "Kannada", + 'ko' => "Korean", + 'ks' => "Kashmiri", + 'ku' => "Kurdish", + 'ky' => "Kirghiz", + 'la' => "Latin", + 'ln' => "Lingala", + 'lo' => "Laothian", + 'lt' => "Lithuanian", + 'lv' => "Latvian", + 'mg' => "Malagasy", + 'mi' => "Maori", + 'mk' => "Macedonian", + 'ml' => "Malayalam", + 'mn' => "Mongolian", + 'mo' => "Moldavian", + 'mr' => "Marathi", + 'ms' => "Malay", + 'mt' => "Maltese", + 'my' => "Burmese", + 'na' => "Nauru", + 'ne' => "Nepali", + 'nl' => "Dutch", + 'no' => "Norwegian", + 'oc' => "Occitan", + 'om' => "Oromo", + 'or' => "Oriya", + 'pa' => "Punjabi", + 'pl' => "Polish", + 'ps' => "Pashto", + 'pt' => "Portuguese", + 'qu' => "Quechua", + 'rm' => "Rhaeto-Romance", + 'rn' => "Kirundi", + 'ro' => "Romanian", + 'ru' => "Russian", + 'rw' => "Kinyarwanda", + 'sa' => "Sanskrit", + 'sd' => "Sindhi", + 'sg' => "Sangro", + 'sh' => "Serbo-Croatian", + 'si' => "Singhalese", + 'sk' => "Slovak", + 'sl' => "Slovenian", + 'sm' => "Samoan", + 'sn' => "Shona", + 'so' => "Somali", + 'sq' => "Albanian", + 'sr' => "Serbian", + 'ss' => "Siswati", + 'st' => "Sesotho", + 'su' => "Sudanese", + 'sv' => "Swedish", + 'sw' => "Swahili", + 'ta' => "Tamil", + 'te' => "Tegulu", + 'tg' => "Tajik", + 'th' => "Thai", + 'ti' => "Tigrinya", + 'tk' => "Turkmen", + 'tl' => "Tagalog", + 'tn' => "Setswana", + 'to' => "Tonga", + 'tr' => "Turkish", + 'ts' => "Tsonga", + 'tt' => "Tatar", + 'tw' => "Twi", + 'uk' => "Ukrainian", + 'ur' => "Urdu", + 'uz' => "Uzbek", + 'vi' => "Vietnamese", + 'vo' => "Volapuk", + 'wo' => "Wolof", + 'xh' => "Xhosa", + 'yo' => "Yoruba", + 'zh' => "Chinese", + 'zu' => "Zulu", +]; \ No newline at end of file diff --git a/public/downloads/en.zip b/public/downloads/en.zip new file mode 100644 index 0000000000000000000000000000000000000000..0583c8be6787a797716f1940fb188e8956a8bfa1 GIT binary patch literal 2610 zcmZ{mdpr}|AICSNMHj2NJ`%}i)f%Ox$hSS;6&a#t=flC2>rMahyT z*W4Mcxvs>D`M%Ei<8#h=pYQAYIcQ6epcnuESP$5l6l-=~ z2Wo)^0svzI0Kg{xsxRK(KhVd|)ql6Ihi~!qRzjTy#I$GD-im>^Y>1*flxw=3b^wtd zU#gRI(6!l|_B0|a#4Jpy>=Oyk^q6Ao(@s{;nTk_@+!-2r43`*iE9E)9oq%eS8l-~d z#Gc!nyLlU6K)iYx9GP=o%tt0udp?UY%U*o*6x6HV`N6RIKy^2zu*UUb(bs+!?6~U! zxOU7bjJ!udG%ia2depd~c_sO-$O`;mqUfa_!nl|gP|J4Ue0i4?)yT!7Sbk@0_1-vX zsX*g%VkLX^XWn6aStnKXK)rq{D$1kBg^zZkJ4OZU)mTx55rDBiS2PT z-!Ln9W_Y7soPvIp62Y*`^@vCZDtdM2qrwr6ymSZc&yk}pxBN}F>JYgfhCfkxLg=69 zB~y~k787Z$T72{m_~?cC=!y8#o^C&|+x)<8xQiLyn=Q|s1%__Pk`|#N$}%uP4hGwB z*c%D5!iZ%a!QOg6G)DAvpnJffbDY6>uW+3zSa4i3jx-unmdPCn4k%6L4E?dqOOtR0 zA60JA3-K(=_gzqJ4)zlM+94IlDhK)}?U5E96UIArWDZoRe)-Q#F!yFG+v%a-jr)Rhl$y7MB&MihLc zQNC16@#2^U+lyK`aK5D^}5N>dBV~ zxl<=s3d=&MFP&co{R{ScPRj<8;;#w<00;PKzL^g;0PlI$6;C|tAE}|zba?u zKg*l-a$?U_)G_yhn({6Vt;z8Z> zb+53Wct%;$nU}$yi@53w6Xu??YTf!3*<2LJCY5_m^}dN_-;#wMaTSJ`WX3?d8y7rx zHn|g(p&3jy;Ei;xS)+{fkhmE#Jk9!;_3OH*?f}LHul4S=scoM1;(7PelDZlG%hmHI zjT`o%L~Vih>MN4pJU&J<9AUV4Q_-UgYK;!dP+APLq`NsyGurR9jZyCQCm>t7cC~`V zylF?Wx%2?2sj2(Ts9^YUo7)iV2_jt~l9C`nEEP*MKw6 zn9~+%gAM)iyq8q2n|fMzf_Jhc_tmqJ9n7W=B=f^d($3~zDYTaki2e$zd*FaWgS-jC ziQ1IfF5(8?3%axdRSYYo&}Io@NlKXS{8&)2top8{VGQEOJtxvU&N8xXDV`tVdE|4f zQVfbJ?`YOo$JaK0c3RqMulsyz;IR1VELmC0J)9I;NcIIYmYMkB^Flgq8ml(8`#)xs zfTj);)T%%|x|64a#WUi+DHxEEx4iDhKH;=)myxv|a=Y+sD4|bbqb@3>Wb4V-J8mRo zGG&H&_nsMJtf$v;Y7{;u!;D;5cih|VQu1hptTHLCf!38_C>K;v4o^zDoEoo>9$mG1 zCt+*vETK7EIf(pboZ2_;_E0{I7OFDg3GF#@(xpIT-yb_o%7aZ76;b+PLGv@41mB)O z7ih;1SD8W^8Mji|!OVCO zGWa(2ghxG6n zn_;JZ2F7ObfFjvAk&dL4k>ATcX)XQN36RvJ*O>{p%}1Q z_bvR_l2w06dfPO=RDI?9!S|Boi$8PL`)A22zJA18Kyzbs4_C}tb1UH;;Pa?J;pv)n zc21;q+EAU;JnLFwk!)1}1POf8xAN_l+J45%?XbGE4Z$Qm_fki4!}JKpxc*c!<4dO3 zOo_=`$qC^Aw(T=|YL?8pNPpkmR_ys9?=b6S0GXn+&&a?;Lc>{agX;2)>-jK>8aoGj zIM%gsY{dv^l!kf*OQK>cw4ooddNJZ3+X@kj`l62_#@iyT$NU=(x8Te6=hW zF#k1vy7F4-!4Ibkb@jS{SF=^H!`lDGwbK7}qP5a2zUlw!OKbHp_WeJO{Lu98EBq6G u*Z(zb*6Lpc|DHr^^)+yRBk{55`LWMG5p5~7?mJdNeh=bb{`UIsv%dfs8h(WU literal 0 HcmV?d00001 diff --git a/public/lb-faveo/Img/icon/faveokb.png b/public/lb-faveo/Img/icon/faveokb.png deleted file mode 100644 index dcffcbc26bb9cf0b182a6a5d3332b3cf412237af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 385759 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%0ALtL6r{x{X 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 z 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⪻xGX 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

VcO_BL29CVDdj)e(WZLrQ{tzI(uw$K576mmY` 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

Ybi>{HxYOG>gq2Ki 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 saAV;duu={6M-TM>Uh)6mTYt#ucNSqW`QSAA=.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#999}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-muted{color:#999}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#999}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:0}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:0}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}@media (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}input[type=date]{line-height:34px}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;margin-top:10px;margin-bottom:10px;padding-left:20px}.radio label,.checkbox label{display:inline;font-weight:400;cursor:pointer}.radio input[type=radio],.radio-inline input[type=radio],.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type=radio][disabled],input[type=checkbox][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type=radio],fieldset[disabled] input[type=checkbox],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.has-feedback .form-control-feedback{position:absolute;top:25px;right:0;display:block;width:34px;height:34px;line-height:34px;text-align:center}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:none;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:15px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#428bca;font-weight:400;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}[data-toggle=buttons]>.btn>input[type=radio],[data-toggle=buttons]>.btn>input[type=checkbox]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=radio],.input-group-addon input[type=checkbox]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.navbar-form .radio input[type=radio],.navbar-form .checkbox input[type=checkbox]{float:none;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#428bca;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#2a6496;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:gray}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px;overflow:hidden}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:auto;overflow-y:scroll;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{margin-top:15px;padding:19px 20px 20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}}@media print{.hidden-print{display:none!important}} \ No newline at end of file +/*! normalize.css v3.0.0 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#999}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-muted{color:#999}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:12.5px;border-left: 5px solid #989898;background-color: #F0F0F0;border-radius: 3px;}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#999}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:0}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:0}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}@media (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}input[type=date]{line-height:34px}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;margin-top:10px;margin-bottom:10px;padding-left:20px}.radio label,.checkbox label{display:inline;font-weight:400;cursor:pointer}.radio input[type=radio],.radio-inline input[type=radio],.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type=radio][disabled],input[type=checkbox][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type=radio],fieldset[disabled] input[type=checkbox],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.has-feedback .form-control-feedback{position:absolute;top:25px;right:0;display:block;width:34px;height:34px;line-height:34px;text-align:center}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:none;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:15px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#428bca;font-weight:400;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}[data-toggle=buttons]>.btn>input[type=radio],[data-toggle=buttons]>.btn>input[type=checkbox]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=radio],.input-group-addon input[type=checkbox]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.navbar-form .radio input[type=radio],.navbar-form .checkbox input[type=checkbox]{float:none;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#428bca;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#2a6496;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:gray}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px;overflow:hidden}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:auto;overflow-y:scroll;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{margin-top:15px;padding:19px 20px 20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}}@media print{.hidden-print{display:none!important}} \ No newline at end of file diff --git a/public/lb-faveo/installer/css/.DS_Store b/public/lb-faveo/installer/css/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..f0be4766bc13eca7292bc950fc47ab1fd474777d GIT binary patch literal 8196 zcmeHMO>Wab6#k~EL?eDTNLhNxrj6hPrUax4s4B961p;a(5=~Pa?1ZX2AA>`2fF7U+ z;0ED)Zw6`-TdIYGsCZ+|e3O~?&CL5|Z0k7y-0ouZ5a=CF zM}2g#&=7#Q$!1NgGY(Kr6fh20dQ>XM^wEP0R2M=F=jrT^#GDuhEIoQUoTtNunO%rb zoX$>Oq~>t3M=MPMQ(#>IiQT){!GN**`)d52rO7l)*vlKLGa)`$YSJO@;1DTe{Udx~ zO)$eJj*_B4u{W)9@oa_LC1ZpWa+(<5Rv0}b96#ec1#?dR4BH$-W*)PC#CeZd%j;Lr z`TnQl&F0CAMKRAg&Raa@j5ADi)=S?D^x5+g2fT)?pX$}ebFMPyIzQ6>nC%Drm0`lw zihh0Uvvx{+tsXvMdBRJ4Nm)kf@fl|u(`JItSZLoF{TJ26vg-dfTMm^YBSd&amaH@( z%154-I@0g`;CE{-=eyz0L;bF}S1Y@6|2O}3YW-_IVP7k!v&Bf2oqcodb{1&o>Ce4v z!Qvj>a{u|$STyYF`O2<#E1cTh+ju7oX183j1a9$uNOi6;XIt=m*YhrD zd-+VV_rHo~g(+}l1v=icC-MK&=I{Sk9?uL-0aM`mDd08-!@(}s9b)S>4PSkLm`0Ect)+3q.select2-chosen{margin-right:26px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;float:none;width:auto}html[dir=rtl] .select2-container .select2-choice>.select2-chosen{margin-left:26px;margin-right:0}.select2-container .select2-choice abbr{display:none;width:12px;height:12px;position:absolute;right:24px;top:5px;font-size:1px;text-decoration:none;border:0;background:url(../images/select2.png) right top no-repeat;cursor:pointer;outline:0}.select2-container.select2-allowclear .select2-choice abbr{display:inline-block}.select2-container .select2-choice abbr:hover{background-position:right -11px;cursor:pointer}.select2-drop-mask{border:0;margin:0;padding:0;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:9998;background-color:#fff;filter:alpha(opacity=0)}.select2-drop{width:100%;margin-top:-1px;position:absolute;top:100%;background:#fff;color:#000;border:1px solid #ccc;border-top:0;border-radius:0 0 3px 3px}.select2-drop.select2-drop-above{margin-top:1px;border-top:1px solid #ccc;border-bottom:0;border-radius:3px 3px 0 0}.select2-drop-active{border:1px solid #666;border-top:none}.select2-drop.select2-drop-above.select2-drop-active{border-top:1px solid #666}.select2-drop-auto-width{border-top:1px solid #ccc;width:auto}.select2-drop-auto-width .select2-search{padding-top:4px}.select2-container .select2-choice .select2-arrow{display:inline-block;width:18px;height:100%;position:absolute;right:0;top:0;border-radius:0 3px 3px 0;background-clip:padding-box}html[dir=rtl] .select2-container .select2-choice .select2-arrow{left:0;right:auto;border-radius:3px 0 0 3px}.select2-container .select2-choice .select2-arrow b{display:block;width:100%;height:100%;position:relative}.select2-container .select2-choice .select2-arrow b:after{position:absolute;display:block;content:"";top:50%;left:50%;border:4px solid transparent;border-top-color:#666;margin-left:-7px;margin-top:-2px}.select2-search{display:inline-block;width:100%;margin:0;padding-left:4px;padding-right:4px;position:relative;z-index:10000;white-space:nowrap;padding-bottom:4px}.select2-search input{width:100%;height:auto!important;padding:4px 20px 4px 5px!important;margin:0;outline:0;font-family:sans-serif;font-size:1em;border:1px solid #ccc;-webkit-box-shadow:none;box-shadow:none;background:url(../images/select2.png) 100% -22px no-repeat #fff}html[dir=rtl] .select2-search input{padding:4px 5px 4px 20px;background:url(../images/select2.png) -37px -22px no-repeat #fff}.select2-drop.select2-drop-above .select2-search input{margin-top:4px}.select2-search input.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #fff}.select2-container-active .select2-choice,.select2-container-active .select2-choices{border:1px solid #666;outline:0}.select2-dropdown-open .select2-choice{border-bottom-color:transparent;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-dropdown-open .select2-choice .select2-arrow b:after{border-top-color:transparent;border-bottom-color:#666;margin-top:-6px}.select2-dropdown-open.select2-drop-above .select2-choice,.select2-dropdown-open.select2-drop-above .select2-choices{border:1px solid #666;border-top-color:transparent}.select2-dropdown-open .select2-choice .select2-arrow{background:0 0;border-left:none;filter:none}html[dir=rtl] .select2-dropdown-open .select2-choice .select2-arrow{border-right:none}.select2-dropdown-open .select2-choice .select2-arrow b{background-position:-18px 1px}html[dir=rtl] .select2-dropdown-open .select2-choice .select2-arrow b{background-position:-16px 1px}.select2-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.select2-results{max-height:200px;padding:4px;margin:0;position:relative;overflow-x:hidden;overflow-y:auto;-webkit-tap-highlight-color:transparent;background:#fafafa}html[dir=rtl] .select2-results{padding:0 4px 0 0;margin:4px 0 4px 4px}.select2-results ul.select2-result-sub{margin:0;padding-left:0}.select2-results li{list-style:none;display:list-item;background-image:none;margin:3px 0}.select2-results li.select2-result-with-children>.select2-result-label{font-weight:700}.select2-results .select2-result-label{padding:5px 7px;margin:0;cursor:pointer;min-height:1em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.select2-results-dept-1 .select2-result-label{padding-left:20px}.select2-results-dept-2 .select2-result-label{padding-left:40px}.select2-results-dept-3 .select2-result-label{padding-left:60px}.select2-results-dept-4 .select2-result-label{padding-left:80px}.select2-results-dept-5 .select2-result-label{padding-left:100px}.select2-results-dept-6 .select2-result-label{padding-left:110px}.select2-results-dept-7 .select2-result-label{padding-left:120px}.select2-results .select2-highlighted{background:#f1f1f1;color:#000;border-radius:3px}.select2-results li em{background:#feffde;font-style:normal}.select2-results .select2-highlighted em{background:0 0}.select2-results .select2-highlighted ul{background:#fff;color:#000}.select2-results .select2-ajax-error,.select2-results .select2-no-results,.select2-results .select2-searching,.select2-results .select2-selection-limit{background:#f4f4f4;display:list-item;padding-left:5px}.select2-results .select2-disabled.select2-highlighted{color:#666;background:#f4f4f4;display:list-item;cursor:default}.select2-results .select2-disabled{background:#f4f4f4;display:list-item;cursor:default}.select2-results .select2-selected{display:none}.select2-more-results.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #f4f4f4}.select2-results .select2-ajax-error{background:rgba(255,50,50,.2)}.select2-more-results{background:#f4f4f4;display:list-item}.select2-container.select2-container-disabled .select2-choice{background-color:#f4f4f4;background-image:none;border:1px solid #ddd;cursor:default}.select2-container.select2-container-disabled .select2-choice .select2-arrow{background-color:#f4f4f4;background-image:none;border-left:0}.select2-container.select2-container-disabled .select2-choice abbr{display:none}.select2-container-multi .select2-choices{height:auto!important;height:1%;margin:0;padding:0 5px 0 0;position:relative;border:1px solid #ccc;cursor:text;overflow:hidden;background-color:#fff;min-height:26px}html[dir=rtl] .select2-container-multi .select2-choices{padding:0 0 0 5px}.select2-locked{padding:3px 5px!important}.select2-container-multi.select2-container-active .select2-choices{border:1px solid #666;outline:0}.select2-container-multi .select2-choices li{float:left;list-style:none}html[dir=rtl] .select2-container-multi .select2-choices li{float:right}.select2-container-multi .select2-choices .select2-search-field{margin:0;padding:0;white-space:nowrap}.select2-container-multi .select2-choices .select2-search-field input{margin:1px 0;outline:0;border:0;-webkit-box-shadow:none;box-shadow:none;background:0 0!important}.select2-container-multi .select2-choices .select2-search-field input.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #fff!important}.select2-default{color:#999!important}.select2-container-multi .select2-choices .select2-search-choice{padding:5px 8px 5px 24px;margin:3px 0 3px 5px;position:relative;line-height:15px;color:#333;cursor:default;border-radius:2px;background-clip:padding-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#e4e4e4}html[dir=rtl] .select2-container-multi .select2-choices .select2-search-choice{margin:3px 5px 3px 0;padding:5px 24px 5px 8px}.select2-container-multi .select2-choices .select2-search-choice .select2-chosen{cursor:default}.select2-container-multi .select2-choices .select2-search-choice-focus{background:#d4d4d4}.select2-search-choice-close{display:block;width:12px;height:13px;position:absolute;right:7px;top:6px;font-size:1px;outline:0;background:url(../images/select2.png) right top no-repeat}html[dir=rtl] .select2-search-choice-close{right:auto;left:7px}.select2-container-multi .select2-search-choice-close{left:7px}html[dir=rtl] .select2-container-multi .select2-search-choice-close{left:auto;right:7px}.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover,.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close{background-position:right -11px}.select2-container-multi.select2-container-disabled .select2-choices{background-color:#f4f4f4;background-image:none;border:1px solid #ddd;cursor:default}.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice{padding:3px 5px;border:1px solid #ddd;background-image:none;background-color:#f4f4f4}.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close{display:none;background:0 0}.select2-result-selectable .select2-match,.select2-result-unselectable .select2-match{text-decoration:underline}.select2-offscreen,.select2-offscreen:focus{clip:rect(0 0 0 0)!important;width:1px!important;height:1px!important;border:0!important;margin:0!important;padding:0!important;overflow:hidden!important;position:absolute!important;outline:0!important;left:0!important;top:0!important}.select2-display-none{display:none}.select2-measure-scrollbar{position:absolute;top:-10000px;left:-10000px;width:100px;height:100px;overflow:scroll}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:2dppx){.select2-search input{background-image:url(../images/select2x2.png)!important;background-repeat:no-repeat!important;background-size:60px 40px!important;background-position:100% -21px!important}}@font-face{font-family:star;src:url(../fonts/star.eot);src:url(../fonts/star.eot?#iefix) format("embedded-opentype"),url(../fonts/star.woff) format("woff"),url(../fonts/star.ttf) format("truetype"),url(../fonts/star.svg#star) format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url(../fonts/WooCommerce.eot);src:url(../fonts/WooCommerce.eot?#iefix) format("embedded-opentype"),url(../fonts/WooCommerce.woff) format("woff"),url(../fonts/WooCommerce.ttf) format("truetype"),url(../fonts/WooCommerce.svg#WooCommerce) format("svg");font-weight:400;font-style:normal}.blockUI.blockOverlay:before{height:1em;width:1em;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;display:block;content:"";-webkit-animation:spin 1s ease-in-out infinite;-moz-animation:spin 1s ease-in-out infinite;animation:spin 1s ease-in-out infinite;background:url(../images/icons/loader.svg) center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.wc_addons_wrap .products{overflow:hidden}.wc_addons_wrap .products li{float:left;margin:0 1em 1em 0!important;padding:0;vertical-align:top;width:300px}.wc_addons_wrap .products li a{text-decoration:none;color:inherit;border:1px solid #ddd;display:block;min-height:220px;overflow:hidden;background:#f5f5f5;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(0,0,0,.1)}.wc_addons_wrap .products li a img{max-width:258px;max-height:24px;padding:17px 20px;display:block;margin:0;background:#fff;border-right:260px solid #fff}.wc_addons_wrap .products li a .price,.wc_addons_wrap .products li a img.extension-thumb+h3{display:none}.wc_addons_wrap .products li a h3{margin:0!important;padding:20px!important;background:#fff}.wc_addons_wrap .products li a p{padding:20px!important;margin:0!important;border-top:1px solid #f1f1f1}.wc_addons_wrap .products li a:focus,.wc_addons_wrap .products li a:hover{background-color:#fff}.wc_addons_wrap .storefront{background:url(../images/storefront-bg.jpg) bottom right #f6f6f6;border:1px solid #ddd;padding:20px;overflow:hidden;zoom:1}.wc_addons_wrap .storefront img{width:278px;height:auto;float:left;margin:0 20px 0 0;box-shadow:0 1px 6px rgba(0,0,0,.1)}.wc_addons_wrap .storefront p{max-width:750px}.woocommerce-message{position:relative;border-left-color:#cc99c2!important;overflow:hidden}.woocommerce-message a.button-primary,.woocommerce-message button.button-primary{background:#bb77ae;border-color:#aa559a;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none!important;text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f}.woocommerce-message a.button-primary:hover,.woocommerce-message button.button-primary:hover{background:#c480b7;border-color:#aa559a;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15)}.woocommerce-message a.button-primary:active,.woocommerce-message button.button-primary:active{background:#aa559a;border-color:#873A79;-webkit-box-shadow:inset 0 2px 0 #873A79;box-shadow:inset 0 2px 0 #873A79}.woocommerce-message a.button-primary:focus,.woocommerce-message button.button-primary:focus{background:#bb77ae;border-color:#aa559a;-webkit-box-shadow:0 1px 0 #bb77ae,0 0 2px 1px #aa559a;box-shadow:0 1px 0 #bb77ae,0 0 2px 1px #aa559a}.woocommerce-message a.docs,.woocommerce-message a.skip{opacity:.5;text-decoration:none!important}.woocommerce-message .twitter-share-button{margin-top:-3px;margin-left:3px;vertical-align:middle}#variable_product_options #message{margin:10px}.clear{clear:both}#woocommerce-fields-bulk.inline-edit-col label,#woocommerce-fields.inline-edit-col{clear:left}.wrap.woocommerce div.error,.wrap.woocommerce div.updated{margin-top:10px}mark.amount{background:0 0;color:inherit}.postbox,.woocommerce{input:invalid;input-border:1px solid #cc010b;input-background:#ffebe8}.simplify-commerce-banner{overflow:hidden}.simplify-commerce-banner img{float:right;padding:15px 0;margin-left:1em;width:200px}table.wc_status_table{margin-bottom:1em}table.wc_status_table tr:nth-child(2n) td,table.wc_status_table tr:nth-child(2n) th{background:#fcfcfc}table.wc_status_table th{font-weight:700;padding:9px}table.wc_status_table td:first-child{width:33%}table.wc_status_table td.help{width:1em}table.wc_status_table td{padding:9px;font-size:1.1em}table.wc_status_table td mark{background:0 0}table.wc_status_table td mark.yes{color:#7ad03a}table.wc_status_table td mark.no{color:#999}table.wc_status_table td mark.error{color:#a00}table.wc_status_table td ul{margin:0}table.wc_status_table .help_tip{cursor:help}#debug-report{display:none;margin:10px 0;padding:0;position:relative}#debug-report textarea{font-family:monospace;width:100%;margin:0;height:300px;padding:20px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;resize:none;font-size:12px;line-height:20px;outline:0}#log-viewer-select{padding:10px 0 8px;line-height:180%}#log-viewer textarea{width:100%;resize:vertical}.inline-edit-product.quick-edit-row .inline-edit-col-center,.inline-edit-product.quick-edit-row .inline-edit-col-right{float:right!important}#woocommerce-fields.inline-edit-col label.featured,#woocommerce-fields.inline-edit-col label.manage_stock{margin-left:10px}#woocommerce-fields.inline-edit-col .dimensions div{display:block;margin:.2em 0}#woocommerce-fields.inline-edit-col .dimensions div span.title{display:block;float:left;width:5em}#woocommerce-fields.inline-edit-col .dimensions div span.input-text-wrap{display:block;margin-left:5em}#woocommerce-fields.inline-edit-col .text{box-sizing:border-box;width:99%;float:left;margin:1px 1% 1px 1px}#woocommerce-fields.inline-edit-col .height,#woocommerce-fields.inline-edit-col .length,#woocommerce-fields.inline-edit-col .width{width:32.33%}#woocommerce-fields.inline-edit-col .height{margin-right:0}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group label{clear:none;width:49%;margin:.2em 0}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group.dimensions label{width:75%;max-width:75%}#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .regular_price,#woocommerce-fields-bulk.inline-edit-col .sale_price,#woocommerce-fields-bulk.inline-edit-col .stock,#woocommerce-fields-bulk.inline-edit-col .weight{box-sizing:border-box;width:100%;margin-left:4.4em}#woocommerce-fields-bulk.inline-edit-col .height,#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .width{box-sizing:border-box;width:25%}.column-coupon_code{line-height:2.25em}.column-coupon_code,ul.wc_coupon_list{margin:0;overflow:hidden;zoom:1;clear:both}ul.wc_coupon_list li{margin:0}ul.wc_coupon_list li.code{display:inline-block}ul.wc_coupon_list li.code:after{content:", "}ul.wc_coupon_list li.code:last-of-type:after{display:none}ul.wc_coupon_list li.code .tips{cursor:pointer}ul.wc_coupon_list_block{margin:0;padding-bottom:2px}ul.wc_coupon_list_block li{border-top:1px solid #fff;border-bottom:1px solid #ccc;line-height:2.5em;margin:0;padding:.5em 0}ul.wc_coupon_list_block li:first-child{border-top:0;padding-top:0}ul.wc_coupon_list_block li:last-child{border-bottom:0;padding-bottom:0}.button.wc-reload{text-indent:-9999px;position:relative;padding:0;-webkit-border-radius:100%;border-radius:100%;height:24px;width:24px!important;display:inline-block}.button.wc-reload:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";line-height:22px}#order_data h2,#order_data p.order_number{font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:400}.tablenav .actions{overflow:visible}.tablenav .select2-container{float:left;max-width:200px;font-size:14px;vertical-align:middle;margin:1px 6px 1px 1px}#woocommerce-order-data .handlediv,#woocommerce-order-data .hndle{display:none}#woocommerce-order-data .inside{display:block!important}#order_data{padding:23px 24px 12px}#order_data h2{margin:0;font-size:21px;line-height:1.2;text-shadow:1px 1px 1px #fff;padding:0}#order_data h4{color:#333;margin:1.33em 0 0}#order_data p{color:#777}#order_data p.order_number{margin:0;line-height:1.6em;font-size:16px}#order_data .order_data_column_container{clear:both}#order_data .order_data_column{width:32%;padding:0 2% 0 0;float:left}#order_data .order_data_column:last-child{padding-right:0}#order_data .order_data_column p{padding:0!important}#order_data .order_data_column .address strong{display:block}#order_data .order_data_column .form-field{float:left;width:48%;padding:0;margin:9px 0 0}#order_data .order_data_column .form-field label{display:block;padding:0 0 3px}#order_data .order_data_column .form-field input,#order_data .order_data_column .form-field select,#order_data .order_data_column .form-field textarea{width:100%}#order_data .order_data_column .form-field .select2-container{width:100%!important}#order_data .order_data_column .form-field .date-picker{width:50%}#order_data .order_data_column .form-field .hour,#order_data .order_data_column .form-field .minute{width:2.5em}#order_data .order_data_column .form-field small{display:block;margin:5px 0 0;color:#999}#order_data .order_data_column .form-field.last{float:right}#order_data .order_data_column .form-field-wide{width:100%;clear:both}#order_data .order_data_column .form-field-wide .wc-customer-search,#order_data .order_data_column .form-field-wide .wc-enhanced-select,#order_data .order_data_column .form-field-wide input,#order_data .order_data_column .form-field-wide select,#order_data .order_data_column .form-field-wide textarea{width:100%}#order_data .order_data_column p.none_set{color:#999}#order_data .order_data_column ._billing_address_1_field,#order_data .order_data_column ._billing_city_field,#order_data .order_data_column ._billing_country_field,#order_data .order_data_column ._billing_email_field,#order_data .order_data_column ._billing_first_name_field,#order_data .order_data_column ._shipping_address_1_field,#order_data .order_data_column ._shipping_city_field,#order_data .order_data_column ._shipping_country_field,#order_data .order_data_column ._shipping_first_name_field{float:left}#order_data .order_data_column ._billing_address_2_field,#order_data .order_data_column ._billing_last_name_field,#order_data .order_data_column ._billing_phone_field,#order_data .order_data_column ._billing_postcode_field,#order_data .order_data_column ._billing_state_field,#order_data .order_data_column ._shipping_address_2_field,#order_data .order_data_column ._shipping_last_name_field,#order_data .order_data_column ._shipping_postcode_field,#order_data .order_data_column ._shipping_state_field,#order_data .order_data_column .wc-customer-user label a{float:right}#order_data .order_data_column ._billing_company_field,#order_data .order_data_column ._shipping_company_field,#order_data .order_data_column ._transaction_id_field{clear:both;width:100%}#order_data .order_data_column ._billing_email_field{clear:left}#order_data .order_data_column div.edit_address{display:none;zoom:1;padding-right:1px}#order_data .order_data_column .billing-same-as-shipping,#order_data .order_data_column .load_customer_billing,#order_data .order_data_column .load_customer_shipping,#order_data .order_data_column a.edit_address{width:14px;height:0;padding:14px 0 0;margin:0 0 0 6px;overflow:hidden;position:relative;color:#999;border:0;float:right}#order_data .order_data_column .billing-same-as-shipping:focus,#order_data .order_data_column .billing-same-as-shipping:hover,#order_data .order_data_column .load_customer_billing:focus,#order_data .order_data_column .load_customer_billing:hover,#order_data .order_data_column .load_customer_shipping:focus,#order_data .order_data_column .load_customer_shipping:hover,#order_data .order_data_column a.edit_address:focus,#order_data .order_data_column a.edit_address:hover{color:#000}#order_data .order_data_column .billing-same-as-shipping:after,#order_data .order_data_column .load_customer_billing:after,#order_data .order_data_column .load_customer_shipping:after,#order_data .order_data_column a.edit_address:after{font-family:WooCommerce;position:absolute;top:0;left:0;text-align:center;vertical-align:top;line-height:14px;font-size:14px;font-weight:400;-webkit-font-smoothing:antialiased}#order_data .order_data_column .billing-same-as-shipping:after{content:"\e008"}#order_data .order_data_column .load_customer_billing:after,#order_data .order_data_column .load_customer_shipping:after{content:"\e03a"}#order_data .order_data_column a.edit_address:after{content:"\e603"}.order_actions{margin:0;overflow:hidden;zoom:1}.order_actions li{border-top:1px solid #fff;border-bottom:1px solid #ddd;padding:6px 0;margin:0;line-height:1.6em;float:left;width:50%;text-align:center}.order_actions li a{float:none;text-align:center;text-decoration:underline}.order_actions li.wide{width:auto;float:none;clear:both;padding:6px;text-align:left;overflow:hidden}.order_actions li #delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left}.order_actions li .save_order{float:right}.order_actions li#actions{overflow:hidden}.order_actions li#actions .button{width:24px;box-sizing:border-box;float:right}.order_actions li#actions select{width:225px;box-sizing:border-box;float:left}#woocommerce-order-items .inside{margin:0;padding:0;background:#fefefe}#woocommerce-order-items .wc-order-data-row{border-bottom:1px solid #DFDFDF;padding:12px;background:#f8f8f8;line-height:2em;text-align:right}#woocommerce-order-items .wc-order-data-row:after,#woocommerce-order-items .wc-order-data-row:before{content:" ";display:table}#woocommerce-order-items .wc-order-data-row:after{clear:both}#woocommerce-order-items .wc-order-data-row p{margin:0;line-height:2em}#woocommerce-order-items .wc-order-data-row .wc-used-coupons{text-align:left}#woocommerce-order-items .wc-order-data-row .wc-used-coupons .tips{display:inline-block}#woocommerce-order-items .wc-order-bulk-actions{background:#fefefe;vertical-align:top;border-top:0}#woocommerce-order-items .wc-order-bulk-actions select{vertical-align:top}#woocommerce-order-items .wc-order-bulk-actions p.bulk-actions{float:left}#woocommerce-order-items .wc-order-add-item{background:#fff;vertical-align:top;border-top:none}#woocommerce-order-items .wc-order-add-item .add_item_id,#woocommerce-order-items .wc-order-add-item .select2-container{vertical-align:top}#woocommerce-order-items .wc-order-add-item .add_item_id .search-field input,#woocommerce-order-items .wc-order-add-item .select2-container .search-field input{min-width:100px}#woocommerce-order-items .wc-order-add-item .select2-container{width:400px!important;text-align:left}#woocommerce-order-items .wc-order-add-item .calculate-action,#woocommerce-order-items .wc-order-add-item .cancel-action,#woocommerce-order-items .wc-order-add-item .save-action{float:left;margin-right:2px}#woocommerce-order-items .wc-used-coupons{float:left;width:50%}#woocommerce-order-items .wc-order-totals{float:right;width:50%;margin:0;padding:0}#woocommerce-order-items .wc-order-totals .amount{font-weight:700}#woocommerce-order-items .wc-order-totals .label{vertical-align:top}#woocommerce-order-items .wc-order-totals .total{font-size:1em!important;width:10em;margin:0 0 0 .5em;box-sizing:border-box}#woocommerce-order-items .wc-order-totals .total input[type=text]{width:96%;float:right}#woocommerce-order-items .wc-order-totals .refunded-total{color:#a00}#woocommerce-order-items .refund-actions{margin-top:5px;padding-top:12px;border-top:1px solid #DFDFDF}#woocommerce-order-items .refund-actions .button{float:right;margin-left:4px}#woocommerce-order-items .refund-actions .cancel-action{float:left;margin-left:0}#woocommerce-order-items .add_meta{margin-left:0!important}#woocommerce-order-items h3 small{color:#999}#woocommerce-order-items .amount{white-space:nowrap}#woocommerce-order-items .add-items .description{margin-right:10px}.woocommerce_order_items_wrapper{margin:0;overflow:auto}.woocommerce_order_items_wrapper table.woocommerce_order_items{width:100%;background:#fff}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th{background:#f8f8f8;padding:8px;font-size:11px;text-align:left;color:#555;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th:last-child{padding-right:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th:first-child{padding-left:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th.sortable{cursor:pointer}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th,.woocommerce_order_items_wrapper table.woocommerce_order_items td{padding:8px;text-align:left;line-height:26px;vertical-align:top;border-bottom:1px dotted #ececec}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th select,.woocommerce_order_items_wrapper table.woocommerce_order_items td select{width:50%}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th input,.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{font-size:14px;padding:4px;color:#555}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items td:last-child{padding-right:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th:first-child,.woocommerce_order_items_wrapper table.woocommerce_order_items td:first-child{padding-left:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody tr:last-child td{border-bottom:1px solid #dfdfdf}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody tr:first-child td{border-top:8px solid #f8f8f8}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody#order_line_items tr:first-child td{border-top:none}.woocommerce_order_items_wrapper table.woocommerce_order_items td.check-column{padding:8px 8px 8px 12px;width:1%}.woocommerce_order_items_wrapper table.woocommerce_order_items .item{min-width:200px}.woocommerce_order_items_wrapper table.woocommerce_order_items .center,.woocommerce_order_items_wrapper table.woocommerce_order_items .variation-id{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class{text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label{white-space:nowrap;color:#999;font-size:.833em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label input{display:inline}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class input{width:70px;vertical-align:middle;text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class select{width:85px;height:26px;vertical-align:middle;font-size:1em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input{display:block;background:#fff;border:1px solid #ddd;box-shadow:inset 0 1px 2px rgba(0,0,0,.07);margin:1px;width:70px}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input input{width:100%;box-sizing:border-box;border:0;box-shadow:none;margin:0;color:#555;background:0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input input:last-child{color:#bbb;border-top:1px dashed #ddd}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .view{white-space:nowrap}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax del,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity del,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax del,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class del{color:#ccc}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input{text-align:center;width:50px}.woocommerce_order_items_wrapper table.woocommerce_order_items span.subtotal{opacity:.5}.woocommerce_order_items_wrapper table.woocommerce_order_items td.tax_class,.woocommerce_order_items_wrapper table.woocommerce_order_items th.tax_class{text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items .calculated{border-color:#ae8ca2;border-style:dotted}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{margin:.5em 0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr th,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr th{border:0;padding:0 4px .5em 0;line-height:1.5em;width:20%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td{padding:0 4px .5em 0;border:0;line-height:1.5em}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td input,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input{width:100%;margin:0;position:relative;border-bottom:0;box-shadow:none}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td textarea{width:100%;height:4em;margin:0;box-shadow:none}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td input:focus+textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input:focus+textarea{border-top-color:#999}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td p,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td p{margin:0 0 .5em;line-height:1.5em}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td p:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td p:last-child{margin:0}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb{text-align:left;width:27px}.wc-order-items-editable .delete-order-item:before,.wc-order-items-editable .delete_refund:before,.wc-order-items-editable .edit-order-item:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div:before{text-align:center;font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;top:0;left:0}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb a{display:block}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb img{padding:1px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:21px;height:21px}.woocommerce_order_items_wrapper table.woocommerce_order_items .refund_by,ul.order_notes li p.meta .exact-date{border-bottom:1px dotted #999}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax{white-space:nowrap}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax{padding:8px 16px 8px 8px}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:12px;visibility:hidden;float:right;margin:2px -16px 0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax:before,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";color:#fff;background-color:#000;-webkit-border-radius:100%;border-radius:100%;border:1px solid #000;box-shadow:0 1px 2px rgba(0,0,0,.2)}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax:hover:before,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax:hover:before{border-color:#a00;background-color:#a00}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax:hover .delete-order-tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax:hover .delete-order-tax{visibility:visible}.woocommerce_order_items_wrapper table.woocommerce_order_items small.refunded{display:block;color:#a00;white-space:nowrap}.wc-order-items-editable .edit-order-item{text-indent:-9999px;position:relative;height:1em;width:1em;display:inline-block;margin:0 .5em 0 0}.wc-order-items-editable .edit-order-item:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";content:"\e603";color:#999}.wc-order-items-editable .edit-order-item:hover:before{color:#555}.wc-order-items-editable .delete-order-item,.wc-order-items-editable .delete_refund{text-indent:-9999px;position:relative;height:1em;width:1em;display:inline-block;margin:0}.wc-order-items-editable .delete-order-item:before,.wc-order-items-editable .delete_refund:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";content:"\e013";color:#999}.wc-order-items-editable .delete-order-item:hover:before,.wc-order-items-editable .delete_refund:hover:before{color:#a00}.wc-order-items-editable .wc-order-edit-line-item-actions{width:2.5em;text-align:right}.wc-order-items-editable .wc-order-totals .wc-order-edit-line-item-actions{width:1.5em}.wc-order-items-editable .wc-order-totals .edit-order-item{margin:0}#woocommerce-order-downloads .buttons{float:left;padding:0;margin:0;vertical-align:top}#woocommerce-order-downloads .buttons .add_item_id,#woocommerce-order-downloads .buttons .select2-container{width:400px!important;margin-right:9px;vertical-align:top;float:left}#woocommerce-order-downloads .buttons button{margin:2px 0 0}#woocommerce-order-downloads h3 small{color:#999}#poststuff #woocommerce-order-actions .inside{margin:0;padding:0}#poststuff #woocommerce-order-actions .inside ul.order_actions li{padding:6px 10px;box-sizing:border-box}#poststuff #woocommerce-order-actions .inside ul.order_actions li:last-child{border-bottom:0}#poststuff #woocommerce-order-notes .inside{margin:0;padding:0}#poststuff #woocommerce-order-notes .inside ul.order_notes li{padding:0 10px}#woocommerce_customers p.search-box{margin:6px 0 4px;float:left}#woocommerce_customers .tablenav{float:right;clear:none}.widefat.customers td{vertical-align:middle;padding:4px 7px}.widefat .column-order_title{width:15%}.widefat .column-order_title time{display:block;color:#999;margin:3px 0}.widefat .column-orders,.widefat .column-paying,.widefat .column-spent{text-align:center;width:8%}.widefat .column-last_order{width:11%}.widefat .column-order_actions,.widefat .column-user_actions,.widefat .column-wc_actions{width:110px}.widefat .column-order_actions a.button,.widefat .column-user_actions a.button,.widefat .column-wc_actions a.button{float:left;margin:0 4px 2px 0;cursor:pointer;padding:3px 4px;height:auto}.widefat .column-order_actions a.button img,.widefat .column-user_actions a.button img,.widefat .column-wc_actions a.button img{display:block;width:12px;height:auto}.widefat small.meta{display:block;color:#999;font-size:inherit;margin:3px 0}.widefat .column-order_date,.widefat .column-order_total{width:9%}.widefat .column-order_status{width:45px;text-align:center}.widefat .column-order_status mark{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;background:0 0;font-size:1.4em;margin:0 auto}.widefat .column-order_status mark.cancelled:after,.widefat .column-order_status mark.completed:after,.widefat .column-order_status mark.failed:after,.widefat .column-order_status mark.on-hold:after,.widefat .column-order_status mark.pending:after,.widefat .column-order_status mark.processing:after,.widefat .column-order_status mark.refunded:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center}.widefat .column-order_status mark.pending:after{content:"\e012";color:#ffba00}.widefat .column-order_status mark.completed:after{content:"\e015";color:#2ea2cc}.widefat .column-order_status mark.on-hold:after{content:"\e033";color:#999}.widefat .column-order_status mark.failed:after{content:"\e016";color:#d0c21f}.widefat .column-order_status mark.cancelled:after{content:"\e013";color:#a00}.widefat .column-order_status mark.processing:after{content:"\e011";color:#73a724}.widefat .column-order_status mark.refunded:after{content:"\e014";color:#999}.widefat td.column-order_status{padding-top:9px}.column-customer_message .note-on{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto;color:#999}.column-customer_message .note-on:after,.column-order_notes .note-on:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;top:0;left:0;text-align:center;line-height:16px}.column-customer_message .note-on:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}.column-order_notes .note-on{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto;color:#999}.column-order_notes .note-on:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}.attributes-table .attribute-actions .configure-terms:after,.order_actions .complete:after,.order_actions .processing:after,.order_actions .view:after,.user_actions .edit:after,.user_actions .link:after,.user_actions .refresh:after,.user_actions .view:after{font-family:WooCommerce;speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;line-height:1.85;margin:0;text-align:center;font-weight:400}.order_actions .complete,.order_actions .processing,.order_actions .view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.order_actions .complete:after,.order_actions .processing:after,.order_actions .view:after{text-indent:0;position:absolute;width:100%;height:100%}.order_actions .processing:after{content:"\e00f"}.order_actions .complete:after{content:"\e017"}.order_actions .view:after{content:"\e010"}.user_actions .edit,.user_actions .link,.user_actions .refresh,.user_actions .view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.user_actions .edit:after,.user_actions .link:after,.user_actions .refresh:after,.user_actions .view:after{text-indent:0;position:absolute;width:100%;height:100%}.user_actions .edit:after{content:"\e603"}.user_actions .link:after{content:"\e00d"}.user_actions .view:after{content:"\e010"}.user_actions .refresh:after{content:"\e031"}.attributes-table td,.attributes-table th{width:15%;vertical-align:top}.attributes-table .attribute-terms{width:32%}.attributes-table .attribute-actions{width:2em}.attributes-table .attribute-actions .configure-terms{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.attributes-table .attribute-actions .configure-terms:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}ul.order_notes{padding:2px 0 0}ul.order_notes li .note_content{padding:10px;background:#efefef;position:relative}ul.order_notes li .note_content p{margin:0;padding:0;word-wrap:break-word}ul.order_notes li p.meta{padding:10px;color:#999;margin:0;font-size:11px}ul.order_notes li a.delete_note{color:#a00}table.wp-list-table .row-actions,table.wp-list-table span.na{color:#999}ul.order_notes li .note_content:after{content:"";display:block;position:absolute;bottom:-10px;left:20px;width:0;height:0;border-width:10px 10px 0 0;border-style:solid;border-color:#efefef transparent}ul.order_notes li.customer-note .note_content{background:#d7cad2}ul.order_notes li.customer-note .note_content:after{border-color:#d7cad2 transparent}.add_note{border-top:1px solid #ddd;padding:10px 10px 0}.add_note h4{margin-top:5px!important}.add_note #add_order_note{width:100%;height:50px}table.wp-list-table .column-thumb{width:52px;text-align:center;white-space:nowrap}table.wp-list-table .column-name{width:22%}table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag{width:11%!important}table.wp-list-table .column-featured,table.wp-list-table .column-product_type{width:48px;text-align:left!important}table.wp-list-table .column-customer_message,table.wp-list-table .column-order_notes{width:48px;text-align:center}table.wp-list-table .column-customer_message img,table.wp-list-table .column-order_notes img{margin:0 auto;padding-top:0!important}table.wp-list-table .manage-column.column-featured img,table.wp-list-table .manage-column.column-product_type img{padding-left:2px}table.wp-list-table .column-price .woocommerce-price-suffix{display:none}table.wp-list-table img{margin:1px 2px}table.wp-list-table td.column-thumb img{margin:0;vertical-align:middle;width:auto;height:auto;max-width:40px;max-height:40px}table.wp-list-table .column-is_in_stock{text-align:left!important}table.wp-list-table .notes_head:after,table.wp-list-table .order-notes_head:after,table.wp-list-table .status_head:after,table.wp-list-table span.product-type:before,table.wp-list-table span.wc-featured:before,table.wp-list-table span.wc-image:before,table.wp-list-table span.wc-type:before{speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;text-align:center;line-height:1;font-family:WooCommerce}table.wp-list-table span.wc-featured,table.wp-list-table span.wc-image,table.wp-list-table span.wc-type{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto}table.wp-list-table span.wc-featured:before,table.wp-list-table span.wc-image:before,table.wp-list-table span.wc-type:before{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:""}table.wp-list-table span.wc-featured{margin:0;cursor:pointer}table.wp-list-table span.wc-featured:before{content:"\e020"}table.wp-list-table span.wc-featured.not-featured:before{content:"\e021"}table.wp-list-table td.column-featured span.wc-featured{font-size:1.2em}table.wp-list-table span.wc-type{margin:0}table.wp-list-table span.wc-type:before{content:"\e01d"}table.wp-list-table span.product-type{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.2em}table.wp-list-table span.product-type:before{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:""}table.wp-list-table span.product-type.grouped:before{content:"\e002"}table.wp-list-table span.product-type.external:before{content:"\e034"}table.wp-list-table span.product-type.variable:before{content:"\e003"}table.wp-list-table span.product-type.downloadable:before{content:"\e001"}table.wp-list-table span.product-type.virtual:before{content:"\e000"}table.wp-list-table mark.instock{font-weight:700;color:#7ad03a;background:0 0;line-height:1}table.wp-list-table mark.outofstock{font-weight:700;color:#a44;background:0 0;line-height:1}table.wp-list-table .notes_head,table.wp-list-table .order-notes_head,table.wp-list-table .status_head{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto}table.wp-list-table .notes_head:after,table.wp-list-table .order-notes_head:after,table.wp-list-table .status_head:after{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%}table.wp-list-table .order-notes_head:after{content:"\e028"}table.wp-list-table .notes_head:after{content:"\e026"}table.wp-list-table .status_head:after{content:"\e011"}table.wp-list-table .column-order_items{width:12%}table.wp-list-table .column-order_items table.order_items{width:100%;margin:3px 0 0;padding:0;display:none}table.wp-list-table .column-order_items table.order_items td{border:0;margin:0;padding:0 0 3px}table.wp-list-table .column-order_items table.order_items td.qty{color:#999;padding-right:6px;text-align:left}table.wp-list-table .toggle-row{display:none}mark.notice{background:#fff;color:#a00;margin:0 0 0 10px}a.export_rates,a.import_rates{float:right;margin-left:9px;margin-top:-2px;margin-bottom:0}table.wc_input_table,table.wc_tax_rates{width:100%}table.wc_input_table span.tips,table.wc_tax_rates span.tips{color:#2ea2cc}table.wc_input_table td,table.wc_tax_rates td{padding:0;border-right:1px solid #DFDFDF;border-bottom:1px solid #DFDFDF;border-top:0;background:#fff}table.wc_input_table td input[type=text],table.wc_input_table td input[type=number],table.wc_tax_rates td input[type=text],table.wc_tax_rates td input[type=number]{width:100%;padding:5px 7px;margin:0;border:0;background:0 0}table.wc_input_table td.apply_to_shipping,table.wc_input_table td.compound,table.wc_tax_rates td.apply_to_shipping,table.wc_tax_rates td.compound{padding:5px 7px;vertical-align:middle}table.wc_input_table td.apply_to_shipping input,table.wc_input_table td.compound input,table.wc_tax_rates td.apply_to_shipping input,table.wc_tax_rates td.compound input{width:auto;padding:0}table.wc_input_table td:last-child,table.wc_tax_rates td:last-child{border-right:0}table.wc_input_table tr.current td,table.wc_tax_rates tr.current td{background-color:#fefbcc}table.wc_input_table .cost,table.wc_input_table .cost input,table.wc_input_table .item_cost,table.wc_input_table .item_cost input,table.wc_tax_rates .cost,table.wc_tax_rates .cost input,table.wc_tax_rates .item_cost,table.wc_tax_rates .item_cost input{text-align:right}table.wc_input_table th.sort,table.wc_tax_rates th.sort{width:17px;padding:0}table.wc_input_table td.sort,table.wc_tax_rates td.sort{padding:0 4px;cursor:move;background:#f9f9f9;text-align:center;vertical-align:middle}table.wc_input_table td.sort:before,table.wc_tax_rates td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%}table.wc_input_table td.sort:hover:before,table.wc_tax_rates td.sort:hover:before{color:#333}table.wc_input_table .button,table.wc_tax_rates .button{float:left;margin-right:5px}table.wc_input_table .export,table.wc_input_table .import,table.wc_tax_rates .export,table.wc_tax_rates .import{float:right;margin-right:0;margin-left:5px}table.wc_input_table span.tips,table.wc_tax_rates span.tips{padding:0 3px}table.wc_input_table .pagination,table.wc_tax_rates .pagination{float:right}table.wc_input_table .pagination .button,table.wc_tax_rates .pagination .button{margin-left:5px;margin-right:0}table.wc_input_table .pagination .current,table.wc_tax_rates .pagination .current{background:#bbb;text-shadow:none}table.wc_input_table tfoot th,table.wc_tax_rates tfoot th{padding-left:20px;padding-right:20px}table.wc_input_table tr:last-child td,table.wc_tax_rates tr:last-child td{border-bottom:0}table.wc_gateways,table.wc_shipping{position:relative}table.wc_gateways td,table.wc_shipping td{vertical-align:middle;padding:7px;line-height:2em}table.wc_gateways tr:nth-child(odd) td,table.wc_shipping tr:nth-child(odd) td{background:#f9f9f9}table.wc_gateways th,table.wc_shipping th{padding:9px 7px!important;vertical-align:middle}table.wc_gateways td.name,table.wc_shipping td.name{font-weight:700}table.wc_gateways .settings,table.wc_shipping .settings{text-align:right}table.wc_gateways .default,table.wc_gateways .radio,table.wc_gateways .status,table.wc_shipping .default,table.wc_shipping .radio,table.wc_shipping .status{text-align:center}table.wc_gateways .default .tips,table.wc_gateways .radio .tips,table.wc_gateways .status .tips,table.wc_shipping .default .tips,table.wc_shipping .radio .tips,table.wc_shipping .status .tips{margin:0 auto}table.wc_gateways .default input,table.wc_gateways .radio input,table.wc_gateways .status input,table.wc_shipping .default input,table.wc_shipping .radio input,table.wc_shipping .status input{margin:0}table.wc_gateways th.sort,table.wc_shipping th.sort{width:28px;padding:0}table.wc_gateways td.sort,table.wc_shipping td.sort{padding:0 7px;cursor:move;text-align:center;vertical-align:middle}table.wc_gateways td.sort:before,table.wc_shipping td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#ccc;display:block;width:17px;float:left;height:100%}img.help_tip{vertical-align:middle;margin:0 0 0 9px}.postbox img.help_tip{margin-top:-4px}.status-disabled,.status-enabled{font-size:1.4em;display:block;text-indent:-9999px;position:relative;height:1em;width:1em}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder:after,.status-enabled:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;text-indent:0;top:0;left:0;text-align:center}.status-enabled:before{line-height:1;margin:0;position:absolute;width:100%;height:100%;content:"";color:#a46497}.woocommerce .woo-nav-tab-wrapper{margin-bottom:16px!important}.woocommerce .subsubsub{margin:-8px 0 0}.woocommerce #template div{margin:0}.woocommerce #template div p .button{float:right;margin-left:10px;margin-top:-4px}.woocommerce #template div .editor textarea{margin-bottom:8px}.woocommerce textarea[disabled=disabled]{background:#DFDFDF!important}.woocommerce table.form-table{margin:0;position:relative}.woocommerce table.form-table .forminp-radio ul{margin:0}.woocommerce table.form-table .forminp-radio ul li{line-height:1.4em}.woocommerce table.form-table textarea.input-text{height:100%;min-width:150px;display:block}.woocommerce table.form-table input.regular-input{width:25em}.woocommerce table.form-table textarea.wide-input{width:100%}.woocommerce table.form-table img.help_tip{padding:0;margin:-4px 0 0 5px;vertical-align:middle;cursor:help;line-height:1}.woocommerce table.form-table span.help_tip{cursor:help;color:#2ea2cc}.woocommerce table.form-table th{position:relative;padding-right:24px}.woocommerce table.form-table .select2-container{display:block;max-width:350px;vertical-align:top;margin-bottom:3px}.woocommerce table.form-table table.widefat th{padding-right:inherit}.woocommerce table.form-table th img.help_tip{margin:0 -24px 0 0;float:right}.woocommerce table.form-table fieldset{margin-top:4px}.woocommerce table.form-table fieldset img.help_tip{margin:-3px 0 0 5px}.woocommerce table.form-table fieldset p.description{margin-bottom:8px}.woocommerce table.form-table fieldset:first-child{margin-top:0}.woocommerce table.form-table .iris-picker{z-index:100;display:none;position:absolute;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.2)}.woocommerce table.form-table .iris-picker .ui-slider{border:0!important;margin:0!important;width:auto!important;height:auto!important;background:none!important}.woocommerce table.form-table .iris-picker .ui-slider .ui-slider-handle{margin-bottom:0!important}.woocommerce table.form-table .colorpickpreview{padding:3px 3px 3px 20px;border:1px solid #ddd;border-right:0}.woocommerce table.form-table .colorpick{border-left:0}.woocommerce table.form-table .image_width_settings{vertical-align:middle}.woocommerce table.form-table .image_width_settings label{margin-left:10px}.woocommerce #tabs-wrap table a.remove{margin-left:4px}.woocommerce #tabs-wrap table p{margin:0 0 4px!important;overflow:hidden;zoom:1}.woocommerce #tabs-wrap table p a.add{float:left}#wp-excerpt-editor-container{background:#fff}#product_variation-parent #parent_id{width:100%}#postimagediv img{border:1px solid #d5d5d5;max-width:100%}#woocommerce-product-images .inside{margin:0;padding:0}#woocommerce-product-images .inside .add_product_images{padding:0 12px 12px}#woocommerce-product-images .inside #product_images_container{padding:0 0 0 9px}#woocommerce-product-images .inside #product_images_container ul{margin:0;padding:0}#woocommerce-product-images .inside #product_images_container ul:after,#woocommerce-product-images .inside #product_images_container ul:before{content:" ";display:table}#woocommerce-product-images .inside #product_images_container ul:after{clear:both}#woocommerce-product-images .inside #product_images_container ul li.add,#woocommerce-product-images .inside #product_images_container ul li.image,#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder{width:80px;float:left;cursor:move;border:1px solid #d5d5d5;margin:9px 9px 0 0;background:#f7f7f7;border-radius:2px;position:relative;box-sizing:border-box}#woocommerce-product-images .inside #product_images_container ul li.add img,#woocommerce-product-images .inside #product_images_container ul li.image img,#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder img{width:100%;height:auto;display:block}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder{border:3px dashed #ddd;position:relative}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder:after{margin:0;position:absolute;width:100%;height:100%;content:"";font-size:2.618em;line-height:72px;color:#ddd}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:before,#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;color:#fff;background-color:#000;text-align:center;left:0}#woocommerce-product-images .inside #product_images_container ul ul.actions{position:absolute;top:-8px;right:-8px;padding:2px;display:none}#woocommerce-product-images .inside #product_images_container ul ul.actions li{float:right;margin:0 0 0 2px}#woocommerce-product-images .inside #product_images_container ul ul.actions li a{width:1em;margin:0;height:0;display:block;overflow:hidden}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.tips{cursor:pointer}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.4em}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view:before{margin:0;text-indent:0;position:absolute;top:0;width:100%;height:100%;content:""}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.4em}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:before{margin:0;text-indent:0;position:absolute;top:0;width:100%;height:100%;content:"";border-radius:100%;box-shadow:0 1px 2px rgba(0,0,0,.2)}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:hover before{background-color:#a00}#woocommerce-product-images .inside #product_images_container ul li:hover ul.actions{display:block}#woocommerce-product-data .hndle{padding:10px}#woocommerce-product-data .hndle span{display:block;vertical-align:middle;line-height:24px}#woocommerce-product-data .hndle span span{display:inline;line-height:inherit;vertical-align:baseline}#woocommerce-product-data .hndle label{padding-right:1em;font-size:12px;vertical-align:baseline}#woocommerce-product-data .hndle label:first-child{margin-right:1em;border-right:1px solid #dfdfdf}#woocommerce-product-data .hndle input,#woocommerce-product-data .hndle select{margin:-3px 0 0 .5em;vertical-align:middle}#woocommerce-product-data>.handlediv{margin-top:4px}#woocommerce-product-data .wrap{margin:0}#woocommerce-coupon-description{padding:3px 8px;font-size:1.7em;line-height:1.42em;height:auto;width:100%;outline:0;margin:10px 0;display:block}#woocommerce-coupon-description::-webkit-input-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description::-moz-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description:-ms-input-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description:-moz-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-data .panel-wrap,#woocommerce-product-data .panel-wrap{background:#fff}#woocommerce-coupon-data .wc-metaboxes-wrapper,#woocommerce-coupon-data .woocommerce_options_panel,#woocommerce-product-data .wc-metaboxes-wrapper,#woocommerce-product-data .woocommerce_options_panel{float:left;width:80%}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios,#woocommerce-product-data .woocommerce_options_panel .wc-radios{display:block;float:left;margin:0}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios li,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios li,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios li,#woocommerce-product-data .woocommerce_options_panel .wc-radios li{display:block;padding:0 0 10px}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios li input,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios li input,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios li input,#woocommerce-product-data .woocommerce_options_panel .wc-radios li input{width:auto}#woocommerce-coupon-data .panel-wrap,#woocommerce-product-data .panel-wrap,.woocommerce .panel-wrap{overflow:hidden}#woocommerce-coupon-data ul.wc-tabs,#woocommerce-product-data ul.wc-tabs,.woocommerce ul.wc-tabs{margin:0;width:20%;float:left;line-height:1em;padding:0 0 10px;position:relative;background-color:#fafafa;border-right:1px solid #eee;box-sizing:border-box}#woocommerce-coupon-data ul.wc-tabs:after,#woocommerce-product-data ul.wc-tabs:after,.woocommerce ul.wc-tabs:after{content:"";display:block;width:100%;height:9999em;position:absolute;bottom:-9999em;left:0;background-color:#fafafa;border-right:1px solid #eee}#woocommerce-coupon-data ul.wc-tabs li,#woocommerce-product-data ul.wc-tabs li,.woocommerce ul.wc-tabs li{margin:0;padding:0;display:block;position:relative}#woocommerce-coupon-data ul.wc-tabs li a,#woocommerce-product-data ul.wc-tabs li a,.woocommerce ul.wc-tabs li a{margin:0;padding:10px;display:block;box-shadow:none;text-decoration:none;line-height:20px!important;border-bottom:1px solid #eee}#woocommerce-coupon-data ul.wc-tabs li a:before,#woocommerce-product-data ul.wc-tabs li a:before,.woocommerce ul.wc-tabs li a:before,.woocommerce_page_wc-settings .shippingrows .add.button:before{line-height:1;margin-right:.618em;font-weight:400;font-variant:normal;-webkit-font-smoothing:antialiased;font-family:WooCommerce;speak:none;text-transform:none;text-decoration:none}#woocommerce-coupon-data ul.wc-tabs li a:before,#woocommerce-product-data ul.wc-tabs li a:before,.woocommerce ul.wc-tabs li a:before{content:""}#woocommerce-coupon-data ul.wc-tabs li.general_options a:before,#woocommerce-product-data ul.wc-tabs li.general_options a:before,.woocommerce ul.wc-tabs li.general_options a:before{content:"\e006"}#woocommerce-coupon-data ul.wc-tabs li.inventory_options a:before,#woocommerce-product-data ul.wc-tabs li.inventory_options a:before,.woocommerce ul.wc-tabs li.inventory_options a:before{content:"\e02c"}#woocommerce-coupon-data ul.wc-tabs li.shipping_options a:before,#woocommerce-product-data ul.wc-tabs li.shipping_options a:before,.woocommerce ul.wc-tabs li.shipping_options a:before{content:"\e01a"}#woocommerce-coupon-data ul.wc-tabs li.linked_product_options a:before,#woocommerce-product-data ul.wc-tabs li.linked_product_options a:before,.woocommerce ul.wc-tabs li.linked_product_options a:before{content:"\e00d"}#woocommerce-coupon-data ul.wc-tabs li.attribute_options a:before,#woocommerce-product-data ul.wc-tabs li.attribute_options a:before,.woocommerce ul.wc-tabs li.attribute_options a:before{content:"\e02b"}#woocommerce-coupon-data ul.wc-tabs li.advanced_options a:before,#woocommerce-product-data ul.wc-tabs li.advanced_options a:before,.woocommerce ul.wc-tabs li.advanced_options a:before{content:"\e01c"}#woocommerce-coupon-data ul.wc-tabs li.variation_options a:before,#woocommerce-product-data ul.wc-tabs li.variation_options a:before,.woocommerce ul.wc-tabs li.variation_options a:before{content:"\e003"}#woocommerce-coupon-data ul.wc-tabs li.usage_restriction_options a:before,#woocommerce-product-data ul.wc-tabs li.usage_restriction_options a:before,.woocommerce ul.wc-tabs li.usage_restriction_options a:before{content:"\e602"}#woocommerce-coupon-data ul.wc-tabs li.usage_limit_options a:before,#woocommerce-product-data ul.wc-tabs li.usage_limit_options a:before,.woocommerce ul.wc-tabs li.usage_limit_options a:before{content:"\e601"}#woocommerce-coupon-data ul.wc-tabs li.general_coupon_data a:before,#woocommerce-product-data ul.wc-tabs li.general_coupon_data a:before,.woocommerce ul.wc-tabs li.general_coupon_data a:before{content:"\e600"}#woocommerce-coupon-data ul.wc-tabs li.active a,#woocommerce-product-data ul.wc-tabs li.active a,.woocommerce ul.wc-tabs li.active a{color:#555;position:relative;background-color:#eee}.woocommerce_page_wc-settings .shippingrows th.check-column{padding-top:20px}.woocommerce_page_wc-settings .shippingrows tfoot th{padding-left:10px}.woocommerce_page_wc-settings .shippingrows .add.button:before{content:""}.woocommerce_page_wc-settings h3.wc-settings-sub-title{font-size:1.2em}#woocommerce-coupon-data .inside,#woocommerce-order-data .inside,#woocommerce-order-downloads .inside,#woocommerce-product-data .inside,#woocommerce-product-type-options .inside{padding:0;margin:0}.panel,.woocommerce_options_panel{padding:9px;color:#555}.panel,.woocommerce_page_settings .woocommerce_options_panel{padding:0}#woocommerce-product-specs .inside,#woocommerce-product-type-options .panel{padding:9px;margin:0}#woocommerce-product-type-options .panel p,.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p{margin:0 0 9px;font-size:12px;padding:5px 9px;line-height:24px}#woocommerce-product-type-options .panel p:after,.woocommerce_options_panel fieldset.form-field:after,.woocommerce_options_panel p:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce_options_panel .checkbox,.woocommerce_variable_attributes .checkbox{width:auto;vertical-align:middle;margin:7px 0}.woocommerce_options_panel .downloadable_files table,.woocommerce_variations .downloadable_files table{width:100%;padding:0!important}.woocommerce_options_panel .downloadable_files table th,.woocommerce_variations .downloadable_files table th{padding:7px 0 7px 7px!important}.woocommerce_options_panel .downloadable_files table td,.woocommerce_variations .downloadable_files table td{vertical-align:middle!important;padding:4px 0 4px 7px!important;position:relative}.woocommerce_options_panel .downloadable_files table td:last-child,.woocommerce_variations .downloadable_files table td:last-child{padding-right:7px!important}.woocommerce_options_panel .downloadable_files table td input.input_text,.woocommerce_variations .downloadable_files table td input.input_text{width:100%;float:none;margin:1px 0;min-width:0}.woocommerce_options_panel .downloadable_files table td .upload_file_button,.woocommerce_variations .downloadable_files table td .upload_file_button{float:right;width:auto;cursor:pointer}.woocommerce_options_panel .downloadable_files table td .delete,.woocommerce_variations .downloadable_files table td .delete{display:block;text-indent:-9999px;position:relative;height:1em;width:1em}.woocommerce_options_panel .downloadable_files table td .delete:before,.woocommerce_variations .downloadable_files table td .delete:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";content:"\e013";color:#999}.woocommerce_options_panel .downloadable_files table td .delete:hover:before,.woocommerce_variations .downloadable_files table td .delete:hover:before{color:#a00}.woocommerce_options_panel .downloadable_files table th.sort,.woocommerce_variations .downloadable_files table th.sort{width:17px;padding:0}.woocommerce_options_panel .downloadable_files table td.sort,.woocommerce_variations .downloadable_files table td.sort{padding:0 8px;cursor:move;background:#f9f9f9;text-align:center;vertical-align:middle}.woocommerce_options_panel .downloadable_files table td.sort:before,.woocommerce_variations .downloadable_files table td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%}.woocommerce_options_panel .downloadable_files table td.sort:hover:before,.woocommerce_variations .downloadable_files table td.sort:hover:before{color:#333}.woocommerce_variation h3 .sort{cursor:move;text-align:center;float:right;height:26px;width:17px;visibility:hidden;vertical-align:middle;margin-right:.5em;color:#a0a5aa}.woocommerce_variation h3 .sort:before{content:"\e032";font-family:WooCommerce;text-align:center;cursor:move;display:block;width:17px;line-height:28px}.woocommerce_variation h3 .sort:hover{color:#777}.woocommerce_variation h3:hover .sort,.woocommerce_variation.ui-sortable-helper .sort{visibility:visible}.woocommerce_options_panel{box-sizing:border-box}.woocommerce_options_panel .downloadable_files{padding:0 9px 0 162px;position:relative;margin:9px 0}.woocommerce_options_panel .downloadable_files label{position:absolute;left:0;margin:0 0 0 12px;line-height:24px}.woocommerce_options_panel p{margin:9px 0}.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p.form-field{padding:5px 20px 5px 162px!important}.woocommerce_options_panel .sale_price_dates_fields .short:first-of-type{margin-bottom:1em}.woocommerce_options_panel .sale_price_dates_fields .short:nth-of-type(2){clear:left}.woocommerce_options_panel label,.woocommerce_options_panel legend{float:left;width:150px;padding:0;margin:0 0 0 -150px}.woocommerce_options_panel label .req,.woocommerce_options_panel legend .req{font-weight:700;font-style:normal;color:#a00}.woocommerce_options_panel .description{padding:0;margin:0 0 0 7px;clear:none;display:inline}.woocommerce_options_panel .description-block{margin-left:0;display:block}.woocommerce_options_panel input,.woocommerce_options_panel select,.woocommerce_options_panel textarea{margin:0}.woocommerce_options_panel textarea{vertical-align:top;height:3.5em;line-height:1.5em}.woocommerce_options_panel input[type=text],.woocommerce_options_panel input[type=number],.woocommerce_options_panel input[type=email]{width:50%;float:left}.woocommerce_options_panel input.button{width:auto;margin-left:8px}.woocommerce_options_panel select{float:left}.woocommerce_options_panel .short,.woocommerce_options_panel input[type=text].short,.woocommerce_options_panel input[type=number].short,.woocommerce_options_panel input[type=email].short{width:50%}.woocommerce_options_panel .sized{width:auto!important;margin-right:6px}.woocommerce_options_panel .options_group{border-top:1px solid #fff;border-bottom:1px solid #eee}.woocommerce_options_panel .options_group:first-child{border-top:0}.woocommerce_options_panel .options_group:last-child{border-bottom:0}.woocommerce_options_panel .options_group fieldset{margin:9px 0;font-size:12px;padding:5px 9px;line-height:24px}.woocommerce_options_panel .options_group fieldset label{width:auto;float:none}.woocommerce_options_panel .options_group fieldset ul{float:left;width:50%;margin:0;padding:0}.woocommerce_options_panel .options_group fieldset ul li{margin:0;width:auto}.woocommerce_options_panel .options_group fieldset ul li input{width:auto;float:none;margin-right:4px}.woocommerce_options_panel .options_group fieldset ul.wc-radios label{margin-left:0}.woocommerce_options_panel .dimensions_field .wrap{display:block;width:50%}.woocommerce_options_panel .dimensions_field .wrap input{width:30.75%;margin-right:3.8%}.woocommerce_options_panel .dimensions_field .wrap .last{margin-right:0}.woocommerce_options_panel.padded{padding:1em}#woocommerce-product-data input.dp-applied,.woocommerce_options_panel .select2-container{float:left}#grouped_product_options,#simple_product_options,#virtual_product_options{padding:12px;font-style:italic;color:#666}.wc-metaboxes-wrapper .toolbar{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #eee;padding:9px 12px!important}.wc-metaboxes-wrapper .toolbar:first-child{border-top:0}.wc-metaboxes-wrapper .toolbar:last-child{border-bottom:0}.wc-metaboxes-wrapper .toolbar .add_variation{float:right;margin-left:5px}.wc-metaboxes-wrapper .toolbar .cancel-variation-changes,.wc-metaboxes-wrapper .toolbar .save-variation-changes{float:left;margin-right:5px}.wc-metaboxes-wrapper p.toolbar{overflow:hidden;zoom:1}.wc-metaboxes-wrapper .expand-close{margin-right:2px;color:#777;font-size:12px;font-style:italic}.wc-metaboxes-wrapper .expand-close a{background:0 0;padding:0;font-size:12px;text-decoration:none}.wc-metaboxes-wrapper#product_attributes .expand-close{float:right;line-height:28px}.wc-metaboxes-wrapper .fr,.wc-metaboxes-wrapper button.add_variable_attribute{float:right;margin:0 0 0 6px}.wc-metaboxes-wrapper .wc-metaboxes{border-bottom:1px solid #eee}.wc-metaboxes-wrapper .wc-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin-bottom:9px;border-width:1px;border-style:dashed}.wc-metaboxes-wrapper .wc-metabox{background:#fff;border-bottom:1px solid #eee;margin:0!important}.wc-metaboxes-wrapper .wc-metabox select{font-weight:400}.wc-metaboxes-wrapper .wc-metabox:last-of-type{border-bottom:0}.wc-metaboxes-wrapper .wc-metabox .handlediv{width:27px}.wc-metaboxes-wrapper .wc-metabox .handlediv:before{content:"\f142"!important;cursor:pointer;display:inline-block;font:400 20px/1 Dashicons;line-height:.5!important;padding:8px 10px;position:relative;right:12px;top:0}.wc-metaboxes-wrapper .wc-metabox.closed{border-radius:3px}.wc-metaboxes-wrapper .wc-metabox.closed .handlediv:before{content:"\f140"!important}.wc-metaboxes-wrapper .wc-metabox.closed h3{border:0}.wc-metaboxes-wrapper .wc-metabox h3{margin:0!important;padding:.75em .75em .75em 1em!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}.wc-metaboxes-wrapper .wc-metabox h3 a.delete,.wc-metaboxes-wrapper .wc-metabox h3 button{float:right}.wc-metaboxes-wrapper .wc-metabox h3 a.delete{color:red;font-weight:400;line-height:26px;text-decoration:none;position:relative;visibility:hidden}.wc-metaboxes-wrapper .wc-metabox h3 strong{line-height:26px;font-weight:700}.wc-metaboxes-wrapper .wc-metabox h3 select{font-family:sans-serif;max-width:20%;margin:.25em .25em .25em 0}.wc-metaboxes-wrapper .wc-metabox h3 .handlediv{background-position:6px 5px!important;visibility:hidden;height:26px}.wc-metaboxes-wrapper .wc-metabox h3.fixed{cursor:pointer!important}.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3{cursor:pointer;padding:.5em .75em .5em 1em!important}.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 .handlediv,.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 .sort,.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 a.delete{margin-top:.25em}.wc-metaboxes-wrapper .wc-metabox h3:hover .handlediv,.wc-metaboxes-wrapper .wc-metabox h3:hover a.delete,.wc-metaboxes-wrapper .wc-metabox.ui-sortable-helper .handlediv,.wc-metaboxes-wrapper .wc-metabox.ui-sortable-helper a.delete{visibility:visible}.wc-metaboxes-wrapper .wc-metabox table{width:100%;position:relative;background-color:#fdfdfd;padding:1em;border-top:1px solid #eee}.wc-metaboxes-wrapper .wc-metabox table td{text-align:left;padding:0 6px 1em 0;vertical-align:top;border:0}.wc-metaboxes-wrapper .wc-metabox table td label{text-align:left;display:block;line-height:21px}.wc-metaboxes-wrapper .wc-metabox table td input{float:left;min-width:200px}.wc-metaboxes-wrapper .wc-metabox table td input,.wc-metaboxes-wrapper .wc-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}.wc-metaboxes-wrapper .wc-metabox table td .select2-container,.wc-metaboxes-wrapper .wc-metabox table td select{width:100%!important}.wc-metaboxes-wrapper .wc-metabox table td input.short{width:200px}.wc-metaboxes-wrapper .wc-metabox table td input.checkbox{width:16px;min-width:inherit;vertical-align:text-bottom;display:inline-block;float:none}.wc-metaboxes-wrapper .wc-metabox table td.attribute_name{width:200px}.wc-metaboxes-wrapper .wc-metabox table .minus,.wc-metaboxes-wrapper .wc-metabox table .plus{margin-top:6px}.wc-metaboxes-wrapper .wc-metabox table .fl{float:left}.wc-metaboxes-wrapper .wc-metabox table .fr{float:right}.variations-pagenav{float:right;line-height:24px}.variations-pagenav .displaying-num{color:#777;font-size:12px;font-style:italic}.variations-pagenav a{padding:0 10px 3px;background:rgba(0,0,0,.05);font-size:16px;font-weight:400;text-decoration:none}.variations-pagenav a.disabled,.variations-pagenav a.disabled:active,.variations-pagenav a.disabled:focus,.variations-pagenav a.disabled:hover{color:#A0A5AA;background:rgba(0,0,0,.05)}.variations-defaults{float:left}.variations-defaults select{margin:.25em .25em .25em 0}.woocommerce_variable_attributes{background-color:#fdfdfd;border-top:1px solid #eee}.woocommerce_variable_attributes .data{padding:1em 2em}.woocommerce_variable_attributes .data:after,.woocommerce_variable_attributes .data:before{content:" ";display:table}.woocommerce_variable_attributes .data:after{clear:both}.woocommerce_variable_attributes .upload_image_button{display:block;width:48px;height:48px;float:left;margin-right:20px;position:relative;cursor:pointer}.woocommerce_variable_attributes .upload_image_button img{width:100%;height:auto;display:none}.woocommerce_variable_attributes .upload_image_button:before{content:"\f128";font-family:Dashicons;position:absolute;top:0;left:0;right:0;bottom:0;text-align:center;line-height:48px;font-size:48px;font-weight:400;-webkit-font-smoothing:antialiased}.woocommerce_variable_attributes .upload_image_button.remove img{display:block}.woocommerce_variable_attributes .upload_image_button.remove:before{content:"\f335";display:none}.woocommerce_variable_attributes .upload_image_button.remove:hover:before{display:block}.woocommerce_variable_attributes .options{border:1px solid #eee;border-width:1px 0;padding:.25em 0}.woocommerce_variable_attributes .options label{display:inline-block;padding:4px 1em 2px 0}.woocommerce_variable_attributes .options input[type=checkbox]{margin-top:5px;margin-right:3px}.form-row label{display:block}.form-row input[type=number],.form-row input[type=text],.form-row select{width:100%}.form-row.dimensions_field input{width:25%;float:left;margin-right:1%}.form-row.dimensions_field input:last-of-type{margin-right:0}.form-row-first,.form-row-last{width:48%;float:right}.form-row-first{clear:both;float:left}.form-row-full{clear:both}.tips{cursor:help;text-decoration:none}img.tips{padding:5px 0 0}#tiptip_holder{display:none;position:absolute;top:0;left:0;z-index:9999999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-7px;margin-left:-6px;border-top-color:#333}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-5px;margin-left:-6px;border-bottom-color:#333}#tiptip_holder.tip_right{padding-left:5px}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;margin-left:-5px;border-right-color:#333}#tiptip_holder.tip_left{padding-right:5px}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;margin-left:-7px;border-left-color:#333}#tiptip_content,.chart-tooltip,.wc_error_tip{color:#fff;font-size:.8em;max-width:150px;background:#333;text-align:center;border-radius:3px;padding:.618em 1em;box-shadow:0 1px 3px rgba(0,0,0,.2)}#tiptip_content code,.chart-tooltip code,.wc_error_tip code{padding:1px;background:#888}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}.wc_error_tip{max-width:20em;line-height:1.8em;position:absolute;white-space:normal;background:#d82223;margin:1.5em 1px 0 -1em;z-index:9999999}.wc_error_tip:after{content:"";display:block;border:8px solid #d82223;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-3px;left:50%;margin:-1em 0 0 -3px}img.ui-datepicker-trigger{vertical-align:middle;margin-top:-1px;cursor:pointer}.wc-metabox-content img.ui-datepicker-trigger,.woocommerce_options_panel img.ui-datepicker-trigger{float:left;margin-right:8px;margin-top:4px;margin-left:4px}#ui-datepicker-div{display:none}.woocommerce-reports-wide.woocommerce-reports-wrap,.woocommerce-reports-wrap.woocommerce-reports-wrap{margin-left:300px;padding-top:18px}.woocommerce-reports-wide.halved,.woocommerce-reports-wrap.halved{margin:0;overflow:hidden;zoom:1}.woocommerce-reports-wide .widefat td,.woocommerce-reports-wrap .widefat td{vertical-align:top;padding:7px}.woocommerce-reports-wide .widefat td .description,.woocommerce-reports-wrap .widefat td .description{margin:4px 0 0}.woocommerce-reports-wide .postbox:after,.woocommerce-reports-wrap .postbox:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce-reports-wide .postbox h3,.woocommerce-reports-wrap .postbox h3{cursor:default!important}.woocommerce-reports-wide .postbox .inside,.woocommerce-reports-wrap .postbox .inside{padding:10px;margin:0!important}.woocommerce-reports-wide .postbox h3.stats_range,.woocommerce-reports-wrap .postbox h3.stats_range{border-bottom-color:#dfdfdf;margin:0;padding:0!important}.woocommerce-reports-wide .postbox h3.stats_range .export_csv,.woocommerce-reports-wrap .postbox h3.stats_range .export_csv{float:right;line-height:26px;border-left:1px solid #dfdfdf;padding:10px;display:block;text-decoration:none}.woocommerce-reports-wide .postbox h3.stats_range .export_csv:before,.woocommerce-reports-wrap .postbox h3.stats_range .export_csv:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;content:"";text-decoration:none;margin-right:4px}.woocommerce-reports-wide .postbox h3.stats_range ul,.woocommerce-reports-wrap .postbox h3.stats_range ul{list-style:none;margin:0;padding:0;zoom:1;background:#f5f5f5}.woocommerce-reports-wide .postbox h3.stats_range ul:after,.woocommerce-reports-wide .postbox h3.stats_range ul:before,.woocommerce-reports-wrap .postbox h3.stats_range ul:after,.woocommerce-reports-wrap .postbox h3.stats_range ul:before{content:" ";display:table}.woocommerce-reports-wide .postbox h3.stats_range ul:after,.woocommerce-reports-wrap .postbox h3.stats_range ul:after{clear:both}.woocommerce-reports-wide .postbox h3.stats_range ul li,.woocommerce-reports-wrap .postbox h3.stats_range ul li{float:left;margin:0;padding:0;line-height:26px}.woocommerce-reports-wide .postbox h3.stats_range ul li a,.woocommerce-reports-wrap .postbox h3.stats_range ul li a{border-right:1px solid #dfdfdf;padding:10px;display:block;text-decoration:none}.woocommerce-reports-wide .postbox h3.stats_range ul li.active,.woocommerce-reports-wrap .postbox h3.stats_range ul li.active{background:#fff;-webkit-box-shadow:0 4px 0 0 #fff;box-shadow:0 4px 0 0 #fff}.woocommerce-reports-wide .postbox h3.stats_range ul li.active a,.woocommerce-reports-wrap .postbox h3.stats_range ul li.active a{color:#777}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom{padding:9px 10px;vertical-align:middle}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom div,.woocommerce-reports-wide .postbox h3.stats_range ul li.custom form,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom div,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom form{display:inline;margin:0}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom div input.range_datepicker,.woocommerce-reports-wide .postbox h3.stats_range ul li.custom form input.range_datepicker,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom div input.range_datepicker,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom form input.range_datepicker{padding:0;margin:0 10px 0 0;background:0 0;border:0;color:#777;text-align:center;-webkit-box-shadow:none;box-shadow:none}.woocommerce-reports-wide .postbox .chart-with-sidebar,.woocommerce-reports-wrap .postbox .chart-with-sidebar{padding:12px 12px 12px 249px;margin:0!important}.woocommerce-reports-wide .postbox .chart-with-sidebar .chart-sidebar,.woocommerce-reports-wrap .postbox .chart-with-sidebar .chart-sidebar{width:225px;margin-left:-237px;float:left}.woocommerce-reports-wide .postbox .chart-widgets,.woocommerce-reports-wrap .postbox .chart-widgets{margin:0;padding:0}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget{margin:0 0 1em;background:#fafafa;border:1px solid #dfdfdf}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget h4,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget h4{background:#fff;border:1px solid #dfdfdf;border-left-width:0;border-right-width:0;padding:10px;margin:0;color:#2ea2cc;border-top-width:0;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.count,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table tr.active td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.count,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table tr.active td{background:#f5f5f5}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget h4.section_title:hover,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget h4.section_title:hover{color:#a00}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title{cursor:pointer}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title span,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title span{display:block}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title span:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title span:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;float:right;font-size:.9em;line-height:1.618}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title.open,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title.open{color:#333}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title.open span:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title.open span:after{display:none}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section{border-bottom:1px solid #dfdfdf}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section .select2-container,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section .select2-container{width:100%!important}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section:last-of-type,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section:last-of-type{border-radius:0 0 3px 3px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table{width:100%}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td{padding:7px 10px;vertical-align:top;border-top:1px solid #e5e5e5;line-height:1.4em}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.sparkline,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.sparkline,form.report_filters div,form.report_filters input,form.report_filters label,form.report_filters p{vertical-align:middle}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table tr:first-child td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table tr:first-child td{border-top:0}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.name,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.name{max-width:175px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.name a,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.name a{word-wrap:break-word}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table .wc_sparkline,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table .wc_sparkline{width:32px;height:1em;display:block;float:right}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget form,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget p,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget form,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget p{margin:0;padding:10px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget form .submit,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget p .submit,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget form .submit,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget p .submit{margin-top:10px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget #product_ids,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget #product_ids{width:100%}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .select_all,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .select_none,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .select_all,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .select_none{float:right;color:#999;margin-left:4px;margin-top:10px}.woocommerce-reports-wide .postbox .chart-legend,.woocommerce-reports-wrap .postbox .chart-legend{list-style:none;margin:0 0 1em;padding:0;border:1px solid #dfdfdf;border-right-width:0;border-bottom-width:0;background:#fff}.woocommerce-reports-wide .postbox .chart-legend li,.woocommerce-reports-wrap .postbox .chart-legend li{border-right:5px solid #aaa;color:#aaa;padding:1em;display:block;margin:0;-webkit-transition:all ease .5s;box-shadow:inset 0 -1px 0 0 #dfdfdf}.woocommerce-reports-wide .postbox .chart-legend li strong,.woocommerce-reports-wrap .postbox .chart-legend li strong{font-size:1.618em;line-height:1.2em;color:#464646;font-weight:400;display:block;font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif}.woocommerce-reports-wide .postbox .chart-legend li strong del,.woocommerce-reports-wrap .postbox .chart-legend li strong del{color:#e74c3c;font-weight:400}.woocommerce-reports-wide .postbox .chart-legend li:hover,.woocommerce-reports-wrap .postbox .chart-legend li:hover{box-shadow:inset 0 -1px 0 0 #dfdfdf,inset 300px 0 0 rgba(156,93,144,.1);border-right:5px solid #9c5d90!important;padding-left:1.5em;color:#9c5d90}.woocommerce-reports-wide .postbox .pie-chart-legend,.woocommerce-reports-wrap .postbox .pie-chart-legend{margin:12px 0 0;overflow:hidden}.woocommerce-reports-wide .postbox .pie-chart-legend li,.woocommerce-reports-wrap .postbox .pie-chart-legend li{float:left;margin:0;padding:6px 0 0;border-top:4px solid #999;text-align:center;box-sizing:border-box;width:50%}.woocommerce-reports-wide .postbox .stat,.woocommerce-reports-wrap .postbox .stat{font-size:1.5em!important;font-weight:700;text-align:center}.woocommerce-reports-wide .postbox .chart-placeholder,.woocommerce-reports-wrap .postbox .chart-placeholder{width:100%;height:650px;overflow:hidden;position:relative}.woocommerce-reports-wide .postbox .chart-prompt,.woocommerce-reports-wrap .postbox .chart-prompt{line-height:650px;margin:0;color:#999;font-size:1.2em;font-style:italic;text-align:center}.woocommerce-reports-wide .postbox .chart-container,.woocommerce-reports-wrap .postbox .chart-container{background:#fff;padding:12px;position:relative;border:1px solid #dfdfdf;border-radius:3px}.woocommerce-reports-wide .postbox .main .chart-legend,.woocommerce-reports-wrap .postbox .main .chart-legend{margin-top:12px}.woocommerce-reports-wide .postbox .main .chart-legend li,.woocommerce-reports-wrap .postbox .main .chart-legend li{border-right:0;margin:0 8px 0 0;float:left;border-top:4px solid #aaa}.woocommerce-reports-wide .woocommerce-reports-main,.woocommerce-reports-wrap .woocommerce-reports-main{float:left;min-width:100%}.woocommerce-reports-wide .woocommerce-reports-main table td,.woocommerce-reports-wrap .woocommerce-reports-main table td{padding:9px}.woocommerce-reports-wide .woocommerce-reports-sidebar,.woocommerce-reports-wrap .woocommerce-reports-sidebar{display:inline;width:281px;margin-left:-300px;clear:both;float:left}.woocommerce-reports-wide .woocommerce-reports-left,.woocommerce-reports-wrap .woocommerce-reports-left{width:49.5%;float:left}.woocommerce-reports-wide .woocommerce-reports-right,.woocommerce-reports-wrap .woocommerce-reports-right{width:49.5%;float:right}.woocommerce-reports-wide .column-wc_actions a.edit,.woocommerce-reports-wide .column-wc_actions a.view,.woocommerce-reports-wrap .column-wc_actions a.edit,.woocommerce-reports-wrap .column-wc_actions a.view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.woocommerce-reports-wide .column-wc_actions a.edit:after,.woocommerce-reports-wide .column-wc_actions a.view:after,.woocommerce-reports-wrap .column-wc_actions a.edit:after,.woocommerce-reports-wrap .column-wc_actions a.view:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85}.woocommerce-reports-wide .column-wc_actions a.edit:after,.woocommerce-reports-wrap .column-wc_actions a.edit:after{content:"\e01c"}.woocommerce-reports-wide .column-wc_actions a.view:after,.woocommerce-reports-wrap .column-wc_actions a.view:after{content:"\e010"}.woocommerce-wide-reports-wrap{padding-bottom:11px}.woocommerce-wide-reports-wrap .widefat .export-data{float:right}.woocommerce-wide-reports-wrap .widefat td,.woocommerce-wide-reports-wrap .widefat th{vertical-align:middle;padding:7px}.chart-tooltip{position:absolute;display:none;line-height:1}table.bar_chart{width:100%}table.bar_chart thead th{text-align:left;color:#ccc;padding:6px 0}table.bar_chart tbody th{padding:6px 0;width:25%;text-align:left!important;font-weight:400!important;border-bottom:1px solid #fee}table.bar_chart tbody td{text-align:right;line-height:24px;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td span{color:#8a4b75;display:block}table.bar_chart tbody td span.alt{color:#47a03e;margin-top:6px}table.bar_chart tbody td.bars{position:relative;text-align:left;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td.bars a,table.bar_chart tbody td.bars span{text-decoration:none;clear:both;background:#8a4b75;float:left;display:block;line-height:24px;height:24px;-moz-border-radius:3px;-webkit-border-radius:3px;-o-border-radius:3px;-khtml-border-radius:3px;border-radius:3px}table.bar_chart tbody td.bars span.alt{clear:both;background:#47a03e}table.bar_chart tbody td.bars span.alt span{margin:0;color:#c5dec2!important;text-shadow:0 1px 0 #47a03e;background:0 0}@media only screen and (max-width:1280px){#order_data .order_data_column{width:48%}#order_data .order_data_column:first-child{width:100%}.woocommerce_options_panel .description{display:block;clear:both;margin-left:0}.woocommerce_options_panel .dimensions_field .wrap,.woocommerce_options_panel .short,.woocommerce_options_panel input[type=email].short,.woocommerce_options_panel input[type=number].short,.woocommerce_options_panel input[type=text].short{width:80%}.woocommerce_options_panel .downloadable_files,.woocommerce_variations .downloadable_files{padding:0;clear:both}.woocommerce_options_panel .downloadable_files label,.woocommerce_variations .downloadable_files label{position:static}.woocommerce_options_panel .downloadable_files table,.woocommerce_variations .downloadable_files table{margin:0 12px 24px;width:94%}.woocommerce_options_panel .downloadable_files table .sort,.woocommerce_variations .downloadable_files table .sort{visibility:hidden}.woocommerce_options_panel .woocommerce_variable_attributes .downloadable_files table,.woocommerce_variations .woocommerce_variable_attributes .downloadable_files table{margin:0 0 1em;width:100%}}@media only screen and (max-width:900px){#woocommerce-coupon-data ul.coupon_data_tabs,#woocommerce-product-data .wc-tabs-back,#woocommerce-product-data ul.product_data_tabs{width:10%}#woocommerce-coupon-data .wc-metaboxes-wrapper,#woocommerce-coupon-data .woocommerce_options_panel,#woocommerce-product-data .wc-metaboxes-wrapper,#woocommerce-product-data .woocommerce_options_panel{width:90%}#woocommerce-coupon-data ul.coupon_data_tabs li a,#woocommerce-product-data ul.product_data_tabs li a{position:relative;text-indent:-999px;padding:10px}#woocommerce-coupon-data ul.coupon_data_tabs li a:before,#woocommerce-product-data ul.product_data_tabs li a:before{position:absolute;top:0;right:0;bottom:0;left:0;text-indent:0;text-align:center;line-height:40px;width:100%;height:40px}}@media only screen and (max-width:782px){#wp-excerpt-media-buttons a{font-size:16px;line-height:37px;height:39px;padding:0 20px 0 15px}#wp-excerpt-editor-tools{padding-top:20px;padding-right:15px;overflow:hidden;margin-bottom:-1px}.post-type-product .wp-list-table .is-expanded td:not(.hidden),.post-type-shop_order .wp-list-table .is-expanded td:not(.hidden){overflow:visible}#woocommerce-product-data .checkbox{width:25px}.variations-pagenav{float:none;text-align:center;font-size:18px}.variations-pagenav .displaying-num{font-size:16px}.variations-pagenav a{padding:8px 20px 11px;font-size:18px}.variations-pagenav select{padding:0 20px}.variations-defaults{float:none;text-align:center;margin-top:10px}.post-type-product .wp-list-table .column-thumb{display:none;text-align:left;padding-bottom:0}.post-type-product .wp-list-table .column-thumb:before{display:none!important}.post-type-product .wp-list-table .column-thumb img{max-width:32px}.post-type-product .wp-list-table .toggle-row{top:-28px}.post-type-shop_order .wp-list-table .column-order_status{display:none;text-align:left;padding-bottom:0}.post-type-shop_order .wp-list-table .column-order_status mark{margin:0}.post-type-shop_order .wp-list-table .column-order_status:before{display:none!important}.post-type-shop_order .wp-list-table .column-customer_message,.post-type-shop_order .wp-list-table .column-order_notes{text-align:inherit}.post-type-shop_order .wp-list-table .column-order_notes .note-on{font-size:1.3em;margin:0}.post-type-shop_order .wp-list-table .toggle-row{top:-15px}}@media only screen and (max-width:500px){.woocommerce_options_panel label,.woocommerce_options_panel legend{float:none;width:auto;display:block;margin:0}.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p.form-field{padding:5px 20px!important}}.wc-backbone-modal *{box-sizing:border-box}.wc-backbone-modal .wc-backbone-modal-content{position:fixed;top:50%;left:50%;width:500px;background:#fff;z-index:100000}.wc-backbone-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:99900}.wc-backbone-modal-main{padding-bottom:51px}.wc-backbone-modal-main article,.wc-backbone-modal-main header{display:block;position:relative}.wc-backbone-modal-main .wc-backbone-modal-header{height:50px;background:#fcfcfc;padding:0 50px 0 16px;border-bottom:1px solid #ddd}.wc-backbone-modal-main .wc-backbone-modal-header h1{margin:0;font-size:18px;font-weight:700;line-height:50px}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link{cursor:pointer;color:#777;height:50px;width:50px;padding:0;position:absolute;top:0;right:0;text-align:center;border:0;border-left:1px solid #ddd;background-color:transparent;-webkit-transition:color .1s ease-in-out,background .1s ease-in-out;transition:color .1s ease-in-out,background .1s ease-in-out}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:before{font:400 22px/50px dashicons!important;color:#666;display:block;content:'\f335';font-weight:300}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:focus,.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:hover{background:#ddd;border-color:#ccc;color:#000}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:focus{outline:0}.wc-backbone-modal-main article{padding:10px 16px}.wc-backbone-modal-main article .pagination{padding:10px 0 0;text-align:center}.wc-backbone-modal-main footer{position:absolute;left:0;right:0;bottom:0;z-index:100;padding:10px 16px;background:#fcfcfc;border-top:1px solid #dfdfdf;box-shadow:0 -4px 4px -4px rgba(0,0,0,.1)}.wc-backbone-modal-main footer .inner{float:right;line-height:23px}.wc-backbone-modal-main footer .inner .button{margin-bottom:0}.select2-drop{z-index:999999!important}.select2-container-multi .select2-choices .select2-search-field input{font-family:inherit;font-size:inherit;font-weight:inherit;padding:3px 5px}.select2-container{line-height:1.85em;font-size:14px} \ No newline at end of file +@charset "UTF-8";@-webkit-keyframes spin{100%{-webkit-transform:rotate(360deg)}}@-moz-keyframes spin{100%{-moz-transform:rotate(360deg)}}@keyframes spin{100%{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}.woocommerce-checkout .form-row .chosen-container{width:100%!important}.woocommerce-checkout .form-row .chosen-container-single .chosen-single{height:28px;line-height:29px}.woocommerce-checkout .form-row .chosen-container-single .chosen-single div b{background:url(../images/chosen-sprite.png) 0 3px no-repeat!important}.woocommerce-checkout .form-row .chosen-container-active .chosen-single-with-drop div b{background-position:-18px 4px!important}.woocommerce-checkout .form-row .chosen-container-single .chosen-search input{line-height:13px;width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce-checkout .form-row .chosen-container .chosen-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:144dpi){.woocommerce-checkout .form-row .chosen-container-single .chosen-single div b{background-image:url(../images/chosen-sprite@2x.png)!important;background-position:0 5px!important;background-repeat:no-repeat!important;background-size:52px 37px!important}.woocommerce-checkout .form-row .chosen-container-active .chosen-single-with-drop div b{background-position:-18px 5px!important}}.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;zoom:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:26px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background:-webkit-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-moz-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-o-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:26px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url(../images/chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover,.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url(../images/chosen-sprite.png) 0 2px no-repeat}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:url(../images/chosen-sprite.png) 100% -20px no-repeat #fff;background:url(../images/chosen-sprite.png) 100% -20px no-repeat,-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url(../images/chosen-sprite.png) 100% -20px no-repeat,-webkit-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) 100% -20px no-repeat,-moz-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) 100% -20px no-repeat,-o-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) 100% -20px no-repeat,linear-gradient(#eee 1%,#fff 15%);font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(#eee 1%,#fff 15%);background-image:-moz-linear-gradient(#eee 1%,#fff 15%);background-image:-o-linear-gradient(#eee 1%,#fff 15%);background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:5px;height:15px;outline:0;border:0!important;background:0 0!important;box-shadow:none;color:#666;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-field .default{color:#999}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 0 3px 5px;padding:3px 20px 3px 5px;border:1px solid #aaa;border-radius:3px;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url(../images/chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(#eee 20%,#fff 80%);background-image:-moz-linear-gradient(#eee 20%,#fff 80%);background-image:-o-linear-gradient(#eee 20%,#fff 80%);background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#111!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close,.chosen-disabled .chosen-single{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl .chosen-drop,.chosen-rtl.chosen-container-single-nosearch .chosen-search{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;background:url(../images/chosen-sprite.png) -30px -20px no-repeat #fff;background:url(../images/chosen-sprite.png) -30px -20px no-repeat,-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url(../images/chosen-sprite.png) -30px -20px no-repeat,-webkit-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) -30px -20px no-repeat,-moz-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) -30px -20px no-repeat,-o-linear-gradient(#eee 1%,#fff 15%);background:url(../images/chosen-sprite.png) -30px -20px no-repeat,linear-gradient(#eee 1%,#fff 15%);direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:144dpi){.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-rtl .chosen-search input[type=text]{background-image:url(../images/chosen-sprite@2x.png)!important;background-size:52px 37px!important;background-repeat:no-repeat!important}}.select2-container{margin:0;position:relative;display:block!important;zoom:1;vertical-align:middle}.select2-container,.select2-drop,.select2-search,.select2-search input{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.select2-container .select2-choice{display:block;padding:0 0 0 8px;overflow:hidden;position:relative;border:1px solid #ccc;white-space:nowrap;color:#444;text-decoration:none;border-radius:3px;background-clip:padding-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;font-weight:400}html[dir=rtl] .select2-container .select2-choice{padding:0 8px 0 0}.select2-container.select2-drop-above .select2-choice{border-bottom-color:#ccc;border-radius:0 0 4px 4px}.select2-container.select2-allowclear .select2-choice .select2-chosen{margin-right:42px}.select2-container .select2-choice>.select2-chosen{margin-right:26px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;float:none;width:auto}html[dir=rtl] .select2-container .select2-choice>.select2-chosen{margin-left:26px;margin-right:0}.select2-container .select2-choice abbr{display:none;width:12px;height:12px;position:absolute;right:24px;top:5px;font-size:1px;text-decoration:none;border:0;background:url(../images/select2.png) right top no-repeat;cursor:pointer;outline:0}.select2-container.select2-allowclear .select2-choice abbr{display:inline-block}.select2-container .select2-choice abbr:hover{background-position:right -11px;cursor:pointer}.select2-drop-mask{border:0;margin:0;padding:0;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:9998;background-color:#fff;filter:alpha(opacity=0)}.select2-drop{width:100%;margin-top:-1px;position:absolute;top:100%;background:#fff;color:#000;border:1px solid #ccc;border-top:0;border-radius:0 0 3px 3px}.select2-drop.select2-drop-above{margin-top:1px;border-top:1px solid #ccc;border-bottom:0;border-radius:3px 3px 0 0}.select2-drop-active{border:1px solid #666;border-top:none}.select2-drop.select2-drop-above.select2-drop-active{border-top:1px solid #666}.select2-drop-auto-width{border-top:1px solid #ccc;width:auto}.select2-drop-auto-width .select2-search{padding-top:4px}.select2-container .select2-choice .select2-arrow{display:inline-block;width:18px;height:100%;position:absolute;right:0;top:0;border-radius:0 3px 3px 0;background-clip:padding-box}html[dir=rtl] .select2-container .select2-choice .select2-arrow{left:0;right:auto;border-radius:3px 0 0 3px}.select2-container .select2-choice .select2-arrow b{display:block;width:100%;height:100%;position:relative}.select2-container .select2-choice .select2-arrow b:after{position:absolute;display:block;content:"";top:50%;left:50%;border:4px solid transparent;border-top-color:#666;margin-left:-7px;margin-top:-2px}.select2-search{display:inline-block;width:100%;margin:0;padding-left:4px;padding-right:4px;position:relative;z-index:10000;white-space:nowrap;padding-bottom:4px}.select2-search input{width:100%;height:auto!important;padding:4px 20px 4px 5px!important;margin:0;outline:0;font-family:sans-serif;font-size:1em;border:1px solid #ccc;-webkit-box-shadow:none;box-shadow:none;background:url(../images/select2.png) 100% -22px no-repeat #fff}html[dir=rtl] .select2-search input{padding:4px 5px 4px 20px;background:url(../images/select2.png) -37px -22px no-repeat #fff}.select2-drop.select2-drop-above .select2-search input{margin-top:4px}.select2-search input.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #fff}.select2-container-active .select2-choice,.select2-container-active .select2-choices{border:1px solid #666;outline:0}.select2-dropdown-open .select2-choice{border-bottom-color:transparent;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-dropdown-open .select2-choice .select2-arrow b:after{border-top-color:transparent;border-bottom-color:#666;margin-top:-6px}.select2-dropdown-open.select2-drop-above .select2-choice,.select2-dropdown-open.select2-drop-above .select2-choices{border:1px solid #666;border-top-color:transparent}.select2-dropdown-open .select2-choice .select2-arrow{background:0 0;border-left:none;filter:none}html[dir=rtl] .select2-dropdown-open .select2-choice .select2-arrow{border-right:none}.select2-dropdown-open .select2-choice .select2-arrow b{background-position:-18px 1px}html[dir=rtl] .select2-dropdown-open .select2-choice .select2-arrow b{background-position:-16px 1px}.select2-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.select2-results{max-height:200px;padding:4px;margin:0;position:relative;overflow-x:hidden;overflow-y:auto;-webkit-tap-highlight-color:transparent;background:#fafafa}html[dir=rtl] .select2-results{padding:0 4px 0 0;margin:4px 0 4px 4px}.select2-results ul.select2-result-sub{margin:0;padding-left:0}.select2-results li{list-style:none;display:list-item;background-image:none;margin:3px 0}.select2-results li.select2-result-with-children>.select2-result-label{font-weight:700}.select2-results .select2-result-label{padding:5px 7px;margin:0;cursor:pointer;min-height:1em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.select2-results-dept-1 .select2-result-label{padding-left:20px}.select2-results-dept-2 .select2-result-label{padding-left:40px}.select2-results-dept-3 .select2-result-label{padding-left:60px}.select2-results-dept-4 .select2-result-label{padding-left:80px}.select2-results-dept-5 .select2-result-label{padding-left:100px}.select2-results-dept-6 .select2-result-label{padding-left:110px}.select2-results-dept-7 .select2-result-label{padding-left:120px}.select2-results .select2-highlighted{background:#f1f1f1;color:#000;border-radius:3px}.select2-results li em{background:#feffde;font-style:normal}.select2-results .select2-highlighted em{background:0 0}.select2-results .select2-highlighted ul{background:#fff;color:#000}.select2-results .select2-ajax-error,.select2-results .select2-no-results,.select2-results .select2-searching,.select2-results .select2-selection-limit{background:#f4f4f4;display:list-item;padding-left:5px}.select2-results .select2-disabled.select2-highlighted{color:#666;background:#f4f4f4;display:list-item;cursor:default}.select2-results .select2-disabled{background:#f4f4f4;display:list-item;cursor:default}.select2-results .select2-selected{display:none}.select2-more-results.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #f4f4f4}.select2-results .select2-ajax-error{background:rgba(255,50,50,.2)}.select2-more-results{background:#f4f4f4;display:list-item}.select2-container.select2-container-disabled .select2-choice{background-color:#f4f4f4;background-image:none;border:1px solid #ddd;cursor:default}.select2-container.select2-container-disabled .select2-choice .select2-arrow{background-color:#f4f4f4;background-image:none;border-left:0}.select2-container.select2-container-disabled .select2-choice abbr{display:none}.select2-container-multi .select2-choices{height:auto!important;height:1%;margin:0;padding:0 5px 0 0;position:relative;border:1px solid #ccc;cursor:text;overflow:hidden;background-color:#fff;min-height:26px}html[dir=rtl] .select2-container-multi .select2-choices{padding:0 0 0 5px}.select2-locked{padding:3px 5px!important}.select2-container-multi.select2-container-active .select2-choices{border:1px solid #666;outline:0}.select2-container-multi .select2-choices li{float:left;list-style:none}html[dir=rtl] .select2-container-multi .select2-choices li{float:right}.select2-container-multi .select2-choices .select2-search-field{margin:0;padding:0;white-space:nowrap}.select2-container-multi .select2-choices .select2-search-field input{margin:1px 0;outline:0;border:0;-webkit-box-shadow:none;box-shadow:none;background:0 0!important}.select2-container-multi .select2-choices .select2-search-field input.select2-active{background:url(../images/select2-spinner.gif) 100% no-repeat #fff!important}.select2-default{color:#999!important}.select2-container-multi .select2-choices .select2-search-choice{padding:5px 8px 5px 24px;margin:3px 0 3px 5px;position:relative;line-height:15px;color:#333;cursor:default;border-radius:2px;background-clip:padding-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#e4e4e4}html[dir=rtl] .select2-container-multi .select2-choices .select2-search-choice{margin:3px 5px 3px 0;padding:5px 24px 5px 8px}.select2-container-multi .select2-choices .select2-search-choice .select2-chosen{cursor:default}.select2-container-multi .select2-choices .select2-search-choice-focus{background:#d4d4d4}.select2-search-choice-close{display:block;width:12px;height:13px;position:absolute;right:7px;top:6px;font-size:1px;outline:0;background:url(../images/select2.png) right top no-repeat}html[dir=rtl] .select2-search-choice-close{right:auto;left:7px}.select2-container-multi .select2-search-choice-close{left:7px}html[dir=rtl] .select2-container-multi .select2-search-choice-close{left:auto;right:7px}.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover,.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close{background-position:right -11px}.select2-container-multi.select2-container-disabled .select2-choices{background-color:#f4f4f4;background-image:none;border:1px solid #ddd;cursor:default}.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice{padding:3px 5px;border:1px solid #ddd;background-image:none;background-color:#f4f4f4}.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close{display:none;background:0 0}.select2-result-selectable .select2-match,.select2-result-unselectable .select2-match{text-decoration:underline}.select2-offscreen,.select2-offscreen:focus{clip:rect(0 0 0 0)!important;width:1px!important;height:1px!important;border:0!important;margin:0!important;padding:0!important;overflow:hidden!important;position:absolute!important;outline:0!important;left:0!important;top:0!important}.select2-display-none{display:none}.select2-measure-scrollbar{position:absolute;top:-10000px;left:-10000px;width:100px;height:100px;overflow:scroll}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:2dppx){.select2-search input{background-image:url(../images/select2x2.png)!important;background-repeat:no-repeat!important;background-size:60px 40px!important;background-position:100% -21px!important}}@font-face{font-family:star;src:url(../fonts/star.eot);src:url(../fonts/star.eot?#iefix) format("embedded-opentype"),url(../fonts/star.woff) format("woff"),url(../fonts/star.ttf) format("truetype"),url(../fonts/star.svg#star) format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url(../fonts/WooCommerce.eot);src:url(../fonts/WooCommerce.eot?#iefix) format("embedded-opentype"),url(../fonts/WooCommerce.woff) format("woff"),url(../fonts/WooCommerce.ttf) format("truetype"),url(../fonts/WooCommerce.svg#WooCommerce) format("svg");font-weight:400;font-style:normal}.blockUI.blockOverlay:before{height:1em;width:1em;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;display:block;content:"";-webkit-animation:spin 1s ease-in-out infinite;-moz-animation:spin 1s ease-in-out infinite;animation:spin 1s ease-in-out infinite;background:url(../images/icons/loader.svg) center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.wc_addons_wrap .products{overflow:hidden}.wc_addons_wrap .products li{float:left;margin:0 1em 1em 0!important;padding:0;vertical-align:top;width:300px}.wc_addons_wrap .products li a{text-decoration:none;color:inherit;border:1px solid #ddd;display:block;min-height:220px;overflow:hidden;background:#f5f5f5;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(0,0,0,.1)}.wc_addons_wrap .products li a img{max-width:258px;max-height:24px;padding:17px 20px;display:block;margin:0;background:#fff;border-right:260px solid #fff}.wc_addons_wrap .products li a .price,.wc_addons_wrap .products li a img.extension-thumb+h3{display:none}.wc_addons_wrap .products li a h3{margin:0!important;padding:20px!important;background:#fff}.wc_addons_wrap .products li a p{padding:20px!important;margin:0!important;border-top:1px solid #f1f1f1}.wc_addons_wrap .products li a:focus,.wc_addons_wrap .products li a:hover{background-color:#fff}.wc_addons_wrap .storefront{background:url(../images/storefront-bg.jpg) bottom right #f6f6f6;border:1px solid #ddd;padding:20px;overflow:hidden;zoom:1}.wc_addons_wrap .storefront img{width:278px;height:auto;float:left;margin:0 20px 0 0;box-shadow:0 1px 6px rgba(0,0,0,.1)}.wc_addons_wrap .storefront p{max-width:750px}.woocommerce-message{position:relative;border-left-color:#cc99c2!important;overflow:hidden}.woocommerce-message a.button-primary,.woocommerce-message button.button-primary{background:#bb77ae;border-color:#aa559a;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none!important;text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f}.woocommerce-message a.button-primary:hover,.woocommerce-message button.button-primary:hover{background:#c480b7;border-color:#aa559a;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15)}.woocommerce-message a.button-primary:active,.woocommerce-message button.button-primary:active{background:#aa559a;border-color:#873A79;-webkit-box-shadow:inset 0 2px 0 #873A79;box-shadow:inset 0 2px 0 #873A79}.woocommerce-message a.button-primary:focus,.woocommerce-message button.button-primary:focus{background:#bb77ae;border-color:#aa559a;-webkit-box-shadow:0 1px 0 #bb77ae,0 0 2px 1px #aa559a;box-shadow:0 1px 0 #bb77ae,0 0 2px 1px #aa559a}.woocommerce-message a.docs,.woocommerce-message a.skip{opacity:.5;text-decoration:none!important}.woocommerce-message .twitter-share-button{margin-top:-3px;margin-left:3px;vertical-align:middle}#variable_product_options #message{margin:10px}.clear{clear:both}#woocommerce-fields-bulk.inline-edit-col label,#woocommerce-fields.inline-edit-col{clear:left}.wrap.woocommerce div.error,.wrap.woocommerce div.updated{margin-top:10px}mark.amount{background:0 0;color:inherit}.postbox,.woocommerce{input:invalid;input-border:1px solid #cc010b;input-background:#ffebe8}.simplify-commerce-banner{overflow:hidden}.simplify-commerce-banner img{float:right;padding:15px 0;margin-left:1em;width:200px}table.wc_status_table{margin-bottom:1em}table.wc_status_table tr:nth-child(2n) td,table.wc_status_table tr:nth-child(2n) th{background:#fcfcfc}table.wc_status_table th{font-weight:700;padding:9px}table.wc_status_table td:first-child{width:33%}table.wc_status_table td.help{width:1em}table.wc_status_table td{padding:9px;font-size:1.1em}table.wc_status_table td mark{background:0 0}table.wc_status_table td mark.yes{color:#7ad03a}table.wc_status_table td mark.no{color:#999}table.wc_status_table td mark.error{color:#a00}table.wc_status_table td ul{margin:0}table.wc_status_table .help_tip{cursor:help}#debug-report{display:none;margin:10px 0;padding:0;position:relative}#debug-report textarea{font-family:monospace;width:100%;margin:0;height:300px;padding:20px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;resize:none;font-size:12px;line-height:20px;outline:0}#log-viewer-select{padding:10px 0 8px;line-height:180%}#log-viewer textarea{width:100%;resize:vertical}.inline-edit-product.quick-edit-row .inline-edit-col-center,.inline-edit-product.quick-edit-row .inline-edit-col-right{float:right!important}#woocommerce-fields.inline-edit-col label.featured,#woocommerce-fields.inline-edit-col label.manage_stock{margin-left:10px}#woocommerce-fields.inline-edit-col .dimensions div{display:block;margin:.2em 0}#woocommerce-fields.inline-edit-col .dimensions div span.title{display:block;float:left;width:5em}#woocommerce-fields.inline-edit-col .dimensions div span.input-text-wrap{display:block;margin-left:5em}#woocommerce-fields.inline-edit-col .text{box-sizing:border-box;width:99%;float:left;margin:1px 1% 1px 1px}#woocommerce-fields.inline-edit-col .height,#woocommerce-fields.inline-edit-col .length,#woocommerce-fields.inline-edit-col .width{width:32.33%}#woocommerce-fields.inline-edit-col .height{margin-right:0}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group label{clear:none;width:49%;margin:.2em 0}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group.dimensions label{width:75%;max-width:75%}#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .regular_price,#woocommerce-fields-bulk.inline-edit-col .sale_price,#woocommerce-fields-bulk.inline-edit-col .stock,#woocommerce-fields-bulk.inline-edit-col .weight{box-sizing:border-box;width:100%;margin-left:4.4em}#woocommerce-fields-bulk.inline-edit-col .height,#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .width{box-sizing:border-box;width:25%}.column-coupon_code{line-height:2.25em}.column-coupon_code,ul.wc_coupon_list{margin:0;overflow:hidden;zoom:1;clear:both}ul.wc_coupon_list li{margin:0}ul.wc_coupon_list li.code{display:inline-block}ul.wc_coupon_list li.code:after{content:", "}ul.wc_coupon_list li.code:last-of-type:after{display:none}ul.wc_coupon_list li.code .tips{cursor:pointer}ul.wc_coupon_list_block{margin:0;padding-bottom:2px}ul.wc_coupon_list_block li{border-top:1px solid #fff;border-bottom:1px solid #ccc;line-height:2.5em;margin:0;padding:.5em 0}ul.wc_coupon_list_block li:first-child{border-top:0;padding-top:0}ul.wc_coupon_list_block li:last-child{border-bottom:0;padding-bottom:0}.button.wc-reload{text-indent:-9999px;position:relative;padding:0;-webkit-border-radius:100%;border-radius:100%;height:24px;width:24px!important;display:inline-block}.button.wc-reload:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";line-height:22px}#order_data h2,#order_data p.order_number{font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:400}.tablenav .actions{overflow:visible}.tablenav .select2-container{float:left;max-width:200px;font-size:14px;vertical-align:middle;margin:1px 6px 1px 1px}#woocommerce-order-data .handlediv,#woocommerce-order-data .hndle{display:none}#woocommerce-order-data .inside{display:block!important}#order_data{padding:23px 24px 12px}#order_data h2{margin:0;font-size:21px;line-height:1.2;text-shadow:1px 1px 1px #fff;padding:0}#order_data h4{color:#333;margin:1.33em 0 0}#order_data p{color:#777}#order_data p.order_number{margin:0;line-height:1.6em;font-size:16px}#order_data .order_data_column_container{clear:both}#order_data .order_data_column{width:32%;padding:0 2% 0 0;float:left}#order_data .order_data_column:last-child{padding-right:0}#order_data .order_data_column p{padding:0!important}#order_data .order_data_column .address strong{display:block}#order_data .order_data_column .form-field{float:left;width:48%;padding:0;margin:9px 0 0}#order_data .order_data_column .form-field label{display:block;padding:0 0 3px}#order_data .order_data_column .form-field input,#order_data .order_data_column .form-field select,#order_data .order_data_column .form-field textarea{width:100%}#order_data .order_data_column .form-field .select2-container{width:100%!important}#order_data .order_data_column .form-field .date-picker{width:50%}#order_data .order_data_column .form-field .hour,#order_data .order_data_column .form-field .minute{width:2.5em}#order_data .order_data_column .form-field small{display:block;margin:5px 0 0;color:#999}#order_data .order_data_column .form-field.last{float:right}#order_data .order_data_column .form-field-wide{width:100%;clear:both}#order_data .order_data_column .form-field-wide .wc-customer-search,#order_data .order_data_column .form-field-wide .wc-enhanced-select,#order_data .order_data_column .form-field-wide input,#order_data .order_data_column .form-field-wide select,#order_data .order_data_column .form-field-wide textarea{width:100%}#order_data .order_data_column p.none_set{color:#999}#order_data .order_data_column ._billing_address_1_field,#order_data .order_data_column ._billing_city_field,#order_data .order_data_column ._billing_country_field,#order_data .order_data_column ._billing_email_field,#order_data .order_data_column ._billing_first_name_field,#order_data .order_data_column ._shipping_address_1_field,#order_data .order_data_column ._shipping_city_field,#order_data .order_data_column ._shipping_country_field,#order_data .order_data_column ._shipping_first_name_field{float:left}#order_data .order_data_column ._billing_address_2_field,#order_data .order_data_column ._billing_last_name_field,#order_data .order_data_column ._billing_phone_field,#order_data .order_data_column ._billing_postcode_field,#order_data .order_data_column ._billing_state_field,#order_data .order_data_column ._shipping_address_2_field,#order_data .order_data_column ._shipping_last_name_field,#order_data .order_data_column ._shipping_postcode_field,#order_data .order_data_column ._shipping_state_field,#order_data .order_data_column .wc-customer-user label a{float:right}#order_data .order_data_column ._billing_company_field,#order_data .order_data_column ._shipping_company_field,#order_data .order_data_column ._transaction_id_field{clear:both;width:100%}#order_data .order_data_column ._billing_email_field{clear:left}#order_data .order_data_column div.edit_address{display:none;zoom:1;padding-right:1px}#order_data .order_data_column .billing-same-as-shipping,#order_data .order_data_column .load_customer_billing,#order_data .order_data_column .load_customer_shipping,#order_data .order_data_column a.edit_address{width:14px;height:0;padding:14px 0 0;margin:0 0 0 6px;overflow:hidden;position:relative;color:#999;border:0;float:right}#order_data .order_data_column .billing-same-as-shipping:focus,#order_data .order_data_column .billing-same-as-shipping:hover,#order_data .order_data_column .load_customer_billing:focus,#order_data .order_data_column .load_customer_billing:hover,#order_data .order_data_column .load_customer_shipping:focus,#order_data .order_data_column .load_customer_shipping:hover,#order_data .order_data_column a.edit_address:focus,#order_data .order_data_column a.edit_address:hover{color:#000}#order_data .order_data_column .billing-same-as-shipping:after,#order_data .order_data_column .load_customer_billing:after,#order_data .order_data_column .load_customer_shipping:after,#order_data .order_data_column a.edit_address:after{font-family:WooCommerce;position:absolute;top:0;left:0;text-align:center;vertical-align:top;line-height:14px;font-size:14px;font-weight:400;-webkit-font-smoothing:antialiased}#order_data .order_data_column .billing-same-as-shipping:after{content:"\e008"}#order_data .order_data_column .load_customer_billing:after,#order_data .order_data_column .load_customer_shipping:after{content:"\e03a"}#order_data .order_data_column a.edit_address:after{content:"\e603"}.order_actions{margin:0;overflow:hidden;zoom:1}.order_actions li{border-top:1px solid #fff;border-bottom:1px solid #ddd;padding:6px 0;margin:0;line-height:1.6em;float:left;width:50%;text-align:center}.order_actions li a{float:none;text-align:center;text-decoration:underline}.order_actions li.wide{width:auto;float:none;clear:both;padding:6px;text-align:left;overflow:hidden}.order_actions li #delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left}.order_actions li .save_order{float:right}.order_actions li#actions{overflow:hidden}.order_actions li#actions .button{width:24px;box-sizing:border-box;float:right}.order_actions li#actions select{width:225px;box-sizing:border-box;float:left}#woocommerce-order-items .inside{margin:0;padding:0;background:#fefefe}#woocommerce-order-items .wc-order-data-row{border-bottom:1px solid #DFDFDF;padding:12px;background:#f8f8f8;line-height:2em;text-align:right}#woocommerce-order-items .wc-order-data-row:after,#woocommerce-order-items .wc-order-data-row:before{content:" ";display:table}#woocommerce-order-items .wc-order-data-row:after{clear:both}#woocommerce-order-items .wc-order-data-row p{margin:0;line-height:2em}#woocommerce-order-items .wc-order-data-row .wc-used-coupons{text-align:left}#woocommerce-order-items .wc-order-data-row .wc-used-coupons .tips{display:inline-block}#woocommerce-order-items .wc-order-bulk-actions{background:#fefefe;vertical-align:top;border-top:0}#woocommerce-order-items .wc-order-bulk-actions select{vertical-align:top}#woocommerce-order-items .wc-order-bulk-actions p.bulk-actions{float:left}#woocommerce-order-items .wc-order-add-item{background:#fff;vertical-align:top;border-top:none}#woocommerce-order-items .wc-order-add-item .add_item_id,#woocommerce-order-items .wc-order-add-item .select2-container{vertical-align:top}#woocommerce-order-items .wc-order-add-item .add_item_id .search-field input,#woocommerce-order-items .wc-order-add-item .select2-container .search-field input{min-width:100px}#woocommerce-order-items .wc-order-add-item .select2-container{width:400px!important;text-align:left}#woocommerce-order-items .wc-order-add-item .calculate-action,#woocommerce-order-items .wc-order-add-item .cancel-action,#woocommerce-order-items .wc-order-add-item .save-action{float:left;margin-right:2px}#woocommerce-order-items .wc-used-coupons{float:left;width:50%}#woocommerce-order-items .wc-order-totals{float:right;width:50%;margin:0;padding:0}#woocommerce-order-items .wc-order-totals .amount{font-weight:700}#woocommerce-order-items .wc-order-totals .label{vertical-align:top}#woocommerce-order-items .wc-order-totals .total{font-size:1em!important;width:10em;margin:0 0 0 .5em;box-sizing:border-box}#woocommerce-order-items .wc-order-totals .total input[type=text]{width:96%;float:right}#woocommerce-order-items .wc-order-totals .refunded-total{color:#a00}#woocommerce-order-items .refund-actions{margin-top:5px;padding-top:12px;border-top:1px solid #DFDFDF}#woocommerce-order-items .refund-actions .button{float:right;margin-left:4px}#woocommerce-order-items .refund-actions .cancel-action{float:left;margin-left:0}#woocommerce-order-items .add_meta{margin-left:0!important}#woocommerce-order-items h3 small{color:#999}#woocommerce-order-items .amount{white-space:nowrap}#woocommerce-order-items .add-items .description{margin-right:10px}.woocommerce_order_items_wrapper{margin:0;overflow:auto}.woocommerce_order_items_wrapper table.woocommerce_order_items{width:100%;background:#fff}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th{background:#f8f8f8;padding:8px;font-size:11px;text-align:left;color:#555;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th:last-child{padding-right:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th:first-child{padding-left:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th.sortable{cursor:pointer}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th,.woocommerce_order_items_wrapper table.woocommerce_order_items td{padding:8px;text-align:left;line-height:26px;vertical-align:top;border-bottom:1px dotted #ececec}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th select,.woocommerce_order_items_wrapper table.woocommerce_order_items td select{width:50%}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th input,.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{font-size:14px;padding:4px;color:#555}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items td:last-child{padding-right:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody th:first-child,.woocommerce_order_items_wrapper table.woocommerce_order_items td:first-child{padding-left:12px}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody tr:last-child td{border-bottom:1px solid #dfdfdf}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody tr:first-child td{border-top:8px solid #f8f8f8}.woocommerce_order_items_wrapper table.woocommerce_order_items tbody#order_line_items tr:first-child td{border-top:none}.woocommerce_order_items_wrapper table.woocommerce_order_items td.check-column{padding:8px 8px 8px 12px;width:1%}.woocommerce_order_items_wrapper table.woocommerce_order_items .item{min-width:200px}.woocommerce_order_items_wrapper table.woocommerce_order_items .center,.woocommerce_order_items_wrapper table.woocommerce_order_items .variation-id{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class{text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label{white-space:nowrap;color:#999;font-size:.833em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label input{display:inline}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class input{width:70px;vertical-align:middle;text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class select{width:85px;height:26px;vertical-align:middle;font-size:1em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input{display:block;background:#fff;border:1px solid #ddd;box-shadow:inset 0 1px 2px rgba(0,0,0,.07);margin:1px;width:70px}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input input{width:100%;box-sizing:border-box;border:0;box-shadow:none;margin:0;color:#555;background:0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .split-input input:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .split-input input:last-child{color:#bbb;border-top:1px dashed #ddd}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax .view,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class .view{white-space:nowrap}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .item_cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_cost del,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_tax del,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity del,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax del,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class del{color:#ccc}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input{text-align:center;width:50px}.woocommerce_order_items_wrapper table.woocommerce_order_items span.subtotal{opacity:.5}.woocommerce_order_items_wrapper table.woocommerce_order_items td.tax_class,.woocommerce_order_items_wrapper table.woocommerce_order_items th.tax_class{text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items .calculated{border-color:#ae8ca2;border-style:dotted}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{margin:.5em 0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr th,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr th{border:0;padding:0 4px .5em 0;line-height:1.5em;width:20%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td{padding:0 4px .5em 0;border:0;line-height:1.5em}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td input,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input{width:100%;margin:0;position:relative;border-bottom:0;box-shadow:none}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td textarea{width:100%;height:4em;margin:0;box-shadow:none}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td input:focus+textarea,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input:focus+textarea{border-top-color:#999}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td p,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td p{margin:0 0 .5em;line-height:1.5em}.woocommerce_order_items_wrapper table.woocommerce_order_items table.display_meta tr td p:last-child,.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td p:last-child{margin:0}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb{text-align:left;width:27px}.wc-order-items-editable .delete-order-item:before,.wc-order-items-editable .delete_refund:before,.wc-order-items-editable .edit-order-item:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div:before,.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div:before{text-align:center;font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;top:0;left:0}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb a{display:block}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb img{padding:1px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:21px;height:21px}.woocommerce_order_items_wrapper table.woocommerce_order_items .refund_by,ul.order_notes li p.meta .exact-date{border-bottom:1px dotted #999}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.fee .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.refund .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:14px;margin:6px}.woocommerce_order_items_wrapper table.woocommerce_order_items tr.shipping .thumb div:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";color:#bbb}.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax{white-space:nowrap}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax{padding:8px 16px 8px 8px}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:12px;visibility:hidden;float:right;margin:2px -16px 0 0}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax:before,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";color:#fff;background-color:#000;-webkit-border-radius:100%;border-radius:100%;border:1px solid #000;box-shadow:0 1px 2px rgba(0,0,0,.2)}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax .delete-order-tax:hover:before,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax .delete-order-tax:hover:before{border-color:#a00;background-color:#a00}.woocommerce_order_items_wrapper table.woocommerce_order_items td.line_tax:hover .delete-order-tax,.woocommerce_order_items_wrapper table.woocommerce_order_items th.line_tax:hover .delete-order-tax{visibility:visible}.woocommerce_order_items_wrapper table.woocommerce_order_items small.refunded{display:block;color:#a00;white-space:nowrap}.wc-order-items-editable .edit-order-item{text-indent:-9999px;position:relative;height:1em;width:1em;display:inline-block;margin:0 .5em 0 0}.wc-order-items-editable .edit-order-item:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";content:"\e603";color:#999}.wc-order-items-editable .edit-order-item:hover:before{color:#555}.wc-order-items-editable .delete-order-item,.wc-order-items-editable .delete_refund{text-indent:-9999px;position:relative;height:1em;width:1em;display:inline-block;margin:0}.wc-order-items-editable .delete-order-item:before,.wc-order-items-editable .delete_refund:before{margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:"";content:"\e013";color:#999}.wc-order-items-editable .delete-order-item:hover:before,.wc-order-items-editable .delete_refund:hover:before{color:#a00}.wc-order-items-editable .wc-order-edit-line-item-actions{width:2.5em;text-align:right}.wc-order-items-editable .wc-order-totals .wc-order-edit-line-item-actions{width:1.5em}.wc-order-items-editable .wc-order-totals .edit-order-item{margin:0}#woocommerce-order-downloads .buttons{float:left;padding:0;margin:0;vertical-align:top}#woocommerce-order-downloads .buttons .add_item_id,#woocommerce-order-downloads .buttons .select2-container{width:400px!important;margin-right:9px;vertical-align:top;float:left}#woocommerce-order-downloads .buttons button{margin:2px 0 0}#woocommerce-order-downloads h3 small{color:#999}#poststuff #woocommerce-order-actions .inside{margin:0;padding:0}#poststuff #woocommerce-order-actions .inside ul.order_actions li{padding:6px 10px;box-sizing:border-box}#poststuff #woocommerce-order-actions .inside ul.order_actions li:last-child{border-bottom:0}#poststuff #woocommerce-order-notes .inside{margin:0;padding:0}#poststuff #woocommerce-order-notes .inside ul.order_notes li{padding:0 10px}#woocommerce_customers p.search-box{margin:6px 0 4px;float:left}#woocommerce_customers .tablenav{float:right;clear:none}.widefat.customers td{vertical-align:middle;padding:4px 7px}.widefat .column-order_title{width:15%}.widefat .column-order_title time{display:block;color:#999;margin:3px 0}.widefat .column-orders,.widefat .column-paying,.widefat .column-spent{text-align:center;width:8%}.widefat .column-last_order{width:11%}.widefat .column-order_actions,.widefat .column-user_actions,.widefat .column-wc_actions{width:110px}.widefat .column-order_actions a.button,.widefat .column-user_actions a.button,.widefat .column-wc_actions a.button{float:left;margin:0 4px 2px 0;cursor:pointer;padding:3px 4px;height:auto}.widefat .column-order_actions a.button img,.widefat .column-user_actions a.button img,.widefat .column-wc_actions a.button img{display:block;width:12px;height:auto}.widefat small.meta{display:block;color:#999;font-size:inherit;margin:3px 0}.widefat .column-order_date,.widefat .column-order_total{width:9%}.widefat .column-order_status{width:45px;text-align:center}.widefat .column-order_status mark{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;background:0 0;font-size:1.4em;margin:0 auto}.widefat .column-order_status mark.cancelled:after,.widefat .column-order_status mark.completed:after,.widefat .column-order_status mark.failed:after,.widefat .column-order_status mark.on-hold:after,.widefat .column-order_status mark.pending:after,.widefat .column-order_status mark.processing:after,.widefat .column-order_status mark.refunded:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center}.widefat .column-order_status mark.pending:after{content:"\e012";color:#ffba00}.widefat .column-order_status mark.completed:after{content:"\e015";color:#2ea2cc}.widefat .column-order_status mark.on-hold:after{content:"\e033";color:#999}.widefat .column-order_status mark.failed:after{content:"\e016";color:#d0c21f}.widefat .column-order_status mark.cancelled:after{content:"\e013";color:#a00}.widefat .column-order_status mark.processing:after{content:"\e011";color:#73a724}.widefat .column-order_status mark.refunded:after{content:"\e014";color:#999}.widefat td.column-order_status{padding-top:9px}.column-customer_message .note-on{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto;color:#999}.column-customer_message .note-on:after,.column-order_notes .note-on:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;top:0;left:0;text-align:center;line-height:16px}.column-customer_message .note-on:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}.column-order_notes .note-on{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto;color:#999}.column-order_notes .note-on:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}.attributes-table .attribute-actions .configure-terms:after,.order_actions .complete:after,.order_actions .processing:after,.order_actions .view:after,.user_actions .edit:after,.user_actions .link:after,.user_actions .refresh:after,.user_actions .view:after{font-family:WooCommerce;speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;line-height:1.85;margin:0;text-align:center;font-weight:400}.order_actions .complete,.order_actions .processing,.order_actions .view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.order_actions .complete:after,.order_actions .processing:after,.order_actions .view:after{text-indent:0;position:absolute;width:100%;height:100%}.order_actions .processing:after{content:"\e00f"}.order_actions .complete:after{content:"\e017"}.order_actions .view:after{content:"\e010"}.user_actions .edit,.user_actions .link,.user_actions .refresh,.user_actions .view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.user_actions .edit:after,.user_actions .link:after,.user_actions .refresh:after,.user_actions .view:after{text-indent:0;position:absolute;width:100%;height:100%}.user_actions .edit:after{content:"\e603"}.user_actions .link:after{content:"\e00d"}.user_actions .view:after{content:"\e010"}.user_actions .refresh:after{content:"\e031"}.attributes-table td,.attributes-table th{width:15%;vertical-align:top}.attributes-table .attribute-terms{width:32%}.attributes-table .attribute-actions{width:2em}.attributes-table .attribute-actions .configure-terms{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.attributes-table .attribute-actions .configure-terms:after{text-indent:0;position:absolute;width:100%;height:100%;content:""}ul.order_notes{padding:2px 0 0}ul.order_notes li .note_content{padding:10px;background:#efefef;position:relative}ul.order_notes li .note_content p{margin:0;padding:0;word-wrap:break-word}ul.order_notes li p.meta{padding:10px;color:#999;margin:0;font-size:11px}ul.order_notes li a.delete_note{color:#a00}table.wp-list-table .row-actions,table.wp-list-table span.na{color:#999}ul.order_notes li .note_content:after{content:"";display:block;position:absolute;bottom:-10px;left:20px;width:0;height:0;border-width:10px 10px 0 0;border-style:solid;border-color:#efefef transparent}ul.order_notes li.customer-note .note_content{background:#d7cad2}ul.order_notes li.customer-note .note_content:after{border-color:#d7cad2 transparent}.add_note{border-top:1px solid #ddd;padding:10px 10px 0}.add_note h4{margin-top:5px!important}.add_note #add_order_note{width:100%;height:50px}table.wp-list-table .column-thumb{width:52px;text-align:center;white-space:nowrap}table.wp-list-table .column-name{width:22%}table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag{width:11%!important}table.wp-list-table .column-featured,table.wp-list-table .column-product_type{width:48px;text-align:left!important}table.wp-list-table .column-customer_message,table.wp-list-table .column-order_notes{width:48px;text-align:center}table.wp-list-table .column-customer_message img,table.wp-list-table .column-order_notes img{margin:0 auto;padding-top:0!important}table.wp-list-table .manage-column.column-featured img,table.wp-list-table .manage-column.column-product_type img{padding-left:2px}table.wp-list-table .column-price .woocommerce-price-suffix{display:none}table.wp-list-table img{margin:1px 2px}table.wp-list-table td.column-thumb img{margin:0;vertical-align:middle;width:auto;height:auto;max-width:40px;max-height:40px}table.wp-list-table .column-is_in_stock{text-align:left!important}table.wp-list-table .notes_head:after,table.wp-list-table .order-notes_head:after,table.wp-list-table .status_head:after,table.wp-list-table span.product-type:before,table.wp-list-table span.wc-featured:before,table.wp-list-table span.wc-image:before,table.wp-list-table span.wc-type:before{speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;text-align:center;line-height:1;font-family:WooCommerce}table.wp-list-table span.wc-featured,table.wp-list-table span.wc-image,table.wp-list-table span.wc-type{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto}table.wp-list-table span.wc-featured:before,table.wp-list-table span.wc-image:before,table.wp-list-table span.wc-type:before{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:""}table.wp-list-table span.wc-featured{margin:0;cursor:pointer}table.wp-list-table span.wc-featured:before{content:"\e020"}table.wp-list-table span.wc-featured.not-featured:before{content:"\e021"}table.wp-list-table td.column-featured span.wc-featured{font-size:1.2em}table.wp-list-table span.wc-type{margin:0}table.wp-list-table span.wc-type:before{content:"\e01d"}table.wp-list-table span.product-type{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.2em}table.wp-list-table span.product-type:before{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%;content:""}table.wp-list-table span.product-type.grouped:before{content:"\e002"}table.wp-list-table span.product-type.external:before{content:"\e034"}table.wp-list-table span.product-type.variable:before{content:"\e003"}table.wp-list-table span.product-type.downloadable:before{content:"\e001"}table.wp-list-table span.product-type.virtual:before{content:"\e000"}table.wp-list-table mark.instock{font-weight:700;color:#7ad03a;background:0 0;line-height:1}table.wp-list-table mark.outofstock{font-weight:700;color:#a44;background:0 0;line-height:1}table.wp-list-table .notes_head,table.wp-list-table .order-notes_head,table.wp-list-table .status_head{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;margin:0 auto}table.wp-list-table .notes_head:after,table.wp-list-table .order-notes_head:after,table.wp-list-table .status_head:after{font-weight:400;margin:0;text-indent:0;position:absolute;width:100%;height:100%}table.wp-list-table .order-notes_head:after{content:"\e028"}table.wp-list-table .notes_head:after{content:"\e026"}table.wp-list-table .status_head:after{content:"\e011"}table.wp-list-table .column-order_items{width:12%}table.wp-list-table .column-order_items table.order_items{width:100%;margin:3px 0 0;padding:0;display:none}table.wp-list-table .column-order_items table.order_items td{border:0;margin:0;padding:0 0 3px}table.wp-list-table .column-order_items table.order_items td.qty{color:#999;padding-right:6px;text-align:left}table.wp-list-table .toggle-row{display:none}mark.notice{background:#fff;color:#a00;margin:0 0 0 10px}a.export_rates,a.import_rates{float:right;margin-left:9px;margin-top:-2px;margin-bottom:0}table.wc_input_table,table.wc_tax_rates{width:100%}table.wc_input_table span.tips,table.wc_tax_rates span.tips{color:#2ea2cc}table.wc_input_table td,table.wc_tax_rates td{padding:0;border-right:1px solid #DFDFDF;border-bottom:1px solid #DFDFDF;border-top:0;background:#fff}table.wc_input_table td input[type=text],table.wc_input_table td input[type=number],table.wc_tax_rates td input[type=text],table.wc_tax_rates td input[type=number]{width:100%;padding:5px 7px;margin:0;border:0;background:0 0}table.wc_input_table td.apply_to_shipping,table.wc_input_table td.compound,table.wc_tax_rates td.apply_to_shipping,table.wc_tax_rates td.compound{padding:5px 7px;vertical-align:middle}table.wc_input_table td.apply_to_shipping input,table.wc_input_table td.compound input,table.wc_tax_rates td.apply_to_shipping input,table.wc_tax_rates td.compound input{width:auto;padding:0}table.wc_input_table td:last-child,table.wc_tax_rates td:last-child{border-right:0}table.wc_input_table tr.current td,table.wc_tax_rates tr.current td{background-color:#fefbcc}table.wc_input_table .cost,table.wc_input_table .cost input,table.wc_input_table .item_cost,table.wc_input_table .item_cost input,table.wc_tax_rates .cost,table.wc_tax_rates .cost input,table.wc_tax_rates .item_cost,table.wc_tax_rates .item_cost input{text-align:right}table.wc_input_table th.sort,table.wc_tax_rates th.sort{width:17px;padding:0}table.wc_input_table td.sort,table.wc_tax_rates td.sort{padding:0 4px;cursor:move;background:#f9f9f9;text-align:center;vertical-align:middle}table.wc_input_table td.sort:before,table.wc_tax_rates td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%}table.wc_input_table td.sort:hover:before,table.wc_tax_rates td.sort:hover:before{color:#333}table.wc_input_table .button,table.wc_tax_rates .button{float:left;margin-right:5px}table.wc_input_table .export,table.wc_input_table .import,table.wc_tax_rates .export,table.wc_tax_rates .import{float:right;margin-right:0;margin-left:5px}table.wc_input_table span.tips,table.wc_tax_rates span.tips{padding:0 3px}table.wc_input_table .pagination,table.wc_tax_rates .pagination{float:right}table.wc_input_table .pagination .button,table.wc_tax_rates .pagination .button{margin-left:5px;margin-right:0}table.wc_input_table .pagination .current,table.wc_tax_rates .pagination .current{background:#bbb;text-shadow:none}table.wc_input_table tfoot th,table.wc_tax_rates tfoot th{padding-left:20px;padding-right:20px}table.wc_input_table tr:last-child td,table.wc_tax_rates tr:last-child td{border-bottom:0}table.wc_gateways,table.wc_shipping{position:relative}table.wc_gateways td,table.wc_shipping td{vertical-align:middle;padding:7px;line-height:2em}table.wc_gateways tr:nth-child(odd) td,table.wc_shipping tr:nth-child(odd) td{background:#f9f9f9}table.wc_gateways th,table.wc_shipping th{padding:9px 7px!important;vertical-align:middle}table.wc_gateways td.name,table.wc_shipping td.name{font-weight:700}table.wc_gateways .settings,table.wc_shipping .settings{text-align:right}table.wc_gateways .default,table.wc_gateways .radio,table.wc_gateways .status,table.wc_shipping .default,table.wc_shipping .radio,table.wc_shipping .status{text-align:center}table.wc_gateways .default .tips,table.wc_gateways .radio .tips,table.wc_gateways .status .tips,table.wc_shipping .default .tips,table.wc_shipping .radio .tips,table.wc_shipping .status .tips{margin:0 auto}table.wc_gateways .default input,table.wc_gateways .radio input,table.wc_gateways .status input,table.wc_shipping .default input,table.wc_shipping .radio input,table.wc_shipping .status input{margin:0}table.wc_gateways th.sort,table.wc_shipping th.sort{width:28px;padding:0}table.wc_gateways td.sort,table.wc_shipping td.sort{padding:0 7px;cursor:move;text-align:center;vertical-align:middle}table.wc_gateways td.sort:before,table.wc_shipping td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#ccc;display:block;width:17px;float:left;height:100%}img.help_tip{vertical-align:middle;margin:0 0 0 9px}.postbox img.help_tip{margin-top:-4px}.status-disabled,.status-enabled{font-size:1.4em;display:block;text-indent:-9999px;position:relative;height:1em;width:1em}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder:after,.status-enabled:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;text-indent:0;top:0;left:0;text-align:center}.status-enabled:before{line-height:1;margin:0;position:absolute;width:100%;height:100%;content:"";color:#a46497}.woocommerce .woo-nav-tab-wrapper{margin-bottom:16px!important}.woocommerce .subsubsub{margin:-8px 0 0}.woocommerce #template div{margin:0}.woocommerce #template div p .button{float:right;margin-left:10px;margin-top:-4px}.woocommerce #template div .editor textarea{margin-bottom:8px}.woocommerce textarea[disabled=disabled]{background:#DFDFDF!important}.woocommerce table.form-table{margin:0;position:relative}.woocommerce table.form-table .forminp-radio ul{margin:0}.woocommerce table.form-table .forminp-radio ul li{line-height:1.4em}.woocommerce table.form-table textarea.input-text{height:100%;min-width:150px;display:block}.woocommerce table.form-table input.regular-input{width:25em}.woocommerce table.form-table textarea.wide-input{width:100%}.woocommerce table.form-table img.help_tip{padding:0;margin:-4px 0 0 5px;vertical-align:middle;cursor:help;line-height:1}.woocommerce table.form-table span.help_tip{cursor:help;color:#2ea2cc}.woocommerce table.form-table th{position:relative;padding-right:24px}.woocommerce table.form-table .select2-container{display:block;max-width:350px;vertical-align:top;margin-bottom:3px}.woocommerce table.form-table table.widefat th{padding-right:inherit}.woocommerce table.form-table th img.help_tip{margin:0 -24px 0 0;float:right}.woocommerce table.form-table fieldset{margin-top:4px}.woocommerce table.form-table fieldset img.help_tip{margin:-3px 0 0 5px}.woocommerce table.form-table fieldset p.description{margin-bottom:8px}.woocommerce table.form-table fieldset:first-child{margin-top:0}.woocommerce table.form-table .iris-picker{z-index:100;display:none;position:absolute;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.2)}.woocommerce table.form-table .iris-picker .ui-slider{border:0!important;margin:0!important;width:auto!important;height:auto!important;background:none!important}.woocommerce table.form-table .iris-picker .ui-slider .ui-slider-handle{margin-bottom:0!important}.woocommerce table.form-table .colorpickpreview{padding:3px 3px 3px 20px;border:1px solid #ddd;border-right:0}.woocommerce table.form-table .colorpick{border-left:0}.woocommerce table.form-table .image_width_settings{vertical-align:middle}.woocommerce table.form-table .image_width_settings label{margin-left:10px}.woocommerce #tabs-wrap table a.remove{margin-left:4px}.woocommerce #tabs-wrap table p{margin:0 0 4px!important;overflow:hidden;zoom:1}.woocommerce #tabs-wrap table p a.add{float:left}#wp-excerpt-editor-container{background:#fff}#product_variation-parent #parent_id{width:100%}#postimagediv img{border:1px solid #d5d5d5;max-width:100%}#woocommerce-product-images .inside{margin:0;padding:0}#woocommerce-product-images .inside .add_product_images{padding:0 12px 12px}#woocommerce-product-images .inside #product_images_container{padding:0 0 0 9px}#woocommerce-product-images .inside #product_images_container ul{margin:0;padding:0}#woocommerce-product-images .inside #product_images_container ul:after,#woocommerce-product-images .inside #product_images_container ul:before{content:" ";display:table}#woocommerce-product-images .inside #product_images_container ul:after{clear:both}#woocommerce-product-images .inside #product_images_container ul li.add,#woocommerce-product-images .inside #product_images_container ul li.image,#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder{width:80px;float:left;cursor:move;border:1px solid #d5d5d5;margin:9px 9px 0 0;background:#f7f7f7;border-radius:2px;position:relative;box-sizing:border-box}#woocommerce-product-images .inside #product_images_container ul li.add img,#woocommerce-product-images .inside #product_images_container ul li.image img,#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder img{width:100%;height:auto;display:block}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder{border:3px dashed #ddd;position:relative}#woocommerce-product-images .inside #product_images_container ul li.wc-metabox-sortable-placeholder:after{margin:0;position:absolute;width:100%;height:100%;content:"";font-size:2.618em;line-height:72px;color:#ddd}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:before,#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;color:#fff;background-color:#000;text-align:center;left:0}#woocommerce-product-images .inside #product_images_container ul ul.actions{position:absolute;top:-8px;right:-8px;padding:2px;display:none}#woocommerce-product-images .inside #product_images_container ul ul.actions li{float:right;margin:0 0 0 2px}#woocommerce-product-images .inside #product_images_container ul ul.actions li a{width:1em;margin:0;height:0;display:block;overflow:hidden}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.tips{cursor:pointer}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.4em}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.view:before{margin:0;text-indent:0;position:absolute;top:0;width:100%;height:100%;content:""}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete{display:block;text-indent:-9999px;position:relative;height:1em;width:1em;font-size:1.4em}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:before{margin:0;text-indent:0;position:absolute;top:0;width:100%;height:100%;content:"";border-radius:100%;box-shadow:0 1px 2px rgba(0,0,0,.2)}#woocommerce-product-images .inside #product_images_container ul ul.actions li a.delete:hover before{background-color:#a00}#woocommerce-product-images .inside #product_images_container ul li:hover ul.actions{display:block}#woocommerce-product-data .hndle{padding:10px}#woocommerce-product-data .hndle span{display:block;vertical-align:middle;line-height:24px}#woocommerce-product-data .hndle span span{display:inline;line-height:inherit;vertical-align:baseline}#woocommerce-product-data .hndle label{padding-right:1em;font-size:12px;vertical-align:baseline}#woocommerce-product-data .hndle label:first-child{margin-right:1em;border-right:1px solid #dfdfdf}#woocommerce-product-data .hndle input,#woocommerce-product-data .hndle select{margin:-3px 0 0 .5em;vertical-align:middle}#woocommerce-product-data>.handlediv{margin-top:4px}#woocommerce-product-data .wrap{margin:0}#woocommerce-coupon-description{padding:3px 8px;font-size:1.7em;line-height:1.42em;height:auto;width:100%;outline:0;margin:10px 0;display:block}#woocommerce-coupon-description::-webkit-input-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description::-moz-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description:-ms-input-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-description:-moz-placeholder{line-height:1.42em;color:#bbb}#woocommerce-coupon-data .panel-wrap,#woocommerce-product-data .panel-wrap{background:#fff}#woocommerce-coupon-data .wc-metaboxes-wrapper,#woocommerce-coupon-data .woocommerce_options_panel,#woocommerce-product-data .wc-metaboxes-wrapper,#woocommerce-product-data .woocommerce_options_panel{float:left;width:80%}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios,#woocommerce-product-data .woocommerce_options_panel .wc-radios{display:block;float:left;margin:0}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios li,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios li,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios li,#woocommerce-product-data .woocommerce_options_panel .wc-radios li{display:block;padding:0 0 10px}#woocommerce-coupon-data .wc-metaboxes-wrapper .wc-radios li input,#woocommerce-coupon-data .woocommerce_options_panel .wc-radios li input,#woocommerce-product-data .wc-metaboxes-wrapper .wc-radios li input,#woocommerce-product-data .woocommerce_options_panel .wc-radios li input{width:auto}#woocommerce-coupon-data .panel-wrap,#woocommerce-product-data .panel-wrap,.woocommerce .panel-wrap{overflow:hidden}#woocommerce-coupon-data ul.wc-tabs,#woocommerce-product-data ul.wc-tabs,.woocommerce ul.wc-tabs{margin:0;width:20%;float:left;line-height:1em;padding:0 0 10px;position:relative;background-color:#fafafa;border-right:1px solid #eee;box-sizing:border-box}#woocommerce-coupon-data ul.wc-tabs:after,#woocommerce-product-data ul.wc-tabs:after,.woocommerce ul.wc-tabs:after{content:"";display:block;width:100%;height:9999em;position:absolute;bottom:-9999em;left:0;background-color:#fafafa;border-right:1px solid #eee}#woocommerce-coupon-data ul.wc-tabs li,#woocommerce-product-data ul.wc-tabs li,.woocommerce ul.wc-tabs li{margin:0;padding:0;display:block;position:relative}#woocommerce-coupon-data ul.wc-tabs li a,#woocommerce-product-data ul.wc-tabs li a,.woocommerce ul.wc-tabs li a{margin:0;padding:10px;display:block;box-shadow:none;text-decoration:none;line-height:20px!important;border-bottom:1px solid #eee}#woocommerce-coupon-data ul.wc-tabs li a:before,#woocommerce-product-data ul.wc-tabs li a:before,.woocommerce ul.wc-tabs li a:before,.woocommerce_page_wc-settings .shippingrows .add.button:before{line-height:1;margin-right:.618em;font-weight:400;font-variant:normal;-webkit-font-smoothing:antialiased;font-family:WooCommerce;speak:none;text-transform:none;text-decoration:none}#woocommerce-coupon-data ul.wc-tabs li a:before,#woocommerce-product-data ul.wc-tabs li a:before,.woocommerce ul.wc-tabs li a:before{content:""}#woocommerce-coupon-data ul.wc-tabs li.general_options a:before,#woocommerce-product-data ul.wc-tabs li.general_options a:before,.woocommerce ul.wc-tabs li.general_options a:before{content:"\e006"}#woocommerce-coupon-data ul.wc-tabs li.inventory_options a:before,#woocommerce-product-data ul.wc-tabs li.inventory_options a:before,.woocommerce ul.wc-tabs li.inventory_options a:before{content:"\e02c"}#woocommerce-coupon-data ul.wc-tabs li.shipping_options a:before,#woocommerce-product-data ul.wc-tabs li.shipping_options a:before,.woocommerce ul.wc-tabs li.shipping_options a:before{content:"\e01a"}#woocommerce-coupon-data ul.wc-tabs li.linked_product_options a:before,#woocommerce-product-data ul.wc-tabs li.linked_product_options a:before,.woocommerce ul.wc-tabs li.linked_product_options a:before{content:"\e00d"}#woocommerce-coupon-data ul.wc-tabs li.attribute_options a:before,#woocommerce-product-data ul.wc-tabs li.attribute_options a:before,.woocommerce ul.wc-tabs li.attribute_options a:before{content:"\e02b"}#woocommerce-coupon-data ul.wc-tabs li.advanced_options a:before,#woocommerce-product-data ul.wc-tabs li.advanced_options a:before,.woocommerce ul.wc-tabs li.advanced_options a:before{content:"\e01c"}#woocommerce-coupon-data ul.wc-tabs li.variation_options a:before,#woocommerce-product-data ul.wc-tabs li.variation_options a:before,.woocommerce ul.wc-tabs li.variation_options a:before{content:"\e003"}#woocommerce-coupon-data ul.wc-tabs li.usage_restriction_options a:before,#woocommerce-product-data ul.wc-tabs li.usage_restriction_options a:before,.woocommerce ul.wc-tabs li.usage_restriction_options a:before{content:"\e602"}#woocommerce-coupon-data ul.wc-tabs li.usage_limit_options a:before,#woocommerce-product-data ul.wc-tabs li.usage_limit_options a:before,.woocommerce ul.wc-tabs li.usage_limit_options a:before{content:"\e601"}#woocommerce-coupon-data ul.wc-tabs li.general_coupon_data a:before,#woocommerce-product-data ul.wc-tabs li.general_coupon_data a:before,.woocommerce ul.wc-tabs li.general_coupon_data a:before{content:"\e600"}#woocommerce-coupon-data ul.wc-tabs li.active a,#woocommerce-product-data ul.wc-tabs li.active a,.woocommerce ul.wc-tabs li.active a{color:#555;position:relative;background-color:#eee}.woocommerce_page_wc-settings .shippingrows th.check-column{padding-top:20px}.woocommerce_page_wc-settings .shippingrows tfoot th{padding-left:10px}.woocommerce_page_wc-settings .shippingrows .add.button:before{content:""}.woocommerce_page_wc-settings h3.wc-settings-sub-title{font-size:1.2em}#woocommerce-coupon-data .inside,#woocommerce-order-data .inside,#woocommerce-order-downloads .inside,#woocommerce-product-data .inside,#woocommerce-product-type-options .inside{padding:0;margin:0}.panel,.woocommerce_options_panel{padding:9px;color:#555}.panel,.woocommerce_page_settings .woocommerce_options_panel{padding:0}#woocommerce-product-specs .inside,#woocommerce-product-type-options .panel{padding:9px;margin:0}#woocommerce-product-type-options .panel p,.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p{margin:0 0 9px;font-size:12px;padding:5px 9px;line-height:24px}#woocommerce-product-type-options .panel p:after,.woocommerce_options_panel fieldset.form-field:after,.woocommerce_options_panel p:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce_options_panel .checkbox,.woocommerce_variable_attributes .checkbox{width:auto;vertical-align:middle;margin:7px 0}.woocommerce_options_panel .downloadable_files table,.woocommerce_variations .downloadable_files table{width:100%;padding:0!important}.woocommerce_options_panel .downloadable_files table th,.woocommerce_variations .downloadable_files table th{padding:7px 0 7px 7px!important}.woocommerce_options_panel .downloadable_files table td,.woocommerce_variations .downloadable_files table td{vertical-align:middle!important;padding:4px 0 4px 7px!important;position:relative}.woocommerce_options_panel .downloadable_files table td:last-child,.woocommerce_variations .downloadable_files table td:last-child{padding-right:7px!important}.woocommerce_options_panel .downloadable_files table td input.input_text,.woocommerce_variations .downloadable_files table td input.input_text{width:100%;float:none;margin:1px 0;min-width:0}.woocommerce_options_panel .downloadable_files table td .upload_file_button,.woocommerce_variations .downloadable_files table td .upload_file_button{float:right;width:auto;cursor:pointer}.woocommerce_options_panel .downloadable_files table td .delete,.woocommerce_variations .downloadable_files table td .delete{display:block;text-indent:-9999px;position:relative;height:1em;width:1em}.woocommerce_options_panel .downloadable_files table td .delete:before,.woocommerce_variations .downloadable_files table td .delete:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"";content:"\e013";color:#999}.woocommerce_options_panel .downloadable_files table td .delete:hover:before,.woocommerce_variations .downloadable_files table td .delete:hover:before{color:#a00}.woocommerce_options_panel .downloadable_files table th.sort,.woocommerce_variations .downloadable_files table th.sort{width:17px;padding:0}.woocommerce_options_panel .downloadable_files table td.sort,.woocommerce_variations .downloadable_files table td.sort{padding:0 8px;cursor:move;background:#f9f9f9;text-align:center;vertical-align:middle}.woocommerce_options_panel .downloadable_files table td.sort:before,.woocommerce_variations .downloadable_files table td.sort:before{content:"\e032";font-family:WooCommerce;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%}.woocommerce_options_panel .downloadable_files table td.sort:hover:before,.woocommerce_variations .downloadable_files table td.sort:hover:before{color:#333}.woocommerce_variation h3 .sort{cursor:move;text-align:center;float:right;height:26px;width:17px;visibility:hidden;vertical-align:middle;margin-right:.5em;color:#a0a5aa}.woocommerce_variation h3 .sort:before{content:"\e032";font-family:WooCommerce;text-align:center;cursor:move;display:block;width:17px;line-height:28px}.woocommerce_variation h3 .sort:hover{color:#777}.woocommerce_variation h3:hover .sort,.woocommerce_variation.ui-sortable-helper .sort{visibility:visible}.woocommerce_options_panel{box-sizing:border-box}.woocommerce_options_panel .downloadable_files{padding:0 9px 0 162px;position:relative;margin:9px 0}.woocommerce_options_panel .downloadable_files label{position:absolute;left:0;margin:0 0 0 12px;line-height:24px}.woocommerce_options_panel p{margin:9px 0}.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p.form-field{padding:5px 20px 5px 162px!important}.woocommerce_options_panel .sale_price_dates_fields .short:first-of-type{margin-bottom:1em}.woocommerce_options_panel .sale_price_dates_fields .short:nth-of-type(2){clear:left}.woocommerce_options_panel label,.woocommerce_options_panel legend{float:left;width:150px;padding:0;margin:0 0 0 -150px}.woocommerce_options_panel label .req,.woocommerce_options_panel legend .req{font-weight:700;font-style:normal;color:#a00}.woocommerce_options_panel .description{padding:0;margin:0 0 0 7px;clear:none;display:inline}.woocommerce_options_panel .description-block{margin-left:0;display:block}.woocommerce_options_panel input,.woocommerce_options_panel select,.woocommerce_options_panel textarea{margin:0}.woocommerce_options_panel textarea{vertical-align:top;height:3.5em;line-height:1.5em}.woocommerce_options_panel input[type=text],.woocommerce_options_panel input[type=number],.woocommerce_options_panel input[type=email]{width:50%;float:left}.woocommerce_options_panel input.button{width:auto;margin-left:8px}.woocommerce_options_panel select{float:left}.woocommerce_options_panel .short,.woocommerce_options_panel input[type=text].short,.woocommerce_options_panel input[type=number].short,.woocommerce_options_panel input[type=email].short{width:50%}.woocommerce_options_panel .sized{width:auto!important;margin-right:6px}.woocommerce_options_panel .options_group{border-top:1px solid #fff;border-bottom:1px solid #eee}.woocommerce_options_panel .options_group:first-child{border-top:0}.woocommerce_options_panel .options_group:last-child{border-bottom:0}.woocommerce_options_panel .options_group fieldset{margin:9px 0;font-size:12px;padding:5px 9px;line-height:24px}.woocommerce_options_panel .options_group fieldset label{width:auto;float:none}.woocommerce_options_panel .options_group fieldset ul{float:left;width:50%;margin:0;padding:0}.woocommerce_options_panel .options_group fieldset ul li{margin:0;width:auto}.woocommerce_options_panel .options_group fieldset ul li input{width:auto;float:none;margin-right:4px}.woocommerce_options_panel .options_group fieldset ul.wc-radios label{margin-left:0}.woocommerce_options_panel .dimensions_field .wrap{display:block;width:50%}.woocommerce_options_panel .dimensions_field .wrap input{width:30.75%;margin-right:3.8%}.woocommerce_options_panel .dimensions_field .wrap .last{margin-right:0}.woocommerce_options_panel.padded{padding:1em}#woocommerce-product-data input.dp-applied,.woocommerce_options_panel .select2-container{float:left}#grouped_product_options,#simple_product_options,#virtual_product_options{padding:12px;font-style:italic;color:#666}.wc-metaboxes-wrapper .toolbar{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #eee;padding:9px 12px!important}.wc-metaboxes-wrapper .toolbar:first-child{border-top:0}.wc-metaboxes-wrapper .toolbar:last-child{border-bottom:0}.wc-metaboxes-wrapper .toolbar .add_variation{float:right;margin-left:5px}.wc-metaboxes-wrapper .toolbar .cancel-variation-changes,.wc-metaboxes-wrapper .toolbar .save-variation-changes{float:left;margin-right:5px}.wc-metaboxes-wrapper p.toolbar{overflow:hidden;zoom:1}.wc-metaboxes-wrapper .expand-close{margin-right:2px;color:#777;font-size:12px;font-style:italic}.wc-metaboxes-wrapper .expand-close a{background:0 0;padding:0;font-size:12px;text-decoration:none}.wc-metaboxes-wrapper#product_attributes .expand-close{float:right;line-height:28px}.wc-metaboxes-wrapper .fr,.wc-metaboxes-wrapper button.add_variable_attribute{float:right;margin:0 0 0 6px}.wc-metaboxes-wrapper .wc-metaboxes{border-bottom:1px solid #eee}.wc-metaboxes-wrapper .wc-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin-bottom:9px;border-width:1px;border-style:dashed}.wc-metaboxes-wrapper .wc-metabox{background:#fff;border-bottom:1px solid #eee;margin:0!important}.wc-metaboxes-wrapper .wc-metabox select{font-weight:400}.wc-metaboxes-wrapper .wc-metabox:last-of-type{border-bottom:0}.wc-metaboxes-wrapper .wc-metabox .handlediv{width:27px}.wc-metaboxes-wrapper .wc-metabox .handlediv:before{content:"\f142"!important;cursor:pointer;display:inline-block;font:400 20px/1 Dashicons;line-height:.5!important;padding:8px 10px;position:relative;right:12px;top:0}.wc-metaboxes-wrapper .wc-metabox.closed{border-radius:3px}.wc-metaboxes-wrapper .wc-metabox.closed .handlediv:before{content:"\f140"!important}.wc-metaboxes-wrapper .wc-metabox.closed h3{border:0}.wc-metaboxes-wrapper .wc-metabox h3{margin:0!important;padding:.75em .75em .75em 1em!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}.wc-metaboxes-wrapper .wc-metabox h3 a.delete,.wc-metaboxes-wrapper .wc-metabox h3 button{float:right}.wc-metaboxes-wrapper .wc-metabox h3 a.delete{color:red;font-weight:400;line-height:26px;text-decoration:none;position:relative;visibility:hidden}.wc-metaboxes-wrapper .wc-metabox h3 strong{line-height:26px;font-weight:700}.wc-metaboxes-wrapper .wc-metabox h3 select{font-family:sans-serif;max-width:20%;margin:.25em .25em .25em 0}.wc-metaboxes-wrapper .wc-metabox h3 .handlediv{background-position:6px 5px!important;visibility:hidden;height:26px}.wc-metaboxes-wrapper .wc-metabox h3.fixed{cursor:pointer!important}.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3{cursor:pointer;padding:.5em .75em .5em 1em!important}.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 .handlediv,.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 .sort,.wc-metaboxes-wrapper .wc-metabox.woocommerce_variation h3 a.delete{margin-top:.25em}.wc-metaboxes-wrapper .wc-metabox h3:hover .handlediv,.wc-metaboxes-wrapper .wc-metabox h3:hover a.delete,.wc-metaboxes-wrapper .wc-metabox.ui-sortable-helper .handlediv,.wc-metaboxes-wrapper .wc-metabox.ui-sortable-helper a.delete{visibility:visible}.wc-metaboxes-wrapper .wc-metabox table{width:100%;position:relative;background-color:#fdfdfd;padding:1em;border-top:1px solid #eee}.wc-metaboxes-wrapper .wc-metabox table td{text-align:left;padding:0 6px 1em 0;vertical-align:top;border:0}.wc-metaboxes-wrapper .wc-metabox table td label{text-align:left;display:block;line-height:21px}.wc-metaboxes-wrapper .wc-metabox table td input{float:left;min-width:200px}.wc-metaboxes-wrapper .wc-metabox table td input,.wc-metaboxes-wrapper .wc-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}.wc-metaboxes-wrapper .wc-metabox table td .select2-container,.wc-metaboxes-wrapper .wc-metabox table td select{width:100%!important}.wc-metaboxes-wrapper .wc-metabox table td input.short{width:200px}.wc-metaboxes-wrapper .wc-metabox table td input.checkbox{width:16px;min-width:inherit;vertical-align:text-bottom;display:inline-block;float:none}.wc-metaboxes-wrapper .wc-metabox table td.attribute_name{width:200px}.wc-metaboxes-wrapper .wc-metabox table .minus,.wc-metaboxes-wrapper .wc-metabox table .plus{margin-top:6px}.wc-metaboxes-wrapper .wc-metabox table .fl{float:left}.wc-metaboxes-wrapper .wc-metabox table .fr{float:right}.variations-pagenav{float:right;line-height:24px}.variations-pagenav .displaying-num{color:#777;font-size:12px;font-style:italic}.variations-pagenav a{padding:0 10px 3px;background:rgba(0,0,0,.05);font-size:16px;font-weight:400;text-decoration:none}.variations-pagenav a.disabled,.variations-pagenav a.disabled:active,.variations-pagenav a.disabled:focus,.variations-pagenav a.disabled:hover{color:#A0A5AA;background:rgba(0,0,0,.05)}.variations-defaults{float:left}.variations-defaults select{margin:.25em .25em .25em 0}.woocommerce_variable_attributes{background-color:#fdfdfd;border-top:1px solid #eee}.woocommerce_variable_attributes .data{padding:1em 2em}.woocommerce_variable_attributes .data:after,.woocommerce_variable_attributes .data:before{content:" ";display:table}.woocommerce_variable_attributes .data:after{clear:both}.woocommerce_variable_attributes .upload_image_button{display:block;width:48px;height:48px;float:left;margin-right:20px;position:relative;cursor:pointer}.woocommerce_variable_attributes .upload_image_button img{width:100%;height:auto;display:none}.woocommerce_variable_attributes .upload_image_button:before{content:"\f128";font-family:Dashicons;position:absolute;top:0;left:0;right:0;bottom:0;text-align:center;line-height:48px;font-size:48px;font-weight:400;-webkit-font-smoothing:antialiased}.woocommerce_variable_attributes .upload_image_button.remove img{display:block}.woocommerce_variable_attributes .upload_image_button.remove:before{content:"\f335";display:none}.woocommerce_variable_attributes .upload_image_button.remove:hover:before{display:block}.woocommerce_variable_attributes .options{border:1px solid #eee;border-width:1px 0;padding:.25em 0}.woocommerce_variable_attributes .options label{display:inline-block;padding:4px 1em 2px 0}.woocommerce_variable_attributes .options input[type=checkbox]{margin-top:5px;margin-right:3px}.form-row label{display:block}.form-row input[type=number],.form-row input[type=text],.form-row select{width:100%}.form-row.dimensions_field input{width:25%;float:left;margin-right:1%}.form-row.dimensions_field input:last-of-type{margin-right:0}.form-row-first,.form-row-last{width:48%;float:right}.form-row-first{clear:both;float:left}.form-row-full{clear:both}.tips{cursor:help;text-decoration:none}img.tips{padding:5px 0 0}#tiptip_holder{display:none;position:absolute;top:0;left:0;z-index:9999999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-7px;margin-left:-6px;border-top-color:#333}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-5px;margin-left:-6px;border-bottom-color:#333}#tiptip_holder.tip_right{padding-left:5px}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;margin-left:-5px;border-right-color:#333}#tiptip_holder.tip_left{padding-right:5px}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;margin-left:-7px;border-left-color:#333}#tiptip_content,.chart-tooltip,.wc_error_tip{color:#fff;font-size:.8em;max-width:150px;background:#333;text-align:center;border-radius:3px;padding:.618em 1em;box-shadow:0 1px 3px rgba(0,0,0,.2)}#tiptip_content code,.chart-tooltip code,.wc_error_tip code{padding:1px;background:#888}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}.wc_error_tip{max-width:20em;line-height:1.8em;position:absolute;white-space:normal;background:#d82223;margin:1.5em 1px 0 -1em;z-index:9999999}.wc_error_tip:after{content:"";display:block;border:8px solid #d82223;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-3px;left:50%;margin:-1em 0 0 -3px}img.ui-datepicker-trigger{vertical-align:middle;margin-top:-1px;cursor:pointer}.wc-metabox-content img.ui-datepicker-trigger,.woocommerce_options_panel img.ui-datepicker-trigger{float:left;margin-right:8px;margin-top:4px;margin-left:4px}#ui-datepicker-div{display:none}.woocommerce-reports-wide.woocommerce-reports-wrap,.woocommerce-reports-wrap.woocommerce-reports-wrap{margin-left:300px;padding-top:18px}.woocommerce-reports-wide.halved,.woocommerce-reports-wrap.halved{margin:0;overflow:hidden;zoom:1}.woocommerce-reports-wide .widefat td,.woocommerce-reports-wrap .widefat td{vertical-align:top;padding:7px}.woocommerce-reports-wide .widefat td .description,.woocommerce-reports-wrap .widefat td .description{margin:4px 0 0}.woocommerce-reports-wide .postbox:after,.woocommerce-reports-wrap .postbox:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce-reports-wide .postbox h3,.woocommerce-reports-wrap .postbox h3{cursor:default!important}.woocommerce-reports-wide .postbox .inside,.woocommerce-reports-wrap .postbox .inside{padding:10px;margin:0!important}.woocommerce-reports-wide .postbox h3.stats_range,.woocommerce-reports-wrap .postbox h3.stats_range{border-bottom-color:#dfdfdf;margin:0;padding:0!important}.woocommerce-reports-wide .postbox h3.stats_range .export_csv,.woocommerce-reports-wrap .postbox h3.stats_range .export_csv{float:right;line-height:26px;border-left:1px solid #dfdfdf;padding:10px;display:block;text-decoration:none}.woocommerce-reports-wide .postbox h3.stats_range .export_csv:before,.woocommerce-reports-wrap .postbox h3.stats_range .export_csv:before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;content:"";text-decoration:none;margin-right:4px}.woocommerce-reports-wide .postbox h3.stats_range ul,.woocommerce-reports-wrap .postbox h3.stats_range ul{list-style:none;margin:0;padding:0;zoom:1;background:#f5f5f5}.woocommerce-reports-wide .postbox h3.stats_range ul:after,.woocommerce-reports-wide .postbox h3.stats_range ul:before,.woocommerce-reports-wrap .postbox h3.stats_range ul:after,.woocommerce-reports-wrap .postbox h3.stats_range ul:before{content:" ";display:table}.woocommerce-reports-wide .postbox h3.stats_range ul:after,.woocommerce-reports-wrap .postbox h3.stats_range ul:after{clear:both}.woocommerce-reports-wide .postbox h3.stats_range ul li,.woocommerce-reports-wrap .postbox h3.stats_range ul li{float:left;margin:0;padding:0;line-height:26px}.woocommerce-reports-wide .postbox h3.stats_range ul li a,.woocommerce-reports-wrap .postbox h3.stats_range ul li a{border-right:1px solid #dfdfdf;padding:10px;display:block;text-decoration:none}.woocommerce-reports-wide .postbox h3.stats_range ul li.active,.woocommerce-reports-wrap .postbox h3.stats_range ul li.active{background:#fff;-webkit-box-shadow:0 4px 0 0 #fff;box-shadow:0 4px 0 0 #fff}.woocommerce-reports-wide .postbox h3.stats_range ul li.active a,.woocommerce-reports-wrap .postbox h3.stats_range ul li.active a{color:#777}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom{padding:9px 10px;vertical-align:middle}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom div,.woocommerce-reports-wide .postbox h3.stats_range ul li.custom form,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom div,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom form{display:inline;margin:0}.woocommerce-reports-wide .postbox h3.stats_range ul li.custom div input.range_datepicker,.woocommerce-reports-wide .postbox h3.stats_range ul li.custom form input.range_datepicker,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom div input.range_datepicker,.woocommerce-reports-wrap .postbox h3.stats_range ul li.custom form input.range_datepicker{padding:0;margin:0 10px 0 0;background:0 0;border:0;color:#777;text-align:center;-webkit-box-shadow:none;box-shadow:none}.woocommerce-reports-wide .postbox .chart-with-sidebar,.woocommerce-reports-wrap .postbox .chart-with-sidebar{padding:12px 12px 12px 249px;margin:0!important}.woocommerce-reports-wide .postbox .chart-with-sidebar .chart-sidebar,.woocommerce-reports-wrap .postbox .chart-with-sidebar .chart-sidebar{width:225px;margin-left:-237px;float:left}.woocommerce-reports-wide .postbox .chart-widgets,.woocommerce-reports-wrap .postbox .chart-widgets{margin:0;padding:0}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget{margin:0 0 1em;background:#fafafa;border:1px solid #dfdfdf}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget h4,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget h4{background:#fff;border:1px solid #dfdfdf;border-left-width:0;border-right-width:0;padding:10px;margin:0;color:#2ea2cc;border-top-width:0;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.count,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table tr.active td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.count,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table tr.active td{background:#f5f5f5}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget h4.section_title:hover,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget h4.section_title:hover{color:#a00}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title{cursor:pointer}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title span,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title span{display:block}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title span:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title span:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;float:right;font-size:.9em;line-height:1.618}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title.open,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title.open{color:#333}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section_title.open span:after,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section_title.open span:after{display:none}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section{border-bottom:1px solid #dfdfdf}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section .select2-container,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section .select2-container{width:100%!important}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .section:last-of-type,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .section:last-of-type{border-radius:0 0 3px 3px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table{width:100%}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td{padding:7px 10px;vertical-align:top;border-top:1px solid #e5e5e5;line-height:1.4em}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.sparkline,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.sparkline,form.report_filters div,form.report_filters input,form.report_filters label,form.report_filters p{vertical-align:middle}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table tr:first-child td,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table tr:first-child td{border-top:0}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.name,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.name{max-width:175px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table td.name a,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table td.name a{word-wrap:break-word}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget table .wc_sparkline,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget table .wc_sparkline{width:32px;height:1em;display:block;float:right}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget form,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget p,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget form,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget p{margin:0;padding:10px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget form .submit,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget p .submit,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget form .submit,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget p .submit{margin-top:10px}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget #product_ids,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget #product_ids{width:100%}.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .select_all,.woocommerce-reports-wide .postbox .chart-widgets li.chart-widget .select_none,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .select_all,.woocommerce-reports-wrap .postbox .chart-widgets li.chart-widget .select_none{float:right;color:#999;margin-left:4px;margin-top:10px}.woocommerce-reports-wide .postbox .chart-legend,.woocommerce-reports-wrap .postbox .chart-legend{list-style:none;margin:0 0 1em;padding:0;border:1px solid #dfdfdf;border-right-width:0;border-bottom-width:0;background:#fff}.woocommerce-reports-wide .postbox .chart-legend li,.woocommerce-reports-wrap .postbox .chart-legend li{border-right:5px solid #aaa;color:#aaa;padding:1em;display:block;margin:0;-webkit-transition:all ease .5s;box-shadow:inset 0 -1px 0 0 #dfdfdf}.woocommerce-reports-wide .postbox .chart-legend li strong,.woocommerce-reports-wrap .postbox .chart-legend li strong{font-size:1.618em;line-height:1.2em;color:#464646;font-weight:400;display:block;font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif}.woocommerce-reports-wide .postbox .chart-legend li strong del,.woocommerce-reports-wrap .postbox .chart-legend li strong del{color:#e74c3c;font-weight:400}.woocommerce-reports-wide .postbox .chart-legend li:hover,.woocommerce-reports-wrap .postbox .chart-legend li:hover{box-shadow:inset 0 -1px 0 0 #dfdfdf,inset 300px 0 0 rgba(156,93,144,.1);border-right:5px solid #9c5d90!important;padding-left:1.5em;color:#9c5d90}.woocommerce-reports-wide .postbox .pie-chart-legend,.woocommerce-reports-wrap .postbox .pie-chart-legend{margin:12px 0 0;overflow:hidden}.woocommerce-reports-wide .postbox .pie-chart-legend li,.woocommerce-reports-wrap .postbox .pie-chart-legend li{float:left;margin:0;padding:6px 0 0;border-top:4px solid #999;text-align:center;box-sizing:border-box;width:50%}.woocommerce-reports-wide .postbox .stat,.woocommerce-reports-wrap .postbox .stat{font-size:1.5em!important;font-weight:700;text-align:center}.woocommerce-reports-wide .postbox .chart-placeholder,.woocommerce-reports-wrap .postbox .chart-placeholder{width:100%;height:650px;overflow:hidden;position:relative}.woocommerce-reports-wide .postbox .chart-prompt,.woocommerce-reports-wrap .postbox .chart-prompt{line-height:650px;margin:0;color:#999;font-size:1.2em;font-style:italic;text-align:center}.woocommerce-reports-wide .postbox .chart-container,.woocommerce-reports-wrap .postbox .chart-container{background:#fff;padding:12px;position:relative;border:1px solid #dfdfdf;border-radius:3px}.woocommerce-reports-wide .postbox .main .chart-legend,.woocommerce-reports-wrap .postbox .main .chart-legend{margin-top:12px}.woocommerce-reports-wide .postbox .main .chart-legend li,.woocommerce-reports-wrap .postbox .main .chart-legend li{border-right:0;margin:0 8px 0 0;float:left;border-top:4px solid #aaa}.woocommerce-reports-wide .woocommerce-reports-main,.woocommerce-reports-wrap .woocommerce-reports-main{float:left;min-width:100%}.woocommerce-reports-wide .woocommerce-reports-main table td,.woocommerce-reports-wrap .woocommerce-reports-main table td{padding:9px}.woocommerce-reports-wide .woocommerce-reports-sidebar,.woocommerce-reports-wrap .woocommerce-reports-sidebar{display:inline;width:281px;margin-left:-300px;clear:both;float:left}.woocommerce-reports-wide .woocommerce-reports-left,.woocommerce-reports-wrap .woocommerce-reports-left{width:49.5%;float:left}.woocommerce-reports-wide .woocommerce-reports-right,.woocommerce-reports-wrap .woocommerce-reports-right{width:49.5%;float:right}.woocommerce-reports-wide .column-wc_actions a.edit,.woocommerce-reports-wide .column-wc_actions a.view,.woocommerce-reports-wrap .column-wc_actions a.edit,.woocommerce-reports-wrap .column-wc_actions a.view{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.woocommerce-reports-wide .column-wc_actions a.edit:after,.woocommerce-reports-wide .column-wc_actions a.view:after,.woocommerce-reports-wrap .column-wc_actions a.edit:after,.woocommerce-reports-wrap .column-wc_actions a.view:after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85}.woocommerce-reports-wide .column-wc_actions a.edit:after,.woocommerce-reports-wrap .column-wc_actions a.edit:after{content:"\e01c"}.woocommerce-reports-wide .column-wc_actions a.view:after,.woocommerce-reports-wrap .column-wc_actions a.view:after{content:"\e010"}.woocommerce-wide-reports-wrap{padding-bottom:11px}.woocommerce-wide-reports-wrap .widefat .export-data{float:right}.woocommerce-wide-reports-wrap .widefat td,.woocommerce-wide-reports-wrap .widefat th{vertical-align:middle;padding:7px}.chart-tooltip{position:absolute;display:none;line-height:1}table.bar_chart{width:100%}table.bar_chart thead th{text-align:left;color:#ccc;padding:6px 0}table.bar_chart tbody th{padding:6px 0;width:25%;text-align:left!important;font-weight:400!important;border-bottom:1px solid #fee}table.bar_chart tbody td{text-align:right;line-height:24px;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td span{color:#8a4b75;display:block}table.bar_chart tbody td span.alt{color:#47a03e;margin-top:6px}table.bar_chart tbody td.bars{position:relative;text-align:left;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td.bars a,table.bar_chart tbody td.bars span{text-decoration:none;clear:both;background:#8a4b75;float:left;display:block;line-height:24px;height:24px;-moz-border-radius:3px;-webkit-border-radius:3px;-o-border-radius:3px;-khtml-border-radius:3px;border-radius:3px}table.bar_chart tbody td.bars span.alt{clear:both;background:#47a03e}table.bar_chart tbody td.bars span.alt span{margin:0;color:#c5dec2!important;text-shadow:0 1px 0 #47a03e;background:0 0}@media only screen and (max-width:1280px){#order_data .order_data_column{width:48%}#order_data .order_data_column:first-child{width:100%}.woocommerce_options_panel .description{display:block;clear:both;margin-left:0}.woocommerce_options_panel .dimensions_field .wrap,.woocommerce_options_panel .short,.woocommerce_options_panel input[type=email].short,.woocommerce_options_panel input[type=number].short,.woocommerce_options_panel input[type=text].short{width:80%}.woocommerce_options_panel .downloadable_files,.woocommerce_variations .downloadable_files{padding:0;clear:both}.woocommerce_options_panel .downloadable_files label,.woocommerce_variations .downloadable_files label{position:static}.woocommerce_options_panel .downloadable_files table,.woocommerce_variations .downloadable_files table{margin:0 12px 24px;width:94%}.woocommerce_options_panel .downloadable_files table .sort,.woocommerce_variations .downloadable_files table .sort{visibility:hidden}.woocommerce_options_panel .woocommerce_variable_attributes .downloadable_files table,.woocommerce_variations .woocommerce_variable_attributes .downloadable_files table{margin:0 0 1em;width:100%}}@media only screen and (max-width:900px){#woocommerce-coupon-data ul.coupon_data_tabs,#woocommerce-product-data .wc-tabs-back,#woocommerce-product-data ul.product_data_tabs{width:10%}#woocommerce-coupon-data .wc-metaboxes-wrapper,#woocommerce-coupon-data .woocommerce_options_panel,#woocommerce-product-data .wc-metaboxes-wrapper,#woocommerce-product-data .woocommerce_options_panel{width:90%}#woocommerce-coupon-data ul.coupon_data_tabs li a,#woocommerce-product-data ul.product_data_tabs li a{position:relative;text-indent:-999px;padding:10px}#woocommerce-coupon-data ul.coupon_data_tabs li a:before,#woocommerce-product-data ul.product_data_tabs li a:before{position:absolute;top:0;right:0;bottom:0;left:0;text-indent:0;text-align:center;line-height:40px;width:100%;height:40px}}@media only screen and (max-width:782px){#wp-excerpt-media-buttons a{font-size:16px;line-height:37px;height:39px;padding:0 20px 0 15px}#wp-excerpt-editor-tools{padding-top:20px;padding-right:15px;overflow:hidden;margin-bottom:-1px}.post-type-product .wp-list-table .is-expanded td:not(.hidden),.post-type-shop_order .wp-list-table .is-expanded td:not(.hidden){overflow:visible}#woocommerce-product-data .checkbox{width:25px}.variations-pagenav{float:none;text-align:center;font-size:18px}.variations-pagenav .displaying-num{font-size:16px}.variations-pagenav a{padding:8px 20px 11px;font-size:18px}.variations-pagenav select{padding:0 20px}.variations-defaults{float:none;text-align:center;margin-top:10px}.post-type-product .wp-list-table .column-thumb{display:none;text-align:left;padding-bottom:0}.post-type-product .wp-list-table .column-thumb:before{display:none!important}.post-type-product .wp-list-table .column-thumb img{max-width:32px}.post-type-product .wp-list-table .toggle-row{top:-28px}.post-type-shop_order .wp-list-table .column-order_status{display:none;text-align:left;padding-bottom:0}.post-type-shop_order .wp-list-table .column-order_status mark{margin:0}.post-type-shop_order .wp-list-table .column-order_status:before{display:none!important}.post-type-shop_order .wp-list-table .column-customer_message,.post-type-shop_order .wp-list-table .column-order_notes{text-align:inherit}.post-type-shop_order .wp-list-table .column-order_notes .note-on{font-size:1.3em;margin:0}.post-type-shop_order .wp-list-table .toggle-row{top:-15px}}@media only screen and (max-width:500px){.woocommerce_options_panel label,.woocommerce_options_panel legend{float:none;width:auto;display:block;margin:0}.woocommerce_options_panel fieldset.form-field,.woocommerce_options_panel p.form-field{padding:5px 20px!important}}.wc-backbone-modal *{box-sizing:border-box}.wc-backbone-modal .wc-backbone-modal-content{position:fixed;top:50%;left:50%;width:500px;background:#fff;z-index:100000}.wc-backbone-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:99900}.wc-backbone-modal-main{padding-bottom:51px}.wc-backbone-modal-main article,.wc-backbone-modal-main header{display:block;position:relative}.wc-backbone-modal-main .wc-backbone-modal-header{height:50px;background:#fcfcfc;padding:0 50px 0 16px;border-bottom:1px solid #ddd}.wc-backbone-modal-main .wc-backbone-modal-header h1{margin:0;font-size:18px;font-weight:700;line-height:50px}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link{cursor:pointer;color:#777;height:50px;width:50px;padding:0;position:absolute;top:0;right:0;text-align:center;border:0;border-left:1px solid #ddd;background-color:transparent;-webkit-transition:color .1s ease-in-out,background .1s ease-in-out;transition:color .1s ease-in-out,background .1s ease-in-out}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:before{font:400 22px/50px dashicons!important;color:#666;display:block;content:'\f335';font-weight:300}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:focus,.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:hover{background:#ddd;border-color:#ccc;color:#000}.wc-backbone-modal-main .wc-backbone-modal-header .modal-close-link:focus{outline:0}.wc-backbone-modal-main article{padding:10px 16px}.wc-backbone-modal-main article .pagination{padding:10px 0 0;text-align:center}.wc-backbone-modal-main footer{position:absolute;left:0;right:0;bottom:0;z-index:100;padding:10px 16px;background:#fcfcfc;border-top:1px solid #dfdfdf;box-shadow:0 -4px 4px -4px rgba(0,0,0,.1)}.wc-backbone-modal-main footer .inner{float:right;line-height:23px}.wc-backbone-modal-main footer .inner .button{margin-bottom:0}.select2-drop{z-index:999999!important}.select2-container-multi .select2-choices .select2-search-field input{font-family:inherit;font-size:inherit;font-weight:inherit;padding:3px 5px}.select2-container{line-height:1.85em;font-size:14px} \ No newline at end of file diff --git a/public/lb-faveo/installer/css/bootstrap-datepicker.css b/public/lb-faveo/installer/css/bootstrap-datepicker.css new file mode 100644 index 000000000..7134641be --- /dev/null +++ b/public/lb-faveo/installer/css/bootstrap-datepicker.css @@ -0,0 +1,512 @@ +/*! + * Datepicker for Bootstrap + * + * Copyright 2012 Stefan Petre + * Improvements by Andrew Rowls + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + */ +.datepicker { + padding: 4px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + direction: ltr; + /*.dow { + border-top: 1px solid #ddd !important; + }*/ +} +.datepicker-inline { + width: 220px; +} +.datepicker.datepicker-rtl { + direction: rtl; +} +.datepicker.datepicker-rtl table tr td span { + float: right; +} +.datepicker-dropdown { + top: 0; + left: 0; +} +.datepicker-dropdown:before { + content: ''; + display: inline-block; + border-left: 7px solid transparent; + border-right: 7px solid transparent; + border-bottom: 7px solid #ccc; + border-top: 0; + border-bottom-color: rgba(0, 0, 0, 0.2); + position: absolute; +} +.datepicker-dropdown:after { + content: ''; + display: inline-block; + border-left: 6px solid transparent; + border-right: 6px solid transparent; + border-bottom: 6px solid #ffffff; + border-top: 0; + position: absolute; +} +.datepicker-dropdown.datepicker-orient-left:before { + left: 6px; +} +.datepicker-dropdown.datepicker-orient-left:after { + left: 7px; +} +.datepicker-dropdown.datepicker-orient-right:before { + right: 6px; +} +.datepicker-dropdown.datepicker-orient-right:after { + right: 7px; +} +.datepicker-dropdown.datepicker-orient-top:before { + top: -7px; +} +.datepicker-dropdown.datepicker-orient-top:after { + top: -6px; +} +.datepicker-dropdown.datepicker-orient-bottom:before { + bottom: -7px; + border-bottom: 0; + border-top: 7px solid #999; +} +.datepicker-dropdown.datepicker-orient-bottom:after { + bottom: -6px; + border-bottom: 0; + border-top: 6px solid #ffffff; +} +.datepicker > div { + display: none; +} +.datepicker.days div.datepicker-days { + display: block; +} +.datepicker.months div.datepicker-months { + display: block; +} +.datepicker.years div.datepicker-years { + display: block; +} +.datepicker table { + margin: 0; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.datepicker td, +.datepicker th { + text-align: center; + width: 20px; + height: 20px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + border: none; +} +.table-striped .datepicker table tr td, +.table-striped .datepicker table tr th { + background-color: transparent; +} +.datepicker table tr td.day:hover, +.datepicker table tr td.day.focused { + background: #eeeeee; + cursor: pointer; +} +.datepicker table tr td.old, +.datepicker table tr td.new { + color: #999999; +} +.datepicker table tr td.disabled, +.datepicker table tr td.disabled:hover { + background: none; + color: #999999; + cursor: default; +} +.datepicker table tr td.today, +.datepicker table tr td.today:hover, +.datepicker table tr td.today.disabled, +.datepicker table tr td.today.disabled:hover { + background-color: #fde19a; + background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a); + background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a)); + background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a); + background-image: -o-linear-gradient(top, #fdd49a, #fdf59a); + background-image: linear-gradient(top, #fdd49a, #fdf59a); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0); + border-color: #fdf59a #fdf59a #fbed50; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + color: #000; +} +.datepicker table tr td.today:hover, +.datepicker table tr td.today:hover:hover, +.datepicker table tr td.today.disabled:hover, +.datepicker table tr td.today.disabled:hover:hover, +.datepicker table tr td.today:active, +.datepicker table tr td.today:hover:active, +.datepicker table tr td.today.disabled:active, +.datepicker table tr td.today.disabled:hover:active, +.datepicker table tr td.today.active, +.datepicker table tr td.today:hover.active, +.datepicker table tr td.today.disabled.active, +.datepicker table tr td.today.disabled:hover.active, +.datepicker table tr td.today.disabled, +.datepicker table tr td.today:hover.disabled, +.datepicker table tr td.today.disabled.disabled, +.datepicker table tr td.today.disabled:hover.disabled, +.datepicker table tr td.today[disabled], +.datepicker table tr td.today:hover[disabled], +.datepicker table tr td.today.disabled[disabled], +.datepicker table tr td.today.disabled:hover[disabled] { + background-color: #fdf59a; +} +.datepicker table tr td.today:active, +.datepicker table tr td.today:hover:active, +.datepicker table tr td.today.disabled:active, +.datepicker table tr td.today.disabled:hover:active, +.datepicker table tr td.today.active, +.datepicker table tr td.today:hover.active, +.datepicker table tr td.today.disabled.active, +.datepicker table tr td.today.disabled:hover.active { + background-color: #fbf069 \9; +} +.datepicker table tr td.today:hover:hover { + color: #000; +} +.datepicker table tr td.today.active:hover { + color: #fff; +} +.datepicker table tr td.range, +.datepicker table tr td.range:hover, +.datepicker table tr td.range.disabled, +.datepicker table tr td.range.disabled:hover { + background: #eeeeee; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.datepicker table tr td.range.today, +.datepicker table tr td.range.today:hover, +.datepicker table tr td.range.today.disabled, +.datepicker table tr td.range.today.disabled:hover { + background-color: #f3d17a; + background-image: -moz-linear-gradient(top, #f3c17a, #f3e97a); + background-image: -ms-linear-gradient(top, #f3c17a, #f3e97a); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a)); + background-image: -webkit-linear-gradient(top, #f3c17a, #f3e97a); + background-image: -o-linear-gradient(top, #f3c17a, #f3e97a); + background-image: linear-gradient(top, #f3c17a, #f3e97a); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0); + border-color: #f3e97a #f3e97a #edde34; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.datepicker table tr td.range.today:hover, +.datepicker table tr td.range.today:hover:hover, +.datepicker table tr td.range.today.disabled:hover, +.datepicker table tr td.range.today.disabled:hover:hover, +.datepicker table tr td.range.today:active, +.datepicker table tr td.range.today:hover:active, +.datepicker table tr td.range.today.disabled:active, +.datepicker table tr td.range.today.disabled:hover:active, +.datepicker table tr td.range.today.active, +.datepicker table tr td.range.today:hover.active, +.datepicker table tr td.range.today.disabled.active, +.datepicker table tr td.range.today.disabled:hover.active, +.datepicker table tr td.range.today.disabled, +.datepicker table tr td.range.today:hover.disabled, +.datepicker table tr td.range.today.disabled.disabled, +.datepicker table tr td.range.today.disabled:hover.disabled, +.datepicker table tr td.range.today[disabled], +.datepicker table tr td.range.today:hover[disabled], +.datepicker table tr td.range.today.disabled[disabled], +.datepicker table tr td.range.today.disabled:hover[disabled] { + background-color: #f3e97a; +} +.datepicker table tr td.range.today:active, +.datepicker table tr td.range.today:hover:active, +.datepicker table tr td.range.today.disabled:active, +.datepicker table tr td.range.today.disabled:hover:active, +.datepicker table tr td.range.today.active, +.datepicker table tr td.range.today:hover.active, +.datepicker table tr td.range.today.disabled.active, +.datepicker table tr td.range.today.disabled:hover.active { + background-color: #efe24b \9; +} +.datepicker table tr td.selected, +.datepicker table tr td.selected:hover, +.datepicker table tr td.selected.disabled, +.datepicker table tr td.selected.disabled:hover { + background-color: #9e9e9e; + background-image: -moz-linear-gradient(top, #b3b3b3, #808080); + background-image: -ms-linear-gradient(top, #b3b3b3, #808080); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080)); + background-image: -webkit-linear-gradient(top, #b3b3b3, #808080); + background-image: -o-linear-gradient(top, #b3b3b3, #808080); + background-image: linear-gradient(top, #b3b3b3, #808080); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0); + border-color: #808080 #808080 #595959; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + color: #fff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.datepicker table tr td.selected:hover, +.datepicker table tr td.selected:hover:hover, +.datepicker table tr td.selected.disabled:hover, +.datepicker table tr td.selected.disabled:hover:hover, +.datepicker table tr td.selected:active, +.datepicker table tr td.selected:hover:active, +.datepicker table tr td.selected.disabled:active, +.datepicker table tr td.selected.disabled:hover:active, +.datepicker table tr td.selected.active, +.datepicker table tr td.selected:hover.active, +.datepicker table tr td.selected.disabled.active, +.datepicker table tr td.selected.disabled:hover.active, +.datepicker table tr td.selected.disabled, +.datepicker table tr td.selected:hover.disabled, +.datepicker table tr td.selected.disabled.disabled, +.datepicker table tr td.selected.disabled:hover.disabled, +.datepicker table tr td.selected[disabled], +.datepicker table tr td.selected:hover[disabled], +.datepicker table tr td.selected.disabled[disabled], +.datepicker table tr td.selected.disabled:hover[disabled] { + background-color: #808080; +} +.datepicker table tr td.selected:active, +.datepicker table tr td.selected:hover:active, +.datepicker table tr td.selected.disabled:active, +.datepicker table tr td.selected.disabled:hover:active, +.datepicker table tr td.selected.active, +.datepicker table tr td.selected:hover.active, +.datepicker table tr td.selected.disabled.active, +.datepicker table tr td.selected.disabled:hover.active { + background-color: #666666 \9; +} +.datepicker table tr td.active, +.datepicker table tr td.active:hover, +.datepicker table tr td.active.disabled, +.datepicker table tr td.active.disabled:hover { + background-color: #006dcc; + background-image: -moz-linear-gradient(top, #0088cc, #0044cc); + background-image: -ms-linear-gradient(top, #0088cc, #0044cc); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); + background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); + background-image: -o-linear-gradient(top, #0088cc, #0044cc); + background-image: linear-gradient(top, #0088cc, #0044cc); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0); + border-color: #0044cc #0044cc #002a80; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + color: #fff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.datepicker table tr td.active:hover, +.datepicker table tr td.active:hover:hover, +.datepicker table tr td.active.disabled:hover, +.datepicker table tr td.active.disabled:hover:hover, +.datepicker table tr td.active:active, +.datepicker table tr td.active:hover:active, +.datepicker table tr td.active.disabled:active, +.datepicker table tr td.active.disabled:hover:active, +.datepicker table tr td.active.active, +.datepicker table tr td.active:hover.active, +.datepicker table tr td.active.disabled.active, +.datepicker table tr td.active.disabled:hover.active, +.datepicker table tr td.active.disabled, +.datepicker table tr td.active:hover.disabled, +.datepicker table tr td.active.disabled.disabled, +.datepicker table tr td.active.disabled:hover.disabled, +.datepicker table tr td.active[disabled], +.datepicker table tr td.active:hover[disabled], +.datepicker table tr td.active.disabled[disabled], +.datepicker table tr td.active.disabled:hover[disabled] { + background-color: #0044cc; +} +.datepicker table tr td.active:active, +.datepicker table tr td.active:hover:active, +.datepicker table tr td.active.disabled:active, +.datepicker table tr td.active.disabled:hover:active, +.datepicker table tr td.active.active, +.datepicker table tr td.active:hover.active, +.datepicker table tr td.active.disabled.active, +.datepicker table tr td.active.disabled:hover.active { + background-color: #003399 \9; +} +.datepicker table tr td span { + display: block; + width: 23%; + height: 54px; + line-height: 54px; + float: left; + margin: 1%; + cursor: pointer; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.datepicker table tr td span:hover { + background: #eeeeee; +} +.datepicker table tr td span.disabled, +.datepicker table tr td span.disabled:hover { + background: none; + color: #999999; + cursor: default; +} +.datepicker table tr td span.active, +.datepicker table tr td span.active:hover, +.datepicker table tr td span.active.disabled, +.datepicker table tr td span.active.disabled:hover { + background-color: #006dcc; + background-image: -moz-linear-gradient(top, #0088cc, #0044cc); + background-image: -ms-linear-gradient(top, #0088cc, #0044cc); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); + background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); + background-image: -o-linear-gradient(top, #0088cc, #0044cc); + background-image: linear-gradient(top, #0088cc, #0044cc); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0); + border-color: #0044cc #0044cc #002a80; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + color: #fff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.datepicker table tr td span.active:hover, +.datepicker table tr td span.active:hover:hover, +.datepicker table tr td span.active.disabled:hover, +.datepicker table tr td span.active.disabled:hover:hover, +.datepicker table tr td span.active:active, +.datepicker table tr td span.active:hover:active, +.datepicker table tr td span.active.disabled:active, +.datepicker table tr td span.active.disabled:hover:active, +.datepicker table tr td span.active.active, +.datepicker table tr td span.active:hover.active, +.datepicker table tr td span.active.disabled.active, +.datepicker table tr td span.active.disabled:hover.active, +.datepicker table tr td span.active.disabled, +.datepicker table tr td span.active:hover.disabled, +.datepicker table tr td span.active.disabled.disabled, +.datepicker table tr td span.active.disabled:hover.disabled, +.datepicker table tr td span.active[disabled], +.datepicker table tr td span.active:hover[disabled], +.datepicker table tr td span.active.disabled[disabled], +.datepicker table tr td span.active.disabled:hover[disabled] { + background-color: #0044cc; +} +.datepicker table tr td span.active:active, +.datepicker table tr td span.active:hover:active, +.datepicker table tr td span.active.disabled:active, +.datepicker table tr td span.active.disabled:hover:active, +.datepicker table tr td span.active.active, +.datepicker table tr td span.active:hover.active, +.datepicker table tr td span.active.disabled.active, +.datepicker table tr td span.active.disabled:hover.active { + background-color: #003399 \9; +} +.datepicker table tr td span.old, +.datepicker table tr td span.new { + color: #999999; +} +.datepicker th.datepicker-switch { + width: 145px; +} +.datepicker thead tr:first-child th, +.datepicker tfoot tr th { + cursor: pointer; +} +.datepicker thead tr:first-child th:hover, +.datepicker tfoot tr th:hover { + background: #eeeeee; +} +.datepicker .cw { + font-size: 10px; + width: 12px; + padding: 0 2px 0 5px; + vertical-align: middle; +} +.datepicker thead tr:first-child th.cw { + cursor: default; + background-color: transparent; +} +.input-append.date .add-on i, +.input-prepend.date .add-on i { + cursor: pointer; + width: 16px; + height: 16px; +} +.input-daterange input { + text-align: center; +} +.input-daterange input:first-child { + -webkit-border-radius: 3px 0 0 3px; + -moz-border-radius: 3px 0 0 3px; + border-radius: 3px 0 0 3px; +} +.input-daterange input:last-child { + -webkit-border-radius: 0 3px 3px 0; + -moz-border-radius: 0 3px 3px 0; + border-radius: 0 3px 3px 0; +} +.input-daterange .add-on { + display: inline-block; + width: auto; + min-width: 16px; + height: 20px; + padding: 4px 5px; + font-weight: normal; + line-height: 20px; + text-align: center; + text-shadow: 0 1px 0 #ffffff; + vertical-align: middle; + background-color: #eeeeee; + border: 1px solid #ccc; + margin-left: -5px; + margin-right: -5px; +} +.datepicker.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + float: left; + display: none; + min-width: 160px; + list-style: none; + background-color: #ffffff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding; + background-clip: padding-box; + *border-right-width: 2px; + *border-bottom-width: 2px; + color: #333333; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + line-height: 20px; +} +.datepicker.dropdown-menu th, +.datepicker.dropdown-menu td { + padding: 4px 5px; +} diff --git a/public/lb-faveo/installer/css/css.css b/public/lb-faveo/installer/css/css.css index 0694e51fa..172c49907 100644 --- a/public/lb-faveo/installer/css/css.css +++ b/public/lb-faveo/installer/css/css.css @@ -33,4 +33,4 @@ font-style: italic; font-weight: 600; src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(https://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsnmlH4evaVTD0ek7Sy0uMg.woff2) format('woff2'); -} \ No newline at end of file +} diff --git a/public/lb-faveo/installer/css/jquery.timepicker.css b/public/lb-faveo/installer/css/jquery.timepicker.css new file mode 100644 index 000000000..cd75f13f8 --- /dev/null +++ b/public/lb-faveo/installer/css/jquery.timepicker.css @@ -0,0 +1,72 @@ +.ui-timepicker-wrapper { + overflow-y: auto; + height: 150px; + width: 6.5em; + background: #fff; + border: 1px solid #ddd; + -webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2); + -moz-box-shadow:0 5px 10px rgba(0,0,0,0.2); + box-shadow:0 5px 10px rgba(0,0,0,0.2); + outline: none; + z-index: 10001; + margin: 0; +} + +.ui-timepicker-wrapper.ui-timepicker-with-duration { + width: 13em; +} + +.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-30, +.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-60 { + width: 11em; +} + +.ui-timepicker-list { + margin: 0; + padding: 0; + list-style: none; +} + +.ui-timepicker-duration { + margin-left: 5px; color: #888; +} + +.ui-timepicker-list:hover .ui-timepicker-duration { + color: #888; +} + +.ui-timepicker-list li { + padding: 3px 0 3px 5px; + cursor: pointer; + white-space: nowrap; + color: #000; + list-style: none; + margin: 0; +} + +.ui-timepicker-list:hover .ui-timepicker-selected { + background: #fff; color: #000; +} + +li.ui-timepicker-selected, +.ui-timepicker-list li:hover, +.ui-timepicker-list .ui-timepicker-selected:hover { + background: #1980EC; color: #fff; +} + +li.ui-timepicker-selected .ui-timepicker-duration, +.ui-timepicker-list li:hover .ui-timepicker-duration { + color: #ccc; +} + +.ui-timepicker-list li.ui-timepicker-disabled, +.ui-timepicker-list li.ui-timepicker-disabled:hover, +.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled { + color: #888; + cursor: default; +} + +.ui-timepicker-list li.ui-timepicker-disabled:hover, +.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled { + background: #f2f2f2; +} diff --git a/public/lb-faveo/installer/css/load-styles.css b/public/lb-faveo/installer/css/load-styles.css index 1b61b354e..8d335e91d 100644 --- a/public/lb-faveo/installer/css/load-styles.css +++ b/public/lb-faveo/installer/css/load-styles.css @@ -1,51 +1,4 @@ @font-face{font-family:dashicons;src:url(../wp-includes/fonts/dashicons.eot)}@font-face{font-family:dashicons;src:url(data:application/font-woff;charset=utf-8;base64,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) format('woff'),url(../wp-includes/fonts/dashicons.ttf) format("truetype"),url(../wp-includes/fonts/dashicons.svg#dashicons) format("svg");font-weight:400;font-style:normal}.dashicons,.dashicons-before:before{display:inline-block;width:20px;height:20px;font-size:20px;line-height:1;font-family:dashicons;text-decoration:inherit;font-weight:400;font-style:normal;vertical-align:top;text-align:center;-webkit-transition:color .1s ease-in 0;transition:color .1s ease-in 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dashicons-menu:before{content:"\f333"}.dashicons-admin-site:before{content:"\f319"}.dashicons-dashboard:before{content:"\f226"}.dashicons-admin-media:before{content:"\f104"}.dashicons-admin-page:before{content:"\f105"}.dashicons-admin-comments:before{content:"\f101"}.dashicons-admin-appearance:before{content:"\f100"}.dashicons-admin-plugins:before{content:"\f106"}.dashicons-admin-users:before{content:"\f110"}.dashicons-admin-tools:before{content:"\f107"}.dashicons-admin-settings:before{content:"\f108"}.dashicons-admin-network:before{content:"\f112"}.dashicons-admin-generic:before{content:"\f111"}.dashicons-admin-home:before{content:"\f102"}.dashicons-admin-collapse:before{content:"\f148"}.dashicons-filter:before{content:"\f536"}.dashicons-admin-customizer:before{content:"\f540"}.dashicons-admin-multisite:before{content:"\f541"}.dashicons-admin-links:before,.dashicons-format-links:before{content:"\f103"}.dashicons-admin-post:before,.dashicons-format-standard:before{content:"\f109"}.dashicons-format-image:before{content:"\f128"}.dashicons-format-gallery:before{content:"\f161"}.dashicons-format-audio:before{content:"\f127"}.dashicons-format-video:before{content:"\f126"}.dashicons-format-chat:before{content:"\f125"}.dashicons-format-status:before{content:"\f130"}.dashicons-format-aside:before{content:"\f123"}.dashicons-format-quote:before{content:"\f122"}.dashicons-welcome-edit-page:before,.dashicons-welcome-write-blog:before{content:"\f119"}.dashicons-welcome-add-page:before{content:"\f133"}.dashicons-welcome-view-site:before{content:"\f115"}.dashicons-welcome-widgets-menus:before{content:"\f116"}.dashicons-welcome-comments:before{content:"\f117"}.dashicons-welcome-learn-more:before{content:"\f118"}.dashicons-image-crop:before{content:"\f165"}.dashicons-image-rotate:before{content:"\f531"}.dashicons-image-rotate-left:before{content:"\f166"}.dashicons-image-rotate-right:before{content:"\f167"}.dashicons-image-flip-vertical:before{content:"\f168"}.dashicons-image-flip-horizontal:before{content:"\f169"}.dashicons-image-filter:before{content:"\f533"}.dashicons-undo:before{content:"\f171"}.dashicons-redo:before{content:"\f172"}.dashicons-editor-bold:before{content:"\f200"}.dashicons-editor-italic:before{content:"\f201"}.dashicons-editor-ul:before{content:"\f203"}.dashicons-editor-ol:before{content:"\f204"}.dashicons-editor-quote:before{content:"\f205"}.dashicons-editor-alignleft:before{content:"\f206"}.dashicons-editor-aligncenter:before{content:"\f207"}.dashicons-editor-alignright:before{content:"\f208"}.dashicons-editor-insertmore:before{content:"\f209"}.dashicons-editor-spellcheck:before{content:"\f210"}.dashicons-editor-distractionfree:before,.dashicons-editor-expand:before{content:"\f211"}.dashicons-editor-contract:before{content:"\f506"}.dashicons-editor-kitchensink:before{content:"\f212"}.dashicons-editor-underline:before{content:"\f213"}.dashicons-editor-justify:before{content:"\f214"}.dashicons-editor-textcolor:before{content:"\f215"}.dashicons-editor-paste-word:before{content:"\f216"}.dashicons-editor-paste-text:before{content:"\f217"}.dashicons-editor-removeformatting:before{content:"\f218"}.dashicons-editor-video:before{content:"\f219"}.dashicons-editor-customchar:before{content:"\f220"}.dashicons-editor-outdent:before{content:"\f221"}.dashicons-editor-indent:before{content:"\f222"}.dashicons-editor-help:before{content:"\f223"}.dashicons-editor-strikethrough:before{content:"\f224"}.dashicons-editor-unlink:before{content:"\f225"}.dashicons-editor-rtl:before{content:"\f320"}.dashicons-editor-break:before{content:"\f474"}.dashicons-editor-code:before{content:"\f475"}.dashicons-editor-paragraph:before{content:"\f476"}.dashicons-editor-table:before{content:"\f535"}.dashicons-align-left:before{content:"\f135"}.dashicons-align-right:before{content:"\f136"}.dashicons-align-center:before{content:"\f134"}.dashicons-align-none:before{content:"\f138"}.dashicons-lock:before{content:"\f160"}.dashicons-unlock:before{content:"\f528"}.dashicons-calendar:before{content:"\f145"}.dashicons-calendar-alt:before{content:"\f508"}.dashicons-visibility:before{content:"\f177"}.dashicons-hidden:before{content:"\f530"}.dashicons-post-status:before{content:"\f173"}.dashicons-edit:before{content:"\f464"}.dashicons-post-trash:before,.dashicons-trash:before{content:"\f182"}.dashicons-sticky:before{content:"\f537"}.dashicons-external:before{content:"\f504"}.dashicons-arrow-up:before{content:"\f142"}.dashicons-arrow-down:before{content:"\f140"}.dashicons-arrow-left:before{content:"\f141"}.dashicons-arrow-right:before{content:"\f139"}.dashicons-arrow-up-alt:before{content:"\f342"}.dashicons-arrow-down-alt:before{content:"\f346"}.dashicons-arrow-left-alt:before{content:"\f340"}.dashicons-arrow-right-alt:before{content:"\f344"}.dashicons-arrow-up-alt2:before{content:"\f343"}.dashicons-arrow-down-alt2:before{content:"\f347"}.dashicons-arrow-left-alt2:before{content:"\f341"}.dashicons-arrow-right-alt2:before{content:"\f345"}.dashicons-leftright:before{content:"\f229"}.dashicons-sort:before{content:"\f156"}.dashicons-randomize:before{content:"\f503"}.dashicons-list-view:before{content:"\f163"}.dashicons-excerpt-view:before,.dashicons-exerpt-view:before{content:"\f164"}.dashicons-grid-view:before{content:"\f509"}.dashicons-hammer:before{content:"\f308"}.dashicons-art:before{content:"\f309"}.dashicons-migrate:before{content:"\f310"}.dashicons-performance:before{content:"\f311"}.dashicons-universal-access:before{content:"\f483"}.dashicons-universal-access-alt:before{content:"\f507"}.dashicons-tickets:before{content:"\f486"}.dashicons-nametag:before{content:"\f484"}.dashicons-clipboard:before{content:"\f481"}.dashicons-heart:before{content:"\f487"}.dashicons-megaphone:before{content:"\f488"}.dashicons-schedule:before{content:"\f489"}.dashicons-wordpress:before{content:"\f120"}.dashicons-wordpress-alt:before{content:"\f324"}.dashicons-pressthis:before{content:"\f157"}.dashicons-update:before{content:"\f463"}.dashicons-screenoptions:before{content:"\f180"}.dashicons-cart:before{content:"\f174"}.dashicons-feedback:before{content:"\f175"}.dashicons-cloud:before{content:"\f176"}.dashicons-translation:before{content:"\f326"}.dashicons-tag:before{content:"\f323"}.dashicons-category:before{content:"\f318"}.dashicons-archive:before{content:"\f480"}.dashicons-tagcloud:before{content:"\f479"}.dashicons-text:before{content:"\f478"}.dashicons-media-archive:before{content:"\f501"}.dashicons-media-audio:before{content:"\f500"}.dashicons-media-code:before{content:"\f499"}.dashicons-media-default:before{content:"\f498"}.dashicons-media-document:before{content:"\f497"}.dashicons-media-interactive:before{content:"\f496"}.dashicons-media-spreadsheet:before{content:"\f495"}.dashicons-media-text:before{content:"\f491"}.dashicons-media-video:before{content:"\f490"}.dashicons-playlist-audio:before{content:"\f492"}.dashicons-playlist-video:before{content:"\f493"}.dashicons-controls-play:before{content:"\f522"}.dashicons-controls-pause:before{content:"\f523"}.dashicons-controls-forward:before{content:"\f519"}.dashicons-controls-skipforward:before{content:"\f517"}.dashicons-controls-back:before{content:"\f518"}.dashicons-controls-skipback:before{content:"\f516"}.dashicons-controls-repeat:before{content:"\f515"}.dashicons-controls-volumeon:before{content:"\f521"}.dashicons-controls-volumeoff:before{content:"\f520"}.dashicons-yes:before{content:"\f147"}.dashicons-no:before{content:"\f158"}.dashicons-no-alt:before{content:"\f335"}.dashicons-plus:before{content:"\f132"}.dashicons-plus-alt:before{content:"\f502"}.dashicons-plus-alt2:before{content:"\f543"}.dashicons-minus:before{content:"\f460"}.dashicons-dismiss:before{content:"\f153"}.dashicons-marker:before{content:"\f159"}.dashicons-star-filled:before{content:"\f155"}.dashicons-star-half:before{content:"\f459"}.dashicons-star-empty:before{content:"\f154"}.dashicons-flag:before{content:"\f227"}.dashicons-info:before{content:"\f348"}.dashicons-warning:before{content:"\f534"}.dashicons-share:before{content:"\f237"}.dashicons-share1:before{content:"\f237"}.dashicons-share-alt:before{content:"\f240"}.dashicons-share-alt2:before{content:"\f242"}.dashicons-twitter:before{content:"\f301"}.dashicons-rss:before{content:"\f303"}.dashicons-email:before{content:"\f465"}.dashicons-email-alt:before{content:"\f466"}.dashicons-facebook:before{content:"\f304"}.dashicons-facebook-alt:before{content:"\f305"}.dashicons-networking:before{content:"\f325"}.dashicons-googleplus:before{content:"\f462"}.dashicons-location:before{content:"\f230"}.dashicons-location-alt:before{content:"\f231"}.dashicons-camera:before{content:"\f306"}.dashicons-images-alt:before{content:"\f232"}.dashicons-images-alt2:before{content:"\f233"}.dashicons-video-alt:before{content:"\f234"}.dashicons-video-alt2:before{content:"\f235"}.dashicons-video-alt3:before{content:"\f236"}.dashicons-vault:before{content:"\f178"}.dashicons-shield:before{content:"\f332"}.dashicons-shield-alt:before{content:"\f334"}.dashicons-sos:before{content:"\f468"}.dashicons-search:before{content:"\f179"}.dashicons-slides:before{content:"\f181"}.dashicons-analytics:before{content:"\f183"}.dashicons-chart-pie:before{content:"\f184"}.dashicons-chart-bar:before{content:"\f185"}.dashicons-chart-line:before{content:"\f238"}.dashicons-chart-area:before{content:"\f239"}.dashicons-groups:before{content:"\f307"}.dashicons-businessman:before{content:"\f338"}.dashicons-id:before{content:"\f336"}.dashicons-id-alt:before{content:"\f337"}.dashicons-products:before{content:"\f312"}.dashicons-awards:before{content:"\f313"}.dashicons-forms:before{content:"\f314"}.dashicons-testimonial:before{content:"\f473"}.dashicons-portfolio:before{content:"\f322"}.dashicons-book:before{content:"\f330"}.dashicons-book-alt:before{content:"\f331"}.dashicons-download:before{content:"\f316"}.dashicons-upload:before{content:"\f317"}.dashicons-backup:before{content:"\f321"}.dashicons-clock:before{content:"\f469"}.dashicons-lightbulb:before{content:"\f339"}.dashicons-microphone:before{content:"\f482"}.dashicons-desktop:before{content:"\f472"}.dashicons-tablet:before{content:"\f471"}.dashicons-smartphone:before{content:"\f470"}.dashicons-phone:before{content:"\f525"}.dashicons-smiley:before{content:"\f328"}.dashicons-index-card:before{content:"\f510"}.dashicons-carrot:before{content:"\f511"}.dashicons-building:before{content:"\f512"}.dashicons-store:before{content:"\f513"}.dashicons-album:before{content:"\f514"}.dashicons-palmtree:before{content:"\f527"}.dashicons-tickets-alt:before{content:"\f524"}.dashicons-money:before{content:"\f526"}.dashicons-thumbs-up:before{content:"\f529"}.dashicons-thumbs-down:before{content:"\f542"}.dashicons-layout:before{content:"\f538"} #wpadminbar *{height:auto;width:auto;margin:0;padding:0;position:static;text-shadow:none;text-transform:none;letter-spacing:normal;font:400 13px/32px "Open Sans",sans-serif;-webkit-border-radius:0;border-radius:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transition:none;transition:none;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}.rtl #wpadminbar *{font-family:Tahoma,sans-serif}html:lang(he-il) .rtl #wpadminbar *{font-family:Arial,sans-serif}#wpadminbar .ab-empty-item{cursor:default;outline:0}#wpadminbar .ab-empty-item,#wpadminbar a.ab-item,#wpadminbar>#wp-toolbar span.ab-label,#wpadminbar>#wp-toolbar span.noticon{color:#eee}#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#wpadminbar ul li:after,#wpadminbar ul li:before{content:normal}#wpadminbar a,#wpadminbar a img,#wpadminbar a img:hover,#wpadminbar a:hover{outline:0;border:none;text-decoration:none;background:0 0}#wpadminbar a:active,#wpadminbar a:focus,#wpadminbar div,#wpadminbar input[type=text],#wpadminbar input[type=password],#wpadminbar input[type=number],#wpadminbar input[type=search],#wpadminbar input[type=email],#wpadminbar input[type=url],#wpadminbar select,#wpadminbar textarea{-webkit-box-shadow:none;box-shadow:none;outline:0}#wpadminbar{direction:ltr;color:#ccc;font:400 13px/32px "Open Sans",sans-serif;height:32px;position:fixed;top:0;left:0;width:100%;min-width:600px;z-index:99999;background:#23282d}#wpadminbar .ab-sub-wrapper,#wpadminbar ul,#wpadminbar ul li{background:0 0;clear:none;list-style:none;margin:0;padding:0;position:relative;text-indent:0;z-index:99999}#wpadminbar ul#wp-admin-bar-root-default>li{margin-right:0}#wpadminbar .quicklinks ul{text-align:left}#wpadminbar li{float:left}#wpadminbar .quicklinks .ab-top-secondary>li{float:right}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks a,#wpadminbar .shortlink-input{height:32px;display:block;padding:0 10px;margin:0}#wpadminbar .quicklinks>ul>li>a{padding:0 8px 0 7px}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{margin:0;padding:0;-webkit-box-shadow:0 3px 5px rgba(0,0,0,.2);box-shadow:0 3px 5px rgba(0,0,0,.2);background:#32373c;display:none;position:absolute;float:none}#wpadminbar .selected .shortlink-input,#wpadminbar li.hover>.ab-sub-wrapper,#wpadminbar.nojs li:hover>.ab-sub-wrapper{display:block}#wpadminbar.ie7 .menupop .ab-sub-wrapper,#wpadminbar.ie7 .shortlink-input{top:32px;left:0}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:100%}#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper{right:0;left:auto}#wpadminbar .ab-submenu{padding:6px 0}#wpadminbar .quicklinks .menupop ul li{float:none}#wpadminbar .quicklinks .menupop ul li a strong{font-weight:700}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar .shortlink-input,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item{line-height:26px;height:26px;white-space:nowrap;min-width:140px}#wpadminbar .shortlink-input{width:200px}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-left:100%;margin-top:-32px}#wpadminbar .ab-top-secondary .menupop li.hover>.ab-sub-wrapper,#wpadminbar .ab-top-secondary .menupop li:hover>.ab-sub-wrapper{margin-left:0;left:inherit;right:100%}#wpadminbar .ab-top-menu>li.hover>.ab-item,#wpadminbar.nojq .quicklinks .ab-top-menu>li>.ab-item:focus,#wpadminbar:not(.mobile) .ab-top-menu>li:hover>.ab-item,#wpadminbar:not(.mobile) .ab-top-menu>li>.ab-item:focus{background:#32373c;color:#00b9eb}#wpadminbar:not(.mobile)>#wp-toolbar a:focus span.ab-label,#wpadminbar:not(.mobile)>#wp-toolbar li:hover span.ab-label,#wpadminbar>#wp-toolbar li.hover span.ab-label{color:#00b9eb}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon{position:relative;float:left;font:400 20px/1 dashicons;speak:none;padding:4px 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:none!important;margin-right:6px}#wpadminbar #adminbarsearch:before,#wpadminbar .ab-icon:before,#wpadminbar .ab-item:before{color:#a0a5aa;color:rgba(240,245,250,.6);position:relative;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out}#wpadminbar .ab-label{display:inline-block;height:32px}#wpadminbar .ab-submenu .ab-item,#wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li a,#wpadminbar.nojs .quicklinks .menupop:hover ul li a{color:#b4b9be;color:rgba(240,245,250,.7)}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a,#wpadminbar .quicklinks .menupop ul li a:focus,#wpadminbar .quicklinks .menupop ul li a:focus strong,#wpadminbar .quicklinks .menupop ul li a:hover,#wpadminbar .quicklinks .menupop ul li a:hover strong,#wpadminbar .quicklinks .menupop.hover ul li a:focus,#wpadminbar .quicklinks .menupop.hover ul li a:hover,#wpadminbar li #adminbarsearch.adminbar-focused:before,#wpadminbar li .ab-item:focus:before,#wpadminbar li a:focus .ab-icon:before,#wpadminbar li.hover .ab-icon:before,#wpadminbar li.hover .ab-item:before,#wpadminbar li:hover #adminbarsearch:before,#wpadminbar li:hover .ab-icon:before,#wpadminbar li:hover .ab-item:before,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover{color:#00b9eb}#wpadminbar.mobile .quicklinks .ab-icon:before,#wpadminbar.mobile .quicklinks .ab-item:before{color:#b4b9be}#wpadminbar.mobile .quicklinks .hover .ab-icon:before,#wpadminbar.mobile .quicklinks .hover .ab-item:before{color:#00b9eb}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before,#wpadminbar .menupop .menupop>.ab-item:before{position:absolute;font:400 17px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar .menupop .menupop>.ab-item{display:block;padding-right:2em}#wpadminbar .menupop .menupop>.ab-item:before{top:1px;right:4px;content:"\f139";color:inherit}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item{padding-left:2em;padding-right:1em}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before{top:1px;left:6px;content:"\f141"}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary{display:block;position:relative;right:auto;margin:0;-webkit-box-shadow:none;box-shadow:none}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu{background:#464b50}#wpadminbar .quicklinks .menupop .ab-sub-secondary>li .ab-item:focus a,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li>a:hover{color:#00b9eb}#wpadminbar .quicklinks a span#ab-updates{background:#eee;color:#32373c;display:inline;padding:2px 5px;font-size:10px;font-weight:700;-webkit-border-radius:10px;border-radius:10px}#wpadminbar .quicklinks a:hover span#ab-updates{background:#fff;color:#000}#wpadminbar .ab-top-secondary{float:right}#wpadminbar ul li:last-child,#wpadminbar ul li:last-child .ab-item{-webkit-box-shadow:none;box-shadow:none}#wp-admin-bar-my-account>ul{min-width:198px}#wp-admin-bar-my-account>.ab-item:before{content:"\f110";top:2px;float:right;margin-left:6px;margin-right:0}#wp-admin-bar-my-account.with-avatar>.ab-item:before{display:none;content:none}#wp-admin-bar-my-account.with-avatar>ul{min-width:270px}#wpadminbar.ie8 #wp-admin-bar-my-account.with-avatar .ab-item{white-space:nowrap}#wpadminbar #wp-admin-bar-user-actions>li{margin-left:16px;margin-right:16px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:6px 0 12px}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin-left:88px}#wpadminbar #wp-admin-bar-user-info{margin-top:6px;margin-bottom:15px;height:auto;background:0 0}#wp-admin-bar-user-info .avatar{position:absolute;left:-72px;top:4px;width:64px;height:64px}#wpadminbar #wp-admin-bar-user-info a{background:0 0;height:auto}#wpadminbar #wp-admin-bar-user-info span{background:0 0;padding:0;height:18px}#wpadminbar #wp-admin-bar-user-info .display-name,#wpadminbar #wp-admin-bar-user-info .username{display:block}#wpadminbar #wp-admin-bar-user-info .username{color:#999;font-size:11px}#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-empty-item img,#wpadminbar #wp-admin-bar-my-account.with-avatar>a img{width:auto;height:16px;padding:0;border:1px solid #82878c;background:#eee;line-height:24px;vertical-align:middle;margin:-4px 0 0 6px;float:none;display:inline}#wpadminbar.ie8 #wp-admin-bar-my-account.with-avatar>.ab-empty-item img,#wpadminbar.ie8 #wp-admin-bar-my-account.with-avatar>a img{width:auto}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{width:15px;height:20px;margin-right:0;padding:6px 0 5px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0 7px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{content:"\f120";top:2px}#wpadminbar .quicklinks li .blavatar{float:left;font:400 16px/1 dashicons!important;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#eee}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a .blavatar,#wpadminbar .quicklinks li a:focus .blavatar,#wpadminbar .quicklinks li a:hover .blavatar{color:#00b9eb}#wpadminbar .quicklinks li .blavatar:before{content:"\f120";height:16px;width:16px;display:inline-block;margin:6px 8px 0 -2px}#wpadminbar #wp-admin-bar-appearance{margin-top:-12px}#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f112";top:2px}#wpadminbar #wp-admin-bar-customize>.ab-item:before{content:"\f540";top:2px}#wpadminbar #wp-admin-bar-edit>.ab-item:before{content:"\f464";top:2px}#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f226"}.wp-admin #wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f102"}#wpadminbar #wp-admin-bar-comments .ab-icon{margin-right:6px}#wpadminbar #wp-admin-bar-comments .ab-icon:before{content:"\f101";top:3px}#wpadminbar #wp-admin-bar-comments .count-0{opacity:.5}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{content:"\f132";top:4px}#wpadminbar #wp-admin-bar-updates .ab-icon:before{content:"\f463";top:2px}#wpadminbar.ie8 #wp-admin-bar-search{display:block;min-width:32px}#wpadminbar #wp-admin-bar-search .ab-item{padding:0;background:0 0}#wpadminbar #adminbarsearch{position:relative;height:32px;padding:0 2px;z-index:1}#wpadminbar #adminbarsearch:before{position:absolute;top:6px;left:5px;z-index:20;font:400 20px/1 dashicons!important;content:"\f179";speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input{position:relative;z-index:30;font:13px/24px "Open Sans",sans-serif;height:24px;width:24px;max-width:none;padding:0 3px 0 24px;margin:0;color:#ccc;background-color:rgba(255,255,255,0);border:none;outline:0;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition-duration:.4s;transition-duration:.4s;-webkit-transition-property:width,background;transition-property:width,background;-webkit-transition-timing-function:ease;transition-timing-function:ease}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input:focus{z-index:10;color:#000;width:200px;background-color:rgba(255,255,255,.9);cursor:text;border:0}#wpadminbar.ie7>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input{margin-top:3px;width:120px}#wpadminbar.ie8>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input{background:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBR‌​AA7)}#wpadminbar.ie8 #adminbarsearch.adminbar-focused:before{content:"\f179 "}#wpadminbar.ie8>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input:focus{background:#fff;z-index:-1}#wpadminbar #adminbarsearch .adminbar-input::-webkit-input-placeholder{color:#999}#wpadminbar #adminbarsearch .adminbar-input:-moz-placeholder{color:#999}#wpadminbar #adminbarsearch .adminbar-input::-moz-placeholder{color:#999}#wpadminbar #adminbarsearch .adminbar-input:-ms-input-placeholder{color:#999}#wpadminbar #adminbarsearch .adminbar-button,.customize-support #wpadminbar .hide-if-customize,.customize-support .hide-if-customize,.customize-support .wp-core-ui .hide-if-customize,.customize-support.wp-core-ui .hide-if-customize,.no-customize-support #wpadminbar .hide-if-no-customize,.no-customize-support .hide-if-no-customize,.no-customize-support .wp-core-ui .hide-if-no-customize,.no-customize-support.wp-core-ui .hide-if-no-customize{display:none}#wpadminbar .screen-reader-text,#wpadminbar .screen-reader-text span{position:absolute;left:-1000em;top:-1000em;height:1px;width:1px;overflow:hidden}#wpadminbar .screen-reader-shortcut{position:absolute;top:-1000em}#wpadminbar .screen-reader-shortcut:focus{left:6px;top:7px;height:auto;width:auto;display:block;font-size:14px;font-weight:700;padding:15px 23px 14px;background:#f1f1f1;color:#0073aa;z-index:100000;line-height:normal;text-decoration:none;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6)}* html #wpadminbar{overflow:hidden;position:absolute}* html #wpadminbar .quicklinks ul li a{float:left}* html #wpadminbar .menupop a span{background-image:none}.no-font-face #wpadminbar ul.ab-top-menu>li>a.ab-item{display:block;width:45px;text-align:center;overflow:hidden;margin:0 3px}.no-font-face #wpadminbar #wp-admin-bar-edit>.ab-item,.no-font-face #wpadminbar #wp-admin-bar-my-sites>.ab-item,.no-font-face #wpadminbar #wp-admin-bar-site-name>.ab-item{text-indent:0}.no-font-face #wpadminbar #wp-admin-bar-wp-logo>.ab-item,.no-font-face #wpadminbar .ab-icon,.no-font-face #wpadminbar .ab-icon:before,.no-font-face #wpadminbar a.ab-item:before{display:none!important}.no-font-face #wpadminbar ul.ab-top-menu>li>a>span.ab-label{display:inline}.no-font-face #wpadminbar #wp-admin-bar-menu-toggle span.ab-icon{display:inline!important}.no-font-face #wpadminbar #wp-admin-bar-menu-toggle span.ab-icon:before{content:"Menu";font:14px/45px sans-serif!important;display:inline-block!important;color:#fff}.no-font-face #wpadminbar #wp-admin-bar-site-name a.ab-item{color:#fff}@media screen and (max-width:782px){#wpadminbar ul#wp-admin-bar-root-default>li,.network-admin #wpadminbar ul#wp-admin-bar-top-secondary>li#wp-admin-bar-my-account{margin-right:0}html #wpadminbar{height:46px;min-width:300px}#wpadminbar *{font:400 14px/32px "Open Sans",sans-serif}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks>ul>li>a{padding:0;height:46px;line-height:46px;width:auto}#wpadminbar .ab-icon{font:40px/1 dashicons!important;margin:0;padding:0;width:52px;height:46px;text-align:center}#wpadminbar .ab-icon:before{text-align:center}#wpadminbar .ab-submenu{padding:0}#wpadminbar #wp-admin-bar-my-account a.ab-item,#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{text-overflow:clip}#wpadminbar .ab-label{display:none}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-top:-46px}#wpadminbar #wp-admin-bar-comments .ab-icon,#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin:0}#wpadminbar .ab-top-menu .menupop .ab-sub-wrapper .menupop>.ab-item{padding-right:30px}#wpadminbar .menupop .menupop>.ab-item:before{top:10px;right:6px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper .ab-item{font-size:16px;padding:8px 16px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper a:empty{display:none}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{padding:0;width:52px;height:46px;text-align:center;vertical-align:top}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{font:28px/1 dashicons!important;top:-3px}#wpadminbar .ab-icon,#wpadminbar .ab-item:before{padding:0}#wpadminbar #wp-admin-bar-customize>.ab-item,#wpadminbar #wp-admin-bar-edit>.ab-item,#wpadminbar #wp-admin-bar-my-account>.ab-item,#wpadminbar #wp-admin-bar-my-sites>.ab-item,#wpadminbar #wp-admin-bar-site-name>.ab-item{text-indent:100%;white-space:nowrap;overflow:hidden;width:52px;padding:0;color:#999;position:relative}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon{padding:0;margin-right:0}#wpadminbar #wp-admin-bar-customize>.ab-item:before,#wpadminbar #wp-admin-bar-edit>.ab-item:before,#wpadminbar #wp-admin-bar-my-account>.ab-item:before,#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{display:block;text-indent:0;font:400 32px/1 dashicons;speak:none;top:7px;width:52px;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar #wp-admin-bar-appearance{margin-top:0}#wpadminbar .quicklinks li .blavatar:before{display:none}#wpadminbar #wp-admin-bar-search{display:none}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{top:0;line-height:53px;height:46px!important;text-align:center;width:52px;display:block}#wpadminbar #wp-admin-bar-updates{text-align:center}#wpadminbar #wp-admin-bar-updates .ab-icon:before{top:3px}#wpadminbar #wp-admin-bar-comments .ab-icon:before{display:block;font-size:34px;height:46px;line-height:47px;top:0}#wp-toolbar>ul>li,#wpadminbar #wp-admin-bar-user-actions.ab-submenu img.avatar{display:none}#wpadminbar #wp-admin-bar-my-account>a{position:relative;white-space:nowrap;text-indent:150%;width:28px;padding:0 10px;overflow:hidden}#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a img{position:absolute;top:13px;right:10px;width:26px;height:26px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:0}#wpadminbar #wp-admin-bar-user-info .display-name{height:auto;font-size:16px;line-height:24px;color:#eee}#wpadminbar #wp-admin-bar-user-info a{padding-top:4px}#wpadminbar #wp-admin-bar-user-info .username{line-height:.8!important;margin-bottom:-2px}#wpadminbar li#wp-admin-bar-comments,#wpadminbar li#wp-admin-bar-customize,#wpadminbar li#wp-admin-bar-edit,#wpadminbar li#wp-admin-bar-menu-toggle,#wpadminbar li#wp-admin-bar-my-account,#wpadminbar li#wp-admin-bar-my-sites,#wpadminbar li#wp-admin-bar-new-content,#wpadminbar li#wp-admin-bar-site-name,#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:block}#wpadminbar li.hover ul li,#wpadminbar li:hover ul li,#wpadminbar li:hover ul li:hover ul li{display:list-item}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content}#wpadminbar #wp-admin-bar-comments,#wpadminbar #wp-admin-bar-edit,#wpadminbar #wp-admin-bar-my-account,#wpadminbar #wp-admin-bar-my-sites,#wpadminbar #wp-admin-bar-new-content,#wpadminbar #wp-admin-bar-site-name,#wpadminbar #wp-admin-bar-updates,#wpadminbar #wp-admin-bar-wp-logo,#wpadminbar .ab-top-menu,#wpadminbar .ab-top-secondary{position:static}#wpadminbar #wp-admin-bar-my-account{float:right}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before{top:10px;left:0}}@media screen and (max-width:600px){#wpadminbar{position:absolute}#wp-responsive-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:400}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{width:100%;left:0}#wpadminbar .menupop .menupop>.ab-item:before{display:none}#wpadminbar #wp-admin-bar-wp-logo.menupop .ab-sub-wrapper{margin-left:0}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper{margin:0;width:100%;top:auto;left:auto;position:static;-webkit-box-shadow:none;box-shadow:none}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper .ab-item{font-size:16px;padding:6px 15px 19px 30px}#wpadminbar li:hover ul li ul li{display:list-item}#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:none}}@media screen and (max-width:400px){#wpadminbar li#wp-admin-bar-comments{display:none}} -.wp-core-ui .button,.wp-core-ui .button-primary,.wp-core-ui .button-secondary{display:inline-block;text-decoration:none;font-size:13px;line-height:26px;height:28px;margin:0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;-webkit-border-radius:3px;border-radius:3px;white-space:nowrap;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wp-core-ui button::-moz-focus-inner,.wp-core-ui input[type=reset]::-moz-focus-inner,.wp-core-ui input[type=button]::-moz-focus-inner,.wp-core-ui input[type=submit]::-moz-focus-inner{border-width:0;border-style:none;padding:0}.wp-core-ui .button-group.button-large .button,.wp-core-ui .button.button-large{height:30px;line-height:28px;padding:0 12px 2px}.wp-core-ui .button-group.button-small .button,.wp-core-ui .button.button-small{height:24px;line-height:22px;padding:0 8px 1px;font-size:11px}.wp-core-ui .button-group.button-hero .button,.wp-core-ui .button.button-hero{font-size:14px;height:46px;line-height:44px;padding:0 36px}.wp-core-ui .button:active,.wp-core-ui .button:focus{outline:0}.wp-core-ui .button.hidden{display:none}.wp-core-ui input[type=reset],.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:focus,.wp-core-ui input[type=reset]:hover{background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;padding:0 2px 1px;width:auto}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:0 1px 0 #ccc;box-shadow:0 1px 0 #ccc;vertical-align:top}.wp-core-ui p .button{vertical-align:baseline}.wp-core-ui .button-secondary:focus,.wp-core-ui .button-secondary:hover,.wp-core-ui .button.focus,.wp-core-ui .button.hover,.wp-core-ui .button:focus,.wp-core-ui .button:hover{background:#fafafa;border-color:#999;color:#23282d}.wp-core-ui .button-link:focus,.wp-core-ui .button-secondary:focus,.wp-core-ui .button.focus,.wp-core-ui .button:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 3px rgba(0,115,170,.8);box-shadow:0 0 3px rgba(0,115,170,.8)}.wp-core-ui .button-secondary:active,.wp-core-ui .button.active,.wp-core-ui .button.active:hover,.wp-core-ui .button:active{background:#eee;border-color:#999;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}.wp-core-ui .button.active:focus{border-color:#5b9dd9;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5),0 0 3px rgba(0,115,170,.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5),0 0 3px rgba(0,115,170,.8)}.wp-core-ui .button-disabled,.wp-core-ui .button-secondary.disabled,.wp-core-ui .button-secondary:disabled,.wp-core-ui .button-secondary[disabled],.wp-core-ui .button.disabled,.wp-core-ui .button:disabled,.wp-core-ui .button[disabled]{color:#a0a5aa!important;border-color:#ddd!important;background:#f7f7f7!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;-webkit-transform:none!important;-ms-transform:none!important;transform:none!important}.wp-core-ui .button-link{margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;border-radius:0;background:0 0;outline:0;cursor:pointer}.wp-core-ui .button-link:focus{outline:#5b9dd9 solid 1px}.wp-core-ui .button-primary{background:#0085ba;border-color:#0073aa #006799 #006799;-webkit-box-shadow:0 1px 0 #006799;box-shadow:0 1px 0 #006799;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #006799,1px 0 1px #006799,0 1px 1px #006799,-1px 0 1px #006799}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary.hover,.wp-core-ui .button-primary:focus,.wp-core-ui .button-primary:hover{background:#008ec2;border-color:#006799;color:#fff}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary:focus{-webkit-box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db}.wp-core-ui .button-primary.active,.wp-core-ui .button-primary.active:focus,.wp-core-ui .button-primary.active:hover,.wp-core-ui .button-primary:active{background:#0073aa;border-color:#006799;-webkit-box-shadow:inset 0 2px 0 #006799;box-shadow:inset 0 2px 0 #006799;vertical-align:top}.wp-core-ui .button-primary-disabled,.wp-core-ui .button-primary.disabled,.wp-core-ui .button-primary:disabled,.wp-core-ui .button-primary[disabled]{color:#66c6e4!important;background:#008ec2!important;border-color:#007cb2!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.wp-core-ui .button.button-primary.button-hero{-webkit-box-shadow:0 2px 0 #006799;box-shadow:0 2px 0 #006799}.wp-core-ui .button.button-primary.button-hero.active,.wp-core-ui .button.button-primary.button-hero.active:focus,.wp-core-ui .button.button-primary.button-hero.active:hover,.wp-core-ui .button.button-primary.button-hero:active{-webkit-box-shadow:inset 0 3px 0 #006799;box-shadow:inset 0 3px 0 #006799}.wp-core-ui .button-group{position:relative;display:inline-block;white-space:nowrap;font-size:0;vertical-align:middle}.wp-core-ui .button-group>.button{display:inline-block;-webkit-border-radius:0;border-radius:0;margin-right:-1px;z-index:10}.wp-core-ui .button-group>.button-primary{z-index:100}.wp-core-ui .button-group>.button:hover{z-index:20}.wp-core-ui .button-group>.button:first-child{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.wp-core-ui .button-group>.button:last-child{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.wp-core-ui .button-group>.button:focus{position:relative;z-index:1}@media screen and (max-width:782px){.wp-core-ui .button,.wp-core-ui .button.button-large,.wp-core-ui .button.button-small,a.preview,input#publish,input#save-post{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}#media-upload.wp-core-ui .button{padding:0 10px 1px;height:24px;line-height:22px;font-size:13px}.media-frame.mode-grid .bulk-select .button{margin-bottom:0}.wp-core-ui .save-post-status.button{position:relative;margin:0 14px 0 10px}.wp-core-ui.wp-customizer .button{padding:0 10px 1px;font-size:13px;line-height:26px;height:28px;margin:0;vertical-align:inherit}.interim-login .button.button-large{height:30px;line-height:28px;padding:0 12px 2px}} -a img,abbr,fieldset{border:0}#logo,h1,h2{padding:0 0 7px}#logo a,.form-table th p,h1,h2{font-weight:400}html{background:#f1f1f1;margin:0 20px}body{background:#fff;color:#444;font-family:"Open Sans",sans-serif;margin:140px auto 25px;padding:20px 20px 10px;max-width:75%;-webkit-font-smoothing:subpixel-antialiased;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.13);box-shadow:0 1px 3px rgba(0,0,0,.13)}a{color:#0073aa}a:active,a:hover{color:#00a0d2}a:focus{color:#124964;-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.ie8 a:focus{outline:#5b9dd9 solid 1px}h1,h2{border-bottom:1px solid #dedede;clear:both;color:#666;font-size:24px}h3{font-size:16px}dd,dt,li,p{padding-bottom:2px;font-size:14px;line-height:1.5}.code,code{font-family:Consolas,Monaco,monospace}input,submit,textarea{font-family:"Open Sans",sans-serif}dl,ol,ul{padding:5px 5px 5px 22px}abbr{font-variant:normal}fieldset{padding:0;margin:0}label{cursor:pointer}#logo{margin:6px 0 14px;border-bottom:none;text-align:center}#logo a{background-image:url(images/w-logo-blue.png?ver=20131202);background-image:none,url(images/wordpress-logo.svg?ver=20131107);-webkit-background-size:84px;background-size:84px;background-position:center top;background-repeat:no-repeat;color:#999;height:84px;font-size:20px;line-height:1.3em;margin:-130px auto 25px;padding:0;text-decoration:none;width:84px;text-indent:-9999px;outline:0;overflow:hidden;display:block}#pass1-text,.pw-weak,.show-password #pass1{display:none}#logo a:focus{-webkit-box-shadow:none;box-shadow:none}.step{margin:20px 0 15px}.step,th{text-align:left;padding:0}.language-chooser.wp-core-ui .step .button.button-large{height:36px;vertical-align:middle;font-size:14px}.form-table td,.form-table th{padding:10px 20px 10px 0;vertical-align:top;font-size:14px}textarea{border:1px solid #dfdfdf;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.form-table{border-collapse:collapse;margin-top:1em;width:100%}.form-table td{margin-bottom:9px}.form-table th{text-align:left;width:140px}.form-table code{line-height:18px;font-size:14px}.form-table p{margin:4px 0 0;font-size:11px}.form-table input{line-height:20px;font-size:15px;padding:3px 5px;border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07)}.form-table input[type=email],.form-table input[type=password],.form-table input[type=text],.form-table input[type=url]{width:206px}.form-table.install-success td,.form-table.install-success th{vertical-align:middle;padding:16px 20px 16px 0}.form-table.install-success td p{margin:0;font-size:14px}.form-table.install-success td code{margin:0;font-size:18px}#error-page{margin-top:50px}#error-page p{font-size:14px;line-height:18px;margin:25px 0 20px}#error-page code,.code{font-family:Consolas,Monaco,monospace}.wp-hide-pw>.dashicons{line-height:inherit}#pass-strength-result{background-color:#eee;border:1px solid #ddd;color:#23282d;margin:-2px 5px 5px 0;padding:3px 5px;text-align:center;width:218px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;opacity:0}#pass-strength-result.short{background-color:#f1adad;border-color:#e35b5b;opacity:1}#pass-strength-result.bad{background-color:#fbc5a9;border-color:#f78b53;opacity:1}#pass-strength-result.good{background-color:#ffe399;border-color:#ffc733;opacity:1}#pass-strength-result.strong{background-color:#c1e1b9;border-color:#83c373;opacity:1}#pass1-text.short,#pass1.short{border-color:#e35b5b}#pass1-text.bad,#pass1.bad{border-color:#f78b53}#pass1-text.good,#pass1.good{border-color:#ffc733}#pass1-text.strong,#pass1.strong{border-color:#83c373}.message{border:1px solid #c00;padding:.5em .7em;margin:5px 0 15px;background-color:#ffebe8}#admin_email,#dbhost,#dbname,#pass1,#pass2,#prefix,#pwd,#uname,#user_login{direction:ltr}.show-password #pass1-text{display:inline-block}.form-table span.description.important{font-size:12px}.rtl input,.rtl submit,.rtl textarea,body.rtl{font-family:Tahoma,sans-serif}.language-chooser select,:lang(he-il) .rtl input,:lang(he-il) .rtl submit,:lang(he-il) .rtl textarea,:lang(he-il) body.rtl{font-family:Arial,sans-serif}@media only screen and (max-width:799px){body{margin-top:115px}#logo a{margin:-125px auto 30px}}@media screen and (max-width:782px){.form-table{margin-top:0}.form-table td,.form-table th{display:block;width:auto;vertical-align:middle}.form-table th{padding:20px 0 0}.form-table td{padding:5px 0;border:0;margin:0}input,textarea{font-size:16px}.form-table span.description,.form-table td input[type=text],.form-table td input[type=email],.form-table td input[type=url],.form-table td input[type=password],.form-table td select,.form-table td textarea{width:100%;font-size:16px;line-height:1.5;padding:7px 10px;display:block;max-width:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}}body.language-chooser{max-width:300px}.language-chooser select{padding:8px;width:100%;display:block;border:1px solid #ddd;background-color:#fff;color:#32373c;font-size:16px;font-weight:400}.language-chooser p{text-align:right}.screen-reader-input,.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.spinner{background:url(images/spinner.gif) no-repeat;-webkit-background-size:20px 20px;background-size:20px 20px;visibility:hidden;opacity:.7;filter:alpha(opacity=70);width:20px;height:20px;margin:2px 5px 0}.step .spinner{display:inline-block;margin-top:8px;margin-right:15px;vertical-align:top}.button-secondary.hide-if-no-js,.hide-if-no-js{display:none}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.spinner{background-image:url(images/spinner-2x.gif)}} - - -/* - * Component: modal - * ---------------- - */ -.modal { - background: rgba(0, 0, 0, 0.3); -} -.modal-content { - border-radius: 0; - -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125) !important; - box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125) !important; - border: 0; -} -@media (min-width: 768px) { - .modal-content { - -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125) !important; - box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125) !important; - } -} -.modal-header { - border-bottom-color: #f4f4f4; -} -.modal-footer { - border-top-color: #f4f4f4; -} -.modal-primary .modal-header, -.modal-primary .modal-footer { - border-color: #307095; -} -.modal-warning .modal-header, -.modal-warning .modal-footer { - border-color: #c87f0a; -} -.modal-info .modal-header, -.modal-info .modal-footer { - border-color: #0097bc; -} -.modal-success .modal-header, -.modal-success .modal-footer { - border-color: #00733e; -} -.modal-danger .modal-header, -.modal-danger .modal-footer { - border-color: #c23321; -} +.wp-core-ui .button,.wp-core-ui .button-primary,.wp-core-ui .button-secondary{display:inline-block;text-decoration:none;font-size:13px;line-height:26px;height:28px;margin:0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;-webkit-border-radius:3px;border-radius:3px;white-space:nowrap;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wp-core-ui button::-moz-focus-inner,.wp-core-ui input[type=reset]::-moz-focus-inner,.wp-core-ui input[type=button]::-moz-focus-inner,.wp-core-ui input[type=submit]::-moz-focus-inner{border-width:0;border-style:none;padding:0}.wp-core-ui .button-group.button-large .button,.wp-core-ui .button.button-large{height:30px;line-height:28px;padding:0 12px 2px}.wp-core-ui .button-group.button-small .button,.wp-core-ui .button.button-small{height:24px;line-height:22px;padding:0 8px 1px;font-size:11px}.wp-core-ui .button-group.button-hero .button,.wp-core-ui .button.button-hero{font-size:14px;height:46px;line-height:44px;padding:0 36px}.wp-core-ui .button:active,.wp-core-ui .button:focus{outline:0}.wp-core-ui .button.hidden{display:none}.wp-core-ui input[type=reset],.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:focus,.wp-core-ui input[type=reset]:hover{background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;padding:0 2px 1px;width:auto}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:0 1px 0 #ccc;box-shadow:0 1px 0 #ccc;vertical-align:top}.wp-core-ui p .button{vertical-align:baseline}.wp-core-ui .button-secondary:focus,.wp-core-ui .button-secondary:hover,.wp-core-ui .button.focus,.wp-core-ui .button.hover,.wp-core-ui .button:focus,.wp-core-ui .button:hover{background:#fafafa;border-color:#999;color:#23282d}.wp-core-ui .button-link:focus,.wp-core-ui .button-secondary:focus,.wp-core-ui .button.focus,.wp-core-ui .button:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 3px rgba(0,115,170,.8);box-shadow:0 0 3px rgba(0,115,170,.8)}.wp-core-ui .button-secondary:active,.wp-core-ui .button.active,.wp-core-ui .button.active:hover,.wp-core-ui .button:active{background:#eee;border-color:#999;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}.wp-core-ui .button.active:focus{border-color:#5b9dd9;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5),0 0 3px rgba(0,115,170,.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5),0 0 3px rgba(0,115,170,.8)}.wp-core-ui .button-disabled,.wp-core-ui .button-secondary.disabled,.wp-core-ui .button-secondary:disabled,.wp-core-ui .button-secondary[disabled],.wp-core-ui .button.disabled,.wp-core-ui .button:disabled,.wp-core-ui .button[disabled]{color:#a0a5aa!important;border-color:#ddd!important;background:#f7f7f7!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;-webkit-transform:none!important;-ms-transform:none!important;transform:none!important}.wp-core-ui .button-link{margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;border-radius:0;background:0 0;outline:0;cursor:pointer}.wp-core-ui .button-link:focus{outline:#5b9dd9 solid 1px}.wp-core-ui .button-primary{background:#0085ba;border-color:#0073aa #006799 #006799;-webkit-box-shadow:0 1px 0 #006799;box-shadow:0 1px 0 #006799;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #006799,1px 0 1px #006799,0 1px 1px #006799,-1px 0 1px #006799}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary.hover,.wp-core-ui .button-primary:focus,.wp-core-ui .button-primary:hover{background:#008ec2;border-color:#006799;color:#fff}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary:focus{-webkit-box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db}.wp-core-ui .button-primary.active,.wp-core-ui .button-primary.active:focus,.wp-core-ui .button-primary.active:hover,.wp-core-ui .button-primary:active{background:#0073aa;border-color:#006799;-webkit-box-shadow:inset 0 2px 0 #006799;box-shadow:inset 0 2px 0 #006799;vertical-align:top}.wp-core-ui .button-primary-disabled,.wp-core-ui .button-primary.disabled,.wp-core-ui .button-primary:disabled,.wp-core-ui .button-primary[disabled]{color:#EA4242!important;background:#008ec2!important;border-color:#007cb2!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.wp-core-ui .button.button-primary.button-hero{-webkit-box-shadow:0 2px 0 #006799;box-shadow:0 2px 0 #006799}.wp-core-ui .button.button-primary.button-hero.active,.wp-core-ui .button.button-primary.button-hero.active:focus,.wp-core-ui .button.button-primary.button-hero.active:hover,.wp-core-ui .button.button-primary.button-hero:active{-webkit-box-shadow:inset 0 3px 0 #006799;box-shadow:inset 0 3px 0 #006799}.wp-core-ui .button-group{position:relative;display:inline-block;white-space:nowrap;font-size:0;vertical-align:middle}.wp-core-ui .button-group>.button{display:inline-block;-webkit-border-radius:0;border-radius:0;margin-right:-1px;z-index:10}.wp-core-ui .button-group>.button-primary{z-index:100}.wp-core-ui .button-group>.button:hover{z-index:20}.wp-core-ui .button-group>.button:first-child{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.wp-core-ui .button-group>.button:last-child{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.wp-core-ui .button-group>.button:focus{position:relative;z-index:1}@media screen and (max-width:782px){.wp-core-ui .button,.wp-core-ui .button.button-large,.wp-core-ui .button.button-small,a.preview,input#publish,input#save-post{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}#media-upload.wp-core-ui .button{padding:0 10px 1px;height:24px;line-height:22px;font-size:13px}.media-frame.mode-grid .bulk-select .button{margin-bottom:0}.wp-core-ui .save-post-status.button{position:relative;margin:0 14px 0 10px}.wp-core-ui.wp-customizer .button{padding:0 10px 1px;font-size:13px;line-height:26px;height:28px;margin:0;vertical-align:inherit}.interim-login .button.button-large{height:30px;line-height:28px;padding:0 12px 2px}} +a img,abbr,fieldset{border:0}#logo,h1,h2{padding:0 0 7px}#logo a,.form-table th p,h1,h2{font-weight:400}html{background:#f1f1f1;margin:0 20px}body{background:#fff;color:#444;font-family:"Open Sans",sans-serif;margin:140px auto 25px;padding:20px 20px 10px;max-width: 70%;-webkit-font-smoothing:subpixel-antialiased;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.13);box-shadow:0 1px 3px rgba(0,0,0,.13)}a{color:#0073aa}a:active,a:hover{color:#00a0d2}a:focus{color:#124964;-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.ie8 a:focus{outline:#5b9dd9 solid 1px}h1,h2{border-bottom:1px solid #dedede;clear:both;color:#666;font-size:24px}h3{font-size:16px}dd,dt,li,p{padding-bottom:2px;font-size:14px;line-height:1.5}.code,code{font-family:Consolas,Monaco,monospace}input,submit,textarea{font-family:"Open Sans",sans-serif}dl,ol,ul{padding:5px 5px 5px 22px}abbr{font-variant:normal}fieldset{padding:0;margin:0}label{cursor:pointer}#logo{margin:6px 0 14px;border-bottom:none;text-align:center}#logo a{background-image:url(images/w-logo-blue.png?ver=20131202);background-image:none,url(images/wordpress-logo.svg?ver=20131107);-webkit-background-size:84px;background-size:84px;background-position:center top;background-repeat:no-repeat;color:#999;height:84px;font-size:20px;line-height:1.3em;margin:-130px auto 25px;padding:0;text-decoration:none;width:84px;text-indent:-9999px;outline:0;overflow:hidden;display:block}#pass1-text,.pw-weak,.show-password #pass1{display:none}#logo a:focus{-webkit-box-shadow:none;box-shadow:none}.step{margin:20px 0 15px}.step,th{text-align:left;padding:0}.language-chooser.wp-core-ui .step .button.button-large{height:36px;vertical-align:middle;font-size:14px}.form-table td,.form-table th{padding:10px 20px 10px 0;vertical-align:top;font-size:14px}textarea{border:1px solid #dfdfdf;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.form-table{border-collapse:collapse;margin-top:1em;width:100%}.form-table td{margin-bottom:9px}.form-table th{text-align:left;width:140px}.form-table code{line-height:18px;font-size:14px}.form-table p{margin:4px 0 0;font-size:11px}.form-table input{line-height:20px;font-size:15px;padding:3px 5px;border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07)}.form-table input[type=email],.form-table input[type=password],.form-table input[type=text],.form-table input[type=url]{width:206px}.form-table.install-success td,.form-table.install-success th{vertical-align:middle;padding:16px 20px 16px 0}.form-table.install-success td p{margin:0;font-size:14px}.form-table.install-success td code{margin:0;font-size:18px}#error-page{margin-top:50px}#error-page p{font-size:14px;line-height:18px;margin:25px 0 20px}#error-page code,.code{font-family:Consolas,Monaco,monospace}.wp-hide-pw>.dashicons{line-height:inherit}#pass-strength-result{background-color:#eee;border:1px solid #ddd;color:#23282d;margin:-2px 5px 5px 0;padding:3px 5px;text-align:center;width:218px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;opacity:0}#pass-strength-result.short{background-color:#f1adad;border-color:#e35b5b;opacity:1}#pass-strength-result.bad{background-color:#fbc5a9;border-color:#f78b53;opacity:1}#pass-strength-result.good{background-color:#ffe399;border-color:#ffc733;opacity:1}#pass-strength-result.strong{background-color:#c1e1b9;border-color:#83c373;opacity:1}#pass1-text.short,#pass1.short{border-color:#e35b5b}#pass1-text.bad,#pass1.bad{border-color:#f78b53}#pass1-text.good,#pass1.good{border-color:#ffc733}#pass1-text.strong,#pass1.strong{border-color:#83c373}.message{border:1px solid #c00;padding:.5em .7em;margin:5px 0 15px;background-color:#ffebe8}#admin_email,#dbhost,#dbname,#pass1,#pass2,#prefix,#pwd,#uname,#user_login{direction:ltr}.show-password #pass1-text{display:inline-block}.form-table span.description.important{font-size:12px}.rtl input,.rtl submit,.rtl textarea,body.rtl{font-family:Tahoma,sans-serif}.language-chooser select,:lang(he-il) .rtl input,:lang(he-il) .rtl submit,:lang(he-il) .rtl textarea,:lang(he-il) body.rtl{font-family:Arial,sans-serif}@media only screen and (max-width:799px){body{margin-top:115px}#logo a{margin:-125px auto 30px}}@media screen and (max-width:782px){.form-table{margin-top:0}.form-table td,.form-table th{display:block;width:auto;vertical-align:middle}.form-table th{padding:20px 0 0}.form-table td{padding:5px 0;border:0;margin:0}input,textarea{font-size:16px}.form-table span.description,.form-table td input[type=text],.form-table td input[type=email],.form-table td input[type=url],.form-table td input[type=password],.form-table td select,.form-table td textarea{width:100%;font-size:16px;line-height:1.5;padding:7px 10px;display:block;max-width:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}}body.language-chooser{max-width:300px}.language-chooser select{padding:8px;width:100%;display:block;border:1px solid #ddd;background-color:#fff;color:#32373c;font-size:16px;font-weight:400}.language-chooser p{text-align:right}.screen-reader-input,.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.spinner{background:url(images/spinner.gif) no-repeat;-webkit-background-size:20px 20px;background-size:20px 20px;visibility:hidden;opacity:.7;filter:alpha(opacity=70);width:20px;height:20px;margin:2px 5px 0}.step .spinner{display:inline-block;margin-top:8px;margin-right:15px;vertical-align:top}.button-secondary.hide-if-no-js,.hide-if-no-js{display:none}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.spinner{background-image:url(images/spinner-2x.gif)}} diff --git a/public/lb-faveo/installer/css/style.css b/public/lb-faveo/installer/css/style.css new file mode 100644 index 000000000..c74f8181b --- /dev/null +++ b/public/lb-faveo/installer/css/style.css @@ -0,0 +1,114 @@ +.modalDialog { + position: fixed; + font-family: Arial, Helvetica, sans-serif; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: rgba(0, 0, 0, 0.8); + z-index: 99999; + opacity: 0; + -webkit-transition: opacity 400ms ease-in; + -moz-transition: opacity 400ms ease-in; + transition: opacity 400ms ease-in; + pointer-events: none; + overflow-y: scroll; +} +.modalDialog:target { + opacity: 1; + pointer-events: auto; +} +.modal-body { + overflow-y: scroll; + height: 500px; +} +.modalDialog > div { + width: 60%; + position: relative; + margin: 20px auto; + padding: 5px 20px 13px 20px; + border-radius: 10px; + background: #fff; + background: -moz-linear-gradient(#fff); + background: -webkit-linear-gradient(#fff); + background: -o-linear-gradient(#fff); +} +.close { + background: #606061; + color: #FFFFFF; + line-height: 25px; + position: absolute; + right: -12px; + text-align: center; + top: -10px; + width: 24px; + text-decoration: none; + font-weight: bold; + -webkit-border-radius: 12px; + -moz-border-radius: 12px; + border-radius: 12px; + -moz-box-shadow: 1px 1px 3px #000; + -webkit-box-shadow: 1px 1px 3px #000; + box-shadow: 1px 1px 3px #000; +} +.close:hover { + background: #00d9ff; +} +/*For gradient background */ + +/*Use only this id inorder to bring the gradient effect for future purpose*/ + +/*UI Developer- Karthik Sengottaian*/ + + + +#gradient { + width: 100%; + height: 100%; + padding: 0px; + margin: 0px; +} +.ok { + color: #4cae4c; + + text-align: center; +} +.error { + color: #d43f3a; + + text-align: center; +} +.warning { + color: #eea236; + + text-align: center; +} +a{ + text-decoration: none; +} +/*For gradient background */ + + +/*--Tool Tip-- */ + +a.tooltip {outline:none; } +a.tooltip strong {line-height:30px;} +a.tooltip:hover {text-decoration:none;} +a.tooltip span { + z-index:10;display:none; padding:14px 20px; + margin-top:-30px; margin-left:28px; + width:300px; line-height:16px; +} +a.tooltip:hover span{ + display:inline; position:absolute; color:#111; + border:1px solid #DCA; background:#fffAF0;} +.callout {z-index:20;position:absolute;top:30px;border:0;left:-12px;} + +/*CSS3 extras*/ +a.tooltip span +{ + border-radius:4px; + box-shadow: 5px 5px 8px #CCC; +} + +/*--Tool Tip-- */ \ No newline at end of file diff --git a/public/lb-faveo/installer/css/wc-setup.css b/public/lb-faveo/installer/css/wc-setup.css index cc5d78459..97757dcde 100644 --- a/public/lb-faveo/installer/css/wc-setup.css +++ b/public/lb-faveo/installer/css/wc-setup.css @@ -1 +1 @@ -.wc-setup-content p,.wc-setup-content table{font-size:1em;line-height:1.75em;color:#666}body{margin:60px auto 24px;box-shadow:none;background:#f1f1f1;padding:0}#wc-logo{border:0;margin:0 0 24px;padding:0;text-align:center}#wc-logo img{max-width:50%}.wc-setup-content{box-shadow:0 1px 3px rgba(0,0,0,.13);padding:24px 24px 0;background:#fff;overflow:hidden;zoom:1}.wc-setup-content h1,.wc-setup-content h2,.wc-setup-content h3,.wc-setup-content table{margin:0 0 24px;border:0;padding:0;color:#666;clear:none}.wc-setup-content p{margin:0 0 24px}.wc-setup-content a{color:#a16696}.wc-setup-content a:focus,.wc-setup-content a:hover{color:#111}.wc-setup-content .form-table th{width:35%;vertical-align:top;font-weight:400}.wc-setup-content .form-table td{vertical-align:top}.wc-setup-content .form-table td input,.wc-setup-content .form-table td select{width:100%;box-sizing:border-box}.wc-setup-content .form-table td input[size]{width:auto}.wc-setup-content .form-table td .description{line-height:1.5em;display:block;margin-top:.25em;color:#999;font-style:italic}.wc-setup-content .form-table td .input-checkbox,.wc-setup-content .form-table td .input-radio{width:auto;box-sizing:inherit;padding:inherit;margin:0 .5em 0 0;box-shadow:none}.wc-setup-content .form-table .section_title td{padding:0}.wc-setup-content .form-table .section_title td h2,.wc-setup-content .form-table .section_title td p{margin:12px 0 0}.wc-setup-content .form-table td,.wc-setup-content .form-table th{padding:12px 0;margin:0;border:0}.wc-setup-content .form-table td:first-child,.wc-setup-content .form-table th:first-child{padding-right:1em}.wc-setup-content .form-table table.tax-rates{width:100%;font-size:.92em}.wc-setup-content .form-table table.tax-rates th{padding:0;text-align:center;width:auto;vertical-align:middle}.wc-setup-content .form-table table.tax-rates td{border:1px solid #eee;padding:6px;text-align:center;vertical-align:middle}.wc-setup-content .form-table table.tax-rates td input{outline:0;border:0;padding:0;box-shadow:none;text-align:center}.wc-setup-content .form-table table.tax-rates td.sort{cursor:move;color:#ccc}.wc-setup-content .form-table table.tax-rates td.sort:before{content:"\f333";font-family:dashicons}.wc-setup-content .form-table table.tax-rates .add{padding:1em 0 0 1em;line-height:1em;font-size:1em;width:0;margin:6px 0 0;height:0;overflow:hidden;position:relative;display:inline-block}.wc-setup-content .form-table table.tax-rates .add:before{content:"\f502";font-family:dashicons;position:absolute;left:0;top:0}.wc-setup-content .form-table table.tax-rates .remove{padding:1em 0 0 1em;line-height:1em;font-size:1em;width:0;margin:0;height:0;overflow:hidden;position:relative;display:inline-block}.wc-setup-content .form-table table.tax-rates .remove:before{content:"\f182";font-family:dashicons;position:absolute;left:0;top:0}.wc-setup-content .wc-setup-pages{width:100%;border-top:1px solid #eee}.wc-setup-content .wc-setup-pages thead th{display:none}.wc-setup-content .wc-setup-pages .page-name{width:30%;font-weight:700}.wc-setup-content .wc-setup-pages td,.wc-setup-content .wc-setup-pages th{padding:14px 0;border-bottom:1px solid #eee}.wc-setup-content .wc-setup-pages td:first-child,.wc-setup-content .wc-setup-pages th:first-child{padding-right:9px}.wc-setup-content .wc-setup-pages th{padding-top:0}.wc-setup-content .wc-setup-pages .page-options p{color:#777;margin:6px 0 0 24px;line-height:1.75em}.wc-setup-content .wc-setup-pages .page-options p input{vertical-align:middle;margin:1px 0 0;height:1.75em;width:1.75em;line-height:1.75em}.wc-setup-content .wc-setup-pages .page-options p label{line-height:1}@media screen and (max-width:782px){.wc-setup-content .form-table tbody th{width:auto}}.wc-setup-content .twitter-share-button{float:right}.wc-setup-content .wc-setup-next-steps{overflow:hidden;margin:0 0 24px}.wc-setup-content .wc-setup-next-steps h2{margin-bottom:12px}.wc-setup-content .wc-setup-next-steps .wc-setup-next-steps-first{float:left;width:50%;box-sizing:border-box}.wc-setup-content .wc-setup-next-steps .wc-setup-next-steps-last{float:right;width:50%;box-sizing:border-box}.wc-setup-content .wc-setup-next-steps ul{padding:0 2em 0 0;list-style:none;margin:0 0 -.75em}.wc-setup-content .wc-setup-next-steps ul li a{display:block;padding:0 0 .75em}.wc-setup-content .wc-setup-next-steps ul .setup-product a{background-color:#a16696;border-color:#a16696;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);font-size:1em;height:auto;line-height:1.75em;margin:0 0 .75em;opacity:1;padding:1em;text-align:center;text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f}.wc-setup-content .wc-setup-next-steps ul li a:before{color:#82878c;font:400 20px/1 dashicons;speak:none;display:inline-block;padding:0 10px 0 0;top:1px;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important;vertical-align:top}.wc-setup-content .wc-setup-next-steps ul .learn-more a:before{content:"\f105"}.wc-setup-content .wc-setup-next-steps ul .video-walkthrough a:before{content:"\f126"}.wc-setup-content .wc-setup-next-steps ul .sidekick a:before{content:"\f118"}.wc-setup-content .wc-setup-next-steps ul .newsletter a:before{content:"\f465"}.wc-setup-content .updated,.wc-setup-content .woocommerce-language-pack,.wc-setup-content .woocommerce-tracker{padding:24px 24px 0;margin:0 0 24px;overflow:hidden;background:#f5f5f5}.wc-setup-content .updated p,.wc-setup-content .woocommerce-language-pack p,.wc-setup-content .woocommerce-tracker p{padding:0;margin:0 0 12px}.wc-setup-content .updated p:last-child,.wc-setup-content .woocommerce-language-pack p:last-child,.wc-setup-content .woocommerce-tracker p:last-child{margin:0 0 24px}.wc-setup-steps{padding:0 0 24px;margin:0;list-style:none;overflow:hidden;color:#ccc;width:100%;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.wc-setup-steps li{width:20%;float:left;padding:0 0 .8em;margin:0;text-align:center;position:relative;border-bottom:4px solid #ccc;line-height:1.4em}.wc-setup-steps li:before{content:"";border:4px solid #ccc;border-radius:100%;width:4px;height:4px;position:absolute;bottom:0;left:50%;margin-left:-6px;margin-bottom:-8px;background:#fff}.wc-setup-steps li.active{border-color:#a16696;color:#a16696}.wc-setup-steps li.active:before{border-color:#a16696}.wc-setup-steps li.done{border-color:#a16696;color:#a16696}.wc-setup-steps li.done:before{border-color:#a16696;background:#a16696}.wc-setup .wc-setup-actions{overflow:hidden}.wc-setup .wc-setup-actions .button{float:right;font-size:1.25em;padding:.5em 1em;line-height:1em;margin-right:.5em;height:auto}.wc-setup .wc-setup-actions .button-primary{background-color:#a16696;border-color:#a16696;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);float:right;margin:0;opacity:1;text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f}.wc-return-to-dashboard{font-size:.85em;color:#b5b5b5;margin:1.18em 0;display:block;text-align:center} \ No newline at end of file +.wc-setup-content p,.wc-setup-content table{font-size:1em;line-height:1.75em;color:#666}body{margin: 50px auto 24px;box-shadow:none;background:#f1f1f1;padding:0}#wc-logo{/* top: 9px; */border:0;margin: 0 0 0px;padding:0;text-align:center}#wc-logo img{max-width:50%}.wc-setup-content{box-shadow:0 1px 3px rgba(0,0,0,.13);padding:24px 24px 0;background:#fff;overflow:hidden;zoom:1}.wc-setup-content h1,.wc-setup-content h2,.wc-setup-content h3,.wc-setup-content table{margin:0 0 24px;border:0;padding:0;color:#666;clear:none}.wc-setup-content p{margin:0 0 24px}.wc-setup-content a{color:#3AA7D9}.wc-setup-content a:focus,.wc-setup-content a:hover{color:#111}.wc-setup-content .form-table th{width:35%;vertical-align:top;font-weight:400}.wc-setup-content .form-table td{vertical-align:top}.wc-setup-content .form-table td input,.wc-setup-content .form-table td select{width:100%;box-sizing:border-box}.wc-setup-content .form-table td input[size]{width:auto}.wc-setup-content .form-table td .description{line-height:1.5em;display:block;margin-top:.25em;color:#999;font-style:italic}.wc-setup-content .form-table td .input-checkbox,.wc-setup-content .form-table td .input-radio{width:auto;box-sizing:inherit;padding:inherit;margin:0 .5em 0 0;box-shadow:none}.wc-setup-content .form-table .section_title td{padding:0}.wc-setup-content .form-table .section_title td h2,.wc-setup-content .form-table .section_title td p{margin:12px 0 0}.wc-setup-content .form-table td,.wc-setup-content .form-table th{padding:12px 0;margin:0;border:0}.wc-setup-content .form-table td:first-child,.wc-setup-content .form-table th:first-child{padding-right:1em}.wc-setup-content .form-table table.tax-rates{width:100%;font-size:.92em}.wc-setup-content .form-table table.tax-rates th{padding:0;text-align:center;width:auto;vertical-align:middle}.wc-setup-content .form-table table.tax-rates td{border:1px solid #eee;padding:6px;text-align:center;vertical-align:middle}.wc-setup-content .form-table table.tax-rates td input{outline:0;border:0;padding:0;box-shadow:none;text-align:center}.wc-setup-content .form-table table.tax-rates td.sort{cursor:move;color:#ccc}.wc-setup-content .form-table table.tax-rates td.sort:before{content:"\f333";font-family:dashicons}.wc-setup-content .form-table table.tax-rates .add{padding:1em 0 0 1em;line-height:1em;font-size:1em;width:0;margin:6px 0 0;height:0;overflow:hidden;position:relative;display:inline-block}.wc-setup-content .form-table table.tax-rates .add:before{content:"\f502";font-family:dashicons;position:absolute;left:0;top:0}.wc-setup-content .form-table table.tax-rates .remove{padding:1em 0 0 1em;line-height:1em;font-size:1em;width:0;margin:0;height:0;overflow:hidden;position:relative;display:inline-block}.wc-setup-content .form-table table.tax-rates .remove:before{content:"\f182";font-family:dashicons;position:absolute;left:0;top:0}.wc-setup-content .wc-setup-pages{width:100%;border-top:1px solid #eee}.wc-setup-content .wc-setup-pages thead th{display:none}.wc-setup-content .wc-setup-pages .page-name{width:30%;font-weight:700}.wc-setup-content .wc-setup-pages td,.wc-setup-content .wc-setup-pages th{padding:14px 0;border-bottom:1px solid #eee}.wc-setup-content .wc-setup-pages td:first-child,.wc-setup-content .wc-setup-pages th:first-child{padding-right:9px}.wc-setup-content .wc-setup-pages th{padding-top:0}.wc-setup-content .wc-setup-pages .page-options p{color:#777;margin:6px 0 0 24px;line-height:1.75em}.wc-setup-content .wc-setup-pages .page-options p input{vertical-align:middle;margin:1px 0 0;height:1.75em;width:1.75em;line-height:1.75em}.wc-setup-content .wc-setup-pages .page-options p label{line-height:1}@media screen and (max-width:782px){.wc-setup-content .form-table tbody th{width:auto}}.wc-setup-content .twitter-share-button{float:right}.wc-setup-content .wc-setup-next-steps{overflow:hidden;margin:0 0 24px}.wc-setup-content .wc-setup-next-steps h2{margin-bottom:12px}.wc-setup-content .wc-setup-next-steps .wc-setup-next-steps-first{float:left;width:50%;box-sizing:border-box}.wc-setup-content .wc-setup-next-steps .wc-setup-next-steps-last{float:right;width:50%;box-sizing:border-box}.wc-setup-content .wc-setup-next-steps ul{padding:0 2em 0 0;list-style:none;margin:0 0 -.75em}.wc-setup-content .wc-setup-next-steps ul li a{display:block;padding:0 0 .75em}.wc-setup-content .wc-setup-next-steps ul .setup-product a{background-color:#3AA7D9;border-color:#3AA7D9;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);font-size:1em;height:auto;line-height:1.75em;margin:0 0 .75em;opacity:1;padding:1em;text-align:center;/* text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f */color: aliceblue;}.wc-setup-content .wc-setup-next-steps ul li a:before{color:#82878c;font:400 20px/1 dashicons;speak:none;display:inline-block;padding:0 10px 0 0;top:1px;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important;vertical-align:top}.wc-setup-content .wc-setup-next-steps ul .learn-more a:before{content:"\f105"}.wc-setup-content .wc-setup-next-steps ul .video-walkthrough a:before{content:"\f126"}.wc-setup-content .wc-setup-next-steps ul .sidekick a:before{content:"\f118"}.wc-setup-content .wc-setup-next-steps ul .newsletter a:before{content:"\f465"}.wc-setup-content .updated,.wc-setup-content .woocommerce-language-pack,.wc-setup-content .woocommerce-tracker{padding:24px 24px 0;margin:0 0 24px;overflow:hidden;background:#f5f5f5}.wc-setup-content .updated p,.wc-setup-content .woocommerce-language-pack p,.wc-setup-content .woocommerce-tracker p{padding:0;margin:0 0 12px}.wc-setup-content .updated p:last-child,.wc-setup-content .woocommerce-language-pack p:last-child,.wc-setup-content .woocommerce-tracker p:last-child{margin:0 0 24px}.wc-setup-steps{padding:0 0 24px;margin:0;list-style:none;overflow:hidden;color:#ccc;width:100%;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.wc-setup-steps li{width:20%;float:left;padding:0 0 .8em;margin:0;text-align:center;position:relative;border-bottom:4px solid #ccc;line-height:1.4em}.wc-setup-steps li:before{content:"";border:4px solid #ccc;border-radius:100%;width:4px;height:4px;position:absolute;bottom:0;left:50%;margin-left:-6px;margin-bottom:-8px;background:#fff}.wc-setup-steps li.active{border-color:#3AA7D9;color:#3AA7D9}.wc-setup-steps li.active:before{border-color:#3AA7D9}.wc-setup-steps li.done{border-color:#3AA7D9;color:#3AA7D9}.wc-setup-steps li.done:before{border-color:#3AA7D9;background:#3AA7D9}.wc-setup .wc-setup-actions{overflow:hidden}.wc-setup .wc-setup-actions .button{float:right;font-size:1.25em;padding:.5em 1em;line-height:1em;margin-right:.5em;height:auto}.wc-setup .wc-setup-actions .button-primary{background-color:#3AA7D9;border-color:#3AA7D9;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(0,0,0,.15);float:right;margin:0;opacity:1;/*text-shadow:0 -1px 1px #8a4f7f,1px 0 1px #8a4f7f,0 1px 1px #8a4f7f,-1px 0 1px #8a4f7f*/}.wc-return-to-dashboard{font-size:.85em;color:#b5b5b5;margin:1.18em 0;display:block;text-align:center} \ No newline at end of file diff --git a/public/lb-faveo/installer/js/.DS_Store b/public/lb-faveo/installer/js/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..6630b745f719a7170a2967561a816049003eaf62 GIT binary patch literal 6148 zcmeHKOHRWu5PfdDC?KS=K(Ne`O%ZT{s47To>7GK{2q>i~Z4j`_F*p(cl4FZ8@9|*cKQr$g`B(NSBzqvE zc_VA}`PT{&0*u;uiLqH=^l`x7Q83q8iMdXV5=`hrsuSeY-YXp0hm@?0Ynz4g)W;>x zHXfOw%{)_Fb0?;3B~-Ot$RAj1{i76V!$*?m&Zu)RKV(-{cacrCKcxWAY_aBsLoHPS zRX`Q^Qb4{B5nV9$m^-we4i@$bKy0wv8td|hK{%1e*kkUHBQ)cvL`OCLieVg`{gIy+ zd(0g=I*h-37@yhr8;Y^n89%bqVPc0`ssgG&QGvQ^w&eUj{{H@7Bxy?(PzC;#0;bXJ zbvs;=KU*t{le0FWU(m&5UhdFRSoq`ER^%w&rCZ}zBo$)pF?Yxwn*I^6GH9U+{HOw- Db26Zm literal 0 HcmV?d00001 diff --git a/public/lb-faveo/installer/js/bootstrap-datepicker.js b/public/lb-faveo/installer/js/bootstrap-datepicker.js new file mode 100644 index 000000000..f17de6d1c --- /dev/null +++ b/public/lb-faveo/installer/js/bootstrap-datepicker.js @@ -0,0 +1,1671 @@ +/* ========================================================= + * bootstrap-datepicker.js + * Repo: https://github.com/eternicode/bootstrap-datepicker/ + * Demo: http://eternicode.github.io/bootstrap-datepicker/ + * Docs: http://bootstrap-datepicker.readthedocs.org/ + * Forked from http://www.eyecon.ro/bootstrap-datepicker + * ========================================================= + * Started by Stefan Petre; improvements by Andrew Rowls + contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================================================= */ + +(function($, undefined){ + + var $window = $(window); + + function UTCDate(){ + return new Date(Date.UTC.apply(Date, arguments)); + } + function UTCToday(){ + var today = new Date(); + return UTCDate(today.getFullYear(), today.getMonth(), today.getDate()); + } + function alias(method){ + return function(){ + return this[method].apply(this, arguments); + }; + } + + var DateArray = (function(){ + var extras = { + get: function(i){ + return this.slice(i)[0]; + }, + contains: function(d){ + // Array.indexOf is not cross-browser; + // $.inArray doesn't work with Dates + var val = d && d.valueOf(); + for (var i=0, l=this.length; i < l; i++) + if (this[i].valueOf() === val) + return i; + return -1; + }, + remove: function(i){ + this.splice(i,1); + }, + replace: function(new_array){ + if (!new_array) + return; + if (!$.isArray(new_array)) + new_array = [new_array]; + this.clear(); + this.push.apply(this, new_array); + }, + clear: function(){ + this.splice(0); + }, + copy: function(){ + var a = new DateArray(); + a.replace(this); + return a; + } + }; + + return function(){ + var a = []; + a.push.apply(a, arguments); + $.extend(a, extras); + return a; + }; + })(); + + + // Picker object + + var Datepicker = function(element, options){ + this.dates = new DateArray(); + this.viewDate = UTCToday(); + this.focusDate = null; + + this._process_options(options); + + this.element = $(element); + this.isInline = false; + this.isInput = this.element.is('input'); + this.component = this.element.is('.date') ? this.element.find('.add-on, .input-group-addon, .btn') : false; + this.hasInput = this.component && this.element.find('input').length; + if (this.component && this.component.length === 0) + this.component = false; + + this.picker = $(DPGlobal.template); + this._buildEvents(); + this._attachEvents(); + + if (this.isInline){ + this.picker.addClass('datepicker-inline').appendTo(this.element); + } + else { + this.picker.addClass('datepicker-dropdown dropdown-menu'); + } + + if (this.o.rtl){ + this.picker.addClass('datepicker-rtl'); + } + + this.viewMode = this.o.startView; + + if (this.o.calendarWeeks) + this.picker.find('tfoot th.today') + .attr('colspan', function(i, val){ + return parseInt(val) + 1; + }); + + this._allow_update = false; + + this.setStartDate(this._o.startDate); + this.setEndDate(this._o.endDate); + this.setDaysOfWeekDisabled(this.o.daysOfWeekDisabled); + + this.fillDow(); + this.fillMonths(); + + this._allow_update = true; + + this.update(); + this.showMode(); + + if (this.isInline){ + this.show(); + } + }; + + Datepicker.prototype = { + constructor: Datepicker, + + _process_options: function(opts){ + // Store raw options for reference + this._o = $.extend({}, this._o, opts); + // Processed options + var o = this.o = $.extend({}, this._o); + + // Check if "de-DE" style date is available, if not language should + // fallback to 2 letter code eg "de" + var lang = o.language; + if (!dates[lang]){ + lang = lang.split('-')[0]; + if (!dates[lang]) + lang = defaults.language; + } + o.language = lang; + + switch (o.startView){ + case 2: + case 'decade': + o.startView = 2; + break; + case 1: + case 'year': + o.startView = 1; + break; + default: + o.startView = 0; + } + + switch (o.minViewMode){ + case 1: + case 'months': + o.minViewMode = 1; + break; + case 2: + case 'years': + o.minViewMode = 2; + break; + default: + o.minViewMode = 0; + } + + o.startView = Math.max(o.startView, o.minViewMode); + + // true, false, or Number > 0 + if (o.multidate !== true){ + o.multidate = Number(o.multidate) || false; + if (o.multidate !== false) + o.multidate = Math.max(0, o.multidate); + else + o.multidate = 1; + } + o.multidateSeparator = String(o.multidateSeparator); + + o.weekStart %= 7; + o.weekEnd = ((o.weekStart + 6) % 7); + + var format = DPGlobal.parseFormat(o.format); + if (o.startDate !== -Infinity){ + if (!!o.startDate){ + if (o.startDate instanceof Date) + o.startDate = this._local_to_utc(this._zero_time(o.startDate)); + else + o.startDate = DPGlobal.parseDate(o.startDate, format, o.language); + } + else { + o.startDate = -Infinity; + } + } + if (o.endDate !== Infinity){ + if (!!o.endDate){ + if (o.endDate instanceof Date) + o.endDate = this._local_to_utc(this._zero_time(o.endDate)); + else + o.endDate = DPGlobal.parseDate(o.endDate, format, o.language); + } + else { + o.endDate = Infinity; + } + } + + o.daysOfWeekDisabled = o.daysOfWeekDisabled||[]; + if (!$.isArray(o.daysOfWeekDisabled)) + o.daysOfWeekDisabled = o.daysOfWeekDisabled.split(/[,\s]*/); + o.daysOfWeekDisabled = $.map(o.daysOfWeekDisabled, function(d){ + return parseInt(d, 10); + }); + + var plc = String(o.orientation).toLowerCase().split(/\s+/g), + _plc = o.orientation.toLowerCase(); + plc = $.grep(plc, function(word){ + return (/^auto|left|right|top|bottom$/).test(word); + }); + o.orientation = {x: 'auto', y: 'auto'}; + if (!_plc || _plc === 'auto') + ; // no action + else if (plc.length === 1){ + switch (plc[0]){ + case 'top': + case 'bottom': + o.orientation.y = plc[0]; + break; + case 'left': + case 'right': + o.orientation.x = plc[0]; + break; + } + } + else { + _plc = $.grep(plc, function(word){ + return (/^left|right$/).test(word); + }); + o.orientation.x = _plc[0] || 'auto'; + + _plc = $.grep(plc, function(word){ + return (/^top|bottom$/).test(word); + }); + o.orientation.y = _plc[0] || 'auto'; + } + }, + _events: [], + _secondaryEvents: [], + _applyEvents: function(evs){ + for (var i=0, el, ch, ev; i < evs.length; i++){ + el = evs[i][0]; + if (evs[i].length === 2){ + ch = undefined; + ev = evs[i][1]; + } + else if (evs[i].length === 3){ + ch = evs[i][1]; + ev = evs[i][2]; + } + el.on(ev, ch); + } + }, + _unapplyEvents: function(evs){ + for (var i=0, el, ev, ch; i < evs.length; i++){ + el = evs[i][0]; + if (evs[i].length === 2){ + ch = undefined; + ev = evs[i][1]; + } + else if (evs[i].length === 3){ + ch = evs[i][1]; + ev = evs[i][2]; + } + el.off(ev, ch); + } + }, + _buildEvents: function(){ + if (this.isInput){ // single input + this._events = [ + [this.element, { + focus: $.proxy(this.show, this), + keyup: $.proxy(function(e){ + if ($.inArray(e.keyCode, [27,37,39,38,40,32,13,9]) === -1) + this.update(); + }, this), + keydown: $.proxy(this.keydown, this) + }] + ]; + } + else if (this.component && this.hasInput){ // component: input + button + this._events = [ + // For components that are not readonly, allow keyboard nav + [this.element.find('input'), { + focus: $.proxy(this.show, this), + keyup: $.proxy(function(e){ + if ($.inArray(e.keyCode, [27,37,39,38,40,32,13,9]) === -1) + this.update(); + }, this), + keydown: $.proxy(this.keydown, this) + }], + [this.component, { + click: $.proxy(this.show, this) + }] + ]; + } + else if (this.element.is('div')){ // inline datepicker + this.isInline = true; + } + else { + this._events = [ + [this.element, { + click: $.proxy(this.show, this) + }] + ]; + } + this._events.push( + // Component: listen for blur on element descendants + [this.element, '*', { + blur: $.proxy(function(e){ + this._focused_from = e.target; + }, this) + }], + // Input: listen for blur on element + [this.element, { + blur: $.proxy(function(e){ + this._focused_from = e.target; + }, this) + }] + ); + + this._secondaryEvents = [ + [this.picker, { + click: $.proxy(this.click, this) + }], + [$(window), { + resize: $.proxy(this.place, this) + }], + [$(document), { + 'mousedown touchstart': $.proxy(function(e){ + // Clicked outside the datepicker, hide it + if (!( + this.element.is(e.target) || + this.element.find(e.target).length || + this.picker.is(e.target) || + this.picker.find(e.target).length + )){ + this.hide(); + } + }, this) + }] + ]; + }, + _attachEvents: function(){ + this._detachEvents(); + this._applyEvents(this._events); + }, + _detachEvents: function(){ + this._unapplyEvents(this._events); + }, + _attachSecondaryEvents: function(){ + this._detachSecondaryEvents(); + this._applyEvents(this._secondaryEvents); + }, + _detachSecondaryEvents: function(){ + this._unapplyEvents(this._secondaryEvents); + }, + _trigger: function(event, altdate){ + var date = altdate || this.dates.get(-1), + local_date = this._utc_to_local(date); + + this.element.trigger({ + type: event, + date: local_date, + dates: $.map(this.dates, this._utc_to_local), + format: $.proxy(function(ix, format){ + if (arguments.length === 0){ + ix = this.dates.length - 1; + format = this.o.format; + } + else if (typeof ix === 'string'){ + format = ix; + ix = this.dates.length - 1; + } + format = format || this.o.format; + var date = this.dates.get(ix); + return DPGlobal.formatDate(date, format, this.o.language); + }, this) + }); + }, + + show: function(){ + if (!this.isInline) + this.picker.appendTo('body'); + this.picker.show(); + this.place(); + this._attachSecondaryEvents(); + this._trigger('show'); + }, + + hide: function(){ + if (this.isInline) + return; + if (!this.picker.is(':visible')) + return; + this.focusDate = null; + this.picker.hide().detach(); + this._detachSecondaryEvents(); + this.viewMode = this.o.startView; + this.showMode(); + + if ( + this.o.forceParse && + ( + this.isInput && this.element.val() || + this.hasInput && this.element.find('input').val() + ) + ) + this.setValue(); + this._trigger('hide'); + }, + + remove: function(){ + this.hide(); + this._detachEvents(); + this._detachSecondaryEvents(); + this.picker.remove(); + delete this.element.data().datepicker; + if (!this.isInput){ + delete this.element.data().date; + } + }, + + _utc_to_local: function(utc){ + return utc && new Date(utc.getTime() + (utc.getTimezoneOffset()*60000)); + }, + _local_to_utc: function(local){ + return local && new Date(local.getTime() - (local.getTimezoneOffset()*60000)); + }, + _zero_time: function(local){ + return local && new Date(local.getFullYear(), local.getMonth(), local.getDate()); + }, + _zero_utc_time: function(utc){ + return utc && new Date(Date.UTC(utc.getUTCFullYear(), utc.getUTCMonth(), utc.getUTCDate())); + }, + + getDates: function(){ + return $.map(this.dates, this._utc_to_local); + }, + + getUTCDates: function(){ + return $.map(this.dates, function(d){ + return new Date(d); + }); + }, + + getDate: function(){ + return this._utc_to_local(this.getUTCDate()); + }, + + getUTCDate: function(){ + return new Date(this.dates.get(-1)); + }, + + setDates: function(){ + var args = $.isArray(arguments[0]) ? arguments[0] : arguments; + this.update.apply(this, args); + this._trigger('changeDate'); + this.setValue(); + }, + + setUTCDates: function(){ + var args = $.isArray(arguments[0]) ? arguments[0] : arguments; + this.update.apply(this, $.map(args, this._utc_to_local)); + this._trigger('changeDate'); + this.setValue(); + }, + + setDate: alias('setDates'), + setUTCDate: alias('setUTCDates'), + + setValue: function(){ + var formatted = this.getFormattedDate(); + if (!this.isInput){ + if (this.component){ + this.element.find('input').val(formatted).change(); + } + } + else { + this.element.val(formatted).change(); + } + }, + + getFormattedDate: function(format){ + if (format === undefined) + format = this.o.format; + + var lang = this.o.language; + return $.map(this.dates, function(d){ + return DPGlobal.formatDate(d, format, lang); + }).join(this.o.multidateSeparator); + }, + + setStartDate: function(startDate){ + this._process_options({startDate: startDate}); + this.update(); + this.updateNavArrows(); + }, + + setEndDate: function(endDate){ + this._process_options({endDate: endDate}); + this.update(); + this.updateNavArrows(); + }, + + setDaysOfWeekDisabled: function(daysOfWeekDisabled){ + this._process_options({daysOfWeekDisabled: daysOfWeekDisabled}); + this.update(); + this.updateNavArrows(); + }, + + place: function(){ + if (this.isInline) + return; + var calendarWidth = this.picker.outerWidth(), + calendarHeight = this.picker.outerHeight(), + visualPadding = 10, + windowWidth = $window.width(), + windowHeight = $window.height(), + scrollTop = $window.scrollTop(); + + var zIndex = parseInt(this.element.parents().filter(function(){ + return $(this).css('z-index') !== 'auto'; + }).first().css('z-index'))+10; + var offset = this.component ? this.component.parent().offset() : this.element.offset(); + var height = this.component ? this.component.outerHeight(true) : this.element.outerHeight(false); + var width = this.component ? this.component.outerWidth(true) : this.element.outerWidth(false); + var left = offset.left, + top = offset.top; + + this.picker.removeClass( + 'datepicker-orient-top datepicker-orient-bottom '+ + 'datepicker-orient-right datepicker-orient-left' + ); + + if (this.o.orientation.x !== 'auto'){ + this.picker.addClass('datepicker-orient-' + this.o.orientation.x); + if (this.o.orientation.x === 'right') + left -= calendarWidth - width; + } + // auto x orientation is best-placement: if it crosses a window + // edge, fudge it sideways + else { + // Default to left + this.picker.addClass('datepicker-orient-left'); + if (offset.left < 0) + left -= offset.left - visualPadding; + else if (offset.left + calendarWidth > windowWidth) + left = windowWidth - calendarWidth - visualPadding; + } + + // auto y orientation is best-situation: top or bottom, no fudging, + // decision based on which shows more of the calendar + var yorient = this.o.orientation.y, + top_overflow, bottom_overflow; + if (yorient === 'auto'){ + top_overflow = -scrollTop + offset.top - calendarHeight; + bottom_overflow = scrollTop + windowHeight - (offset.top + height + calendarHeight); + if (Math.max(top_overflow, bottom_overflow) === bottom_overflow) + yorient = 'top'; + else + yorient = 'bottom'; + } + this.picker.addClass('datepicker-orient-' + yorient); + if (yorient === 'top') + top += height; + else + top -= calendarHeight + parseInt(this.picker.css('padding-top')); + + this.picker.css({ + top: top, + left: left, + zIndex: zIndex + }); + }, + + _allow_update: true, + update: function(){ + if (!this._allow_update) + return; + + var oldDates = this.dates.copy(), + dates = [], + fromArgs = false; + if (arguments.length){ + $.each(arguments, $.proxy(function(i, date){ + if (date instanceof Date) + date = this._local_to_utc(date); + dates.push(date); + }, this)); + fromArgs = true; + } + else { + dates = this.isInput + ? this.element.val() + : this.element.data('date') || this.element.find('input').val(); + if (dates && this.o.multidate) + dates = dates.split(this.o.multidateSeparator); + else + dates = [dates]; + delete this.element.data().date; + } + + dates = $.map(dates, $.proxy(function(date){ + return DPGlobal.parseDate(date, this.o.format, this.o.language); + }, this)); + dates = $.grep(dates, $.proxy(function(date){ + return ( + date < this.o.startDate || + date > this.o.endDate || + !date + ); + }, this), true); + this.dates.replace(dates); + + if (this.dates.length) + this.viewDate = new Date(this.dates.get(-1)); + else if (this.viewDate < this.o.startDate) + this.viewDate = new Date(this.o.startDate); + else if (this.viewDate > this.o.endDate) + this.viewDate = new Date(this.o.endDate); + + if (fromArgs){ + // setting date by clicking + this.setValue(); + } + else if (dates.length){ + // setting date by typing + if (String(oldDates) !== String(this.dates)) + this._trigger('changeDate'); + } + if (!this.dates.length && oldDates.length) + this._trigger('clearDate'); + + this.fill(); + }, + + fillDow: function(){ + var dowCnt = this.o.weekStart, + html = ''; + if (this.o.calendarWeeks){ + var cell = ' '; + html += cell; + this.picker.find('.datepicker-days thead tr:first-child').prepend(cell); + } + while (dowCnt < this.o.weekStart + 7){ + html += ''+dates[this.o.language].daysMin[(dowCnt++)%7]+''; + } + html += ''; + this.picker.find('.datepicker-days thead').append(html); + }, + + fillMonths: function(){ + var html = '', + i = 0; + while (i < 12){ + html += ''+dates[this.o.language].monthsShort[i++]+''; + } + this.picker.find('.datepicker-months td').html(html); + }, + + setRange: function(range){ + if (!range || !range.length) + delete this.range; + else + this.range = $.map(range, function(d){ + return d.valueOf(); + }); + this.fill(); + }, + + getClassNames: function(date){ + var cls = [], + year = this.viewDate.getUTCFullYear(), + month = this.viewDate.getUTCMonth(), + today = new Date(); + if (date.getUTCFullYear() < year || (date.getUTCFullYear() === year && date.getUTCMonth() < month)){ + cls.push('old'); + } + else if (date.getUTCFullYear() > year || (date.getUTCFullYear() === year && date.getUTCMonth() > month)){ + cls.push('new'); + } + if (this.focusDate && date.valueOf() === this.focusDate.valueOf()) + cls.push('focused'); + // Compare internal UTC date with local today, not UTC today + if (this.o.todayHighlight && + date.getUTCFullYear() === today.getFullYear() && + date.getUTCMonth() === today.getMonth() && + date.getUTCDate() === today.getDate()){ + cls.push('today'); + } + if (this.dates.contains(date) !== -1) + cls.push('active'); + if (date.valueOf() < this.o.startDate || date.valueOf() > this.o.endDate || + $.inArray(date.getUTCDay(), this.o.daysOfWeekDisabled) !== -1){ + cls.push('disabled'); + } + if (this.range){ + if (date > this.range[0] && date < this.range[this.range.length-1]){ + cls.push('range'); + } + if ($.inArray(date.valueOf(), this.range) !== -1){ + cls.push('selected'); + } + } + return cls; + }, + + fill: function(){ + var d = new Date(this.viewDate), + year = d.getUTCFullYear(), + month = d.getUTCMonth(), + startYear = this.o.startDate !== -Infinity ? this.o.startDate.getUTCFullYear() : -Infinity, + startMonth = this.o.startDate !== -Infinity ? this.o.startDate.getUTCMonth() : -Infinity, + endYear = this.o.endDate !== Infinity ? this.o.endDate.getUTCFullYear() : Infinity, + endMonth = this.o.endDate !== Infinity ? this.o.endDate.getUTCMonth() : Infinity, + todaytxt = dates[this.o.language].today || dates['en'].today || '', + cleartxt = dates[this.o.language].clear || dates['en'].clear || '', + tooltip; + this.picker.find('.datepicker-days thead th.datepicker-switch') + .text(dates[this.o.language].months[month]+' '+year); + this.picker.find('tfoot th.today') + .text(todaytxt) + .toggle(this.o.todayBtn !== false); + this.picker.find('tfoot th.clear') + .text(cleartxt) + .toggle(this.o.clearBtn !== false); + this.updateNavArrows(); + this.fillMonths(); + var prevMonth = UTCDate(year, month-1, 28), + day = DPGlobal.getDaysInMonth(prevMonth.getUTCFullYear(), prevMonth.getUTCMonth()); + prevMonth.setUTCDate(day); + prevMonth.setUTCDate(day - (prevMonth.getUTCDay() - this.o.weekStart + 7)%7); + var nextMonth = new Date(prevMonth); + nextMonth.setUTCDate(nextMonth.getUTCDate() + 42); + nextMonth = nextMonth.valueOf(); + var html = []; + var clsName; + while (prevMonth.valueOf() < nextMonth){ + if (prevMonth.getUTCDay() === this.o.weekStart){ + html.push(''); + if (this.o.calendarWeeks){ + // ISO 8601: First week contains first thursday. + // ISO also states week starts on Monday, but we can be more abstract here. + var + // Start of current week: based on weekstart/current date + ws = new Date(+prevMonth + (this.o.weekStart - prevMonth.getUTCDay() - 7) % 7 * 864e5), + // Thursday of this week + th = new Date(Number(ws) + (7 + 4 - ws.getUTCDay()) % 7 * 864e5), + // First Thursday of year, year from thursday + yth = new Date(Number(yth = UTCDate(th.getUTCFullYear(), 0, 1)) + (7 + 4 - yth.getUTCDay())%7*864e5), + // Calendar week: ms between thursdays, div ms per day, div 7 days + calWeek = (th - yth) / 864e5 / 7 + 1; + html.push(''+ calWeek +''); + + } + } + clsName = this.getClassNames(prevMonth); + clsName.push('day'); + + if (this.o.beforeShowDay !== $.noop){ + var before = this.o.beforeShowDay(this._utc_to_local(prevMonth)); + if (before === undefined) + before = {}; + else if (typeof(before) === 'boolean') + before = {enabled: before}; + else if (typeof(before) === 'string') + before = {classes: before}; + if (before.enabled === false) + clsName.push('disabled'); + if (before.classes) + clsName = clsName.concat(before.classes.split(/\s+/)); + if (before.tooltip) + tooltip = before.tooltip; + } + + clsName = $.unique(clsName); + html.push(''+prevMonth.getUTCDate() + ''); + if (prevMonth.getUTCDay() === this.o.weekEnd){ + html.push(''); + } + prevMonth.setUTCDate(prevMonth.getUTCDate()+1); + } + this.picker.find('.datepicker-days tbody').empty().append(html.join('')); + + var months = this.picker.find('.datepicker-months') + .find('th:eq(1)') + .text(year) + .end() + .find('span').removeClass('active'); + + $.each(this.dates, function(i, d){ + if (d.getUTCFullYear() === year) + months.eq(d.getUTCMonth()).addClass('active'); + }); + + if (year < startYear || year > endYear){ + months.addClass('disabled'); + } + if (year === startYear){ + months.slice(0, startMonth).addClass('disabled'); + } + if (year === endYear){ + months.slice(endMonth+1).addClass('disabled'); + } + + html = ''; + year = parseInt(year/10, 10) * 10; + var yearCont = this.picker.find('.datepicker-years') + .find('th:eq(1)') + .text(year + '-' + (year + 9)) + .end() + .find('td'); + year -= 1; + var years = $.map(this.dates, function(d){ + return d.getUTCFullYear(); + }), + classes; + for (var i = -1; i < 11; i++){ + classes = ['year']; + if (i === -1) + classes.push('old'); + else if (i === 10) + classes.push('new'); + if ($.inArray(year, years) !== -1) + classes.push('active'); + if (year < startYear || year > endYear) + classes.push('disabled'); + html += ''+year+''; + year += 1; + } + yearCont.html(html); + }, + + updateNavArrows: function(){ + if (!this._allow_update) + return; + + var d = new Date(this.viewDate), + year = d.getUTCFullYear(), + month = d.getUTCMonth(); + switch (this.viewMode){ + case 0: + if (this.o.startDate !== -Infinity && year <= this.o.startDate.getUTCFullYear() && month <= this.o.startDate.getUTCMonth()){ + this.picker.find('.prev').css({visibility: 'hidden'}); + } + else { + this.picker.find('.prev').css({visibility: 'visible'}); + } + if (this.o.endDate !== Infinity && year >= this.o.endDate.getUTCFullYear() && month >= this.o.endDate.getUTCMonth()){ + this.picker.find('.next').css({visibility: 'hidden'}); + } + else { + this.picker.find('.next').css({visibility: 'visible'}); + } + break; + case 1: + case 2: + if (this.o.startDate !== -Infinity && year <= this.o.startDate.getUTCFullYear()){ + this.picker.find('.prev').css({visibility: 'hidden'}); + } + else { + this.picker.find('.prev').css({visibility: 'visible'}); + } + if (this.o.endDate !== Infinity && year >= this.o.endDate.getUTCFullYear()){ + this.picker.find('.next').css({visibility: 'hidden'}); + } + else { + this.picker.find('.next').css({visibility: 'visible'}); + } + break; + } + }, + + click: function(e){ + e.preventDefault(); + var target = $(e.target).closest('span, td, th'), + year, month, day; + if (target.length === 1){ + switch (target[0].nodeName.toLowerCase()){ + case 'th': + switch (target[0].className){ + case 'datepicker-switch': + this.showMode(1); + break; + case 'prev': + case 'next': + var dir = DPGlobal.modes[this.viewMode].navStep * (target[0].className === 'prev' ? -1 : 1); + switch (this.viewMode){ + case 0: + this.viewDate = this.moveMonth(this.viewDate, dir); + this._trigger('changeMonth', this.viewDate); + break; + case 1: + case 2: + this.viewDate = this.moveYear(this.viewDate, dir); + if (this.viewMode === 1) + this._trigger('changeYear', this.viewDate); + break; + } + this.fill(); + break; + case 'today': + var date = new Date(); + date = UTCDate(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0); + + this.showMode(-2); + var which = this.o.todayBtn === 'linked' ? null : 'view'; + this._setDate(date, which); + break; + case 'clear': + var element; + if (this.isInput) + element = this.element; + else if (this.component) + element = this.element.find('input'); + if (element) + element.val("").change(); + this.update(); + this._trigger('changeDate'); + if (this.o.autoclose) + this.hide(); + break; + } + break; + case 'span': + if (!target.is('.disabled')){ + this.viewDate.setUTCDate(1); + if (target.is('.month')){ + day = 1; + month = target.parent().find('span').index(target); + year = this.viewDate.getUTCFullYear(); + this.viewDate.setUTCMonth(month); + this._trigger('changeMonth', this.viewDate); + if (this.o.minViewMode === 1){ + this._setDate(UTCDate(year, month, day)); + } + } + else { + day = 1; + month = 0; + year = parseInt(target.text(), 10)||0; + this.viewDate.setUTCFullYear(year); + this._trigger('changeYear', this.viewDate); + if (this.o.minViewMode === 2){ + this._setDate(UTCDate(year, month, day)); + } + } + this.showMode(-1); + this.fill(); + } + break; + case 'td': + if (target.is('.day') && !target.is('.disabled')){ + day = parseInt(target.text(), 10)||1; + year = this.viewDate.getUTCFullYear(); + month = this.viewDate.getUTCMonth(); + if (target.is('.old')){ + if (month === 0){ + month = 11; + year -= 1; + } + else { + month -= 1; + } + } + else if (target.is('.new')){ + if (month === 11){ + month = 0; + year += 1; + } + else { + month += 1; + } + } + this._setDate(UTCDate(year, month, day)); + } + break; + } + } + if (this.picker.is(':visible') && this._focused_from){ + $(this._focused_from).focus(); + } + delete this._focused_from; + }, + + _toggle_multidate: function(date){ + var ix = this.dates.contains(date); + if (!date){ + this.dates.clear(); + } + else if (ix !== -1){ + this.dates.remove(ix); + } + else { + this.dates.push(date); + } + if (typeof this.o.multidate === 'number') + while (this.dates.length > this.o.multidate) + this.dates.remove(0); + }, + + _setDate: function(date, which){ + if (!which || which === 'date') + this._toggle_multidate(date && new Date(date)); + if (!which || which === 'view') + this.viewDate = date && new Date(date); + + this.fill(); + this.setValue(); + this._trigger('changeDate'); + var element; + if (this.isInput){ + element = this.element; + } + else if (this.component){ + element = this.element.find('input'); + } + if (element){ + element.change(); + } + if (this.o.autoclose && (!which || which === 'date')){ + this.hide(); + } + }, + + moveMonth: function(date, dir){ + if (!date) + return undefined; + if (!dir) + return date; + var new_date = new Date(date.valueOf()), + day = new_date.getUTCDate(), + month = new_date.getUTCMonth(), + mag = Math.abs(dir), + new_month, test; + dir = dir > 0 ? 1 : -1; + if (mag === 1){ + test = dir === -1 + // If going back one month, make sure month is not current month + // (eg, Mar 31 -> Feb 31 == Feb 28, not Mar 02) + ? function(){ + return new_date.getUTCMonth() === month; + } + // If going forward one month, make sure month is as expected + // (eg, Jan 31 -> Feb 31 == Feb 28, not Mar 02) + : function(){ + return new_date.getUTCMonth() !== new_month; + }; + new_month = month + dir; + new_date.setUTCMonth(new_month); + // Dec -> Jan (12) or Jan -> Dec (-1) -- limit expected date to 0-11 + if (new_month < 0 || new_month > 11) + new_month = (new_month + 12) % 12; + } + else { + // For magnitudes >1, move one month at a time... + for (var i=0; i < mag; i++) + // ...which might decrease the day (eg, Jan 31 to Feb 28, etc)... + new_date = this.moveMonth(new_date, dir); + // ...then reset the day, keeping it in the new month + new_month = new_date.getUTCMonth(); + new_date.setUTCDate(day); + test = function(){ + return new_month !== new_date.getUTCMonth(); + }; + } + // Common date-resetting loop -- if date is beyond end of month, make it + // end of month + while (test()){ + new_date.setUTCDate(--day); + new_date.setUTCMonth(new_month); + } + return new_date; + }, + + moveYear: function(date, dir){ + return this.moveMonth(date, dir*12); + }, + + dateWithinRange: function(date){ + return date >= this.o.startDate && date <= this.o.endDate; + }, + + keydown: function(e){ + if (this.picker.is(':not(:visible)')){ + if (e.keyCode === 27) // allow escape to hide and re-show picker + this.show(); + return; + } + var dateChanged = false, + dir, newDate, newViewDate, + focusDate = this.focusDate || this.viewDate; + switch (e.keyCode){ + case 27: // escape + if (this.focusDate){ + this.focusDate = null; + this.viewDate = this.dates.get(-1) || this.viewDate; + this.fill(); + } + else + this.hide(); + e.preventDefault(); + break; + case 37: // left + case 39: // right + if (!this.o.keyboardNavigation) + break; + dir = e.keyCode === 37 ? -1 : 1; + if (e.ctrlKey){ + newDate = this.moveYear(this.dates.get(-1) || UTCToday(), dir); + newViewDate = this.moveYear(focusDate, dir); + this._trigger('changeYear', this.viewDate); + } + else if (e.shiftKey){ + newDate = this.moveMonth(this.dates.get(-1) || UTCToday(), dir); + newViewDate = this.moveMonth(focusDate, dir); + this._trigger('changeMonth', this.viewDate); + } + else { + newDate = new Date(this.dates.get(-1) || UTCToday()); + newDate.setUTCDate(newDate.getUTCDate() + dir); + newViewDate = new Date(focusDate); + newViewDate.setUTCDate(focusDate.getUTCDate() + dir); + } + if (this.dateWithinRange(newDate)){ + this.focusDate = this.viewDate = newViewDate; + this.setValue(); + this.fill(); + e.preventDefault(); + } + break; + case 38: // up + case 40: // down + if (!this.o.keyboardNavigation) + break; + dir = e.keyCode === 38 ? -1 : 1; + if (e.ctrlKey){ + newDate = this.moveYear(this.dates.get(-1) || UTCToday(), dir); + newViewDate = this.moveYear(focusDate, dir); + this._trigger('changeYear', this.viewDate); + } + else if (e.shiftKey){ + newDate = this.moveMonth(this.dates.get(-1) || UTCToday(), dir); + newViewDate = this.moveMonth(focusDate, dir); + this._trigger('changeMonth', this.viewDate); + } + else { + newDate = new Date(this.dates.get(-1) || UTCToday()); + newDate.setUTCDate(newDate.getUTCDate() + dir * 7); + newViewDate = new Date(focusDate); + newViewDate.setUTCDate(focusDate.getUTCDate() + dir * 7); + } + if (this.dateWithinRange(newDate)){ + this.focusDate = this.viewDate = newViewDate; + this.setValue(); + this.fill(); + e.preventDefault(); + } + break; + case 32: // spacebar + // Spacebar is used in manually typing dates in some formats. + // As such, its behavior should not be hijacked. + break; + case 13: // enter + focusDate = this.focusDate || this.dates.get(-1) || this.viewDate; + this._toggle_multidate(focusDate); + dateChanged = true; + this.focusDate = null; + this.viewDate = this.dates.get(-1) || this.viewDate; + this.setValue(); + this.fill(); + if (this.picker.is(':visible')){ + e.preventDefault(); + if (this.o.autoclose) + this.hide(); + } + break; + case 9: // tab + this.focusDate = null; + this.viewDate = this.dates.get(-1) || this.viewDate; + this.fill(); + this.hide(); + break; + } + if (dateChanged){ + if (this.dates.length) + this._trigger('changeDate'); + else + this._trigger('clearDate'); + var element; + if (this.isInput){ + element = this.element; + } + else if (this.component){ + element = this.element.find('input'); + } + if (element){ + element.change(); + } + } + }, + + showMode: function(dir){ + if (dir){ + this.viewMode = Math.max(this.o.minViewMode, Math.min(2, this.viewMode + dir)); + } + this.picker + .find('>div') + .hide() + .filter('.datepicker-'+DPGlobal.modes[this.viewMode].clsName) + .css('display', 'block'); + this.updateNavArrows(); + } + }; + + var DateRangePicker = function(element, options){ + this.element = $(element); + this.inputs = $.map(options.inputs, function(i){ + return i.jquery ? i[0] : i; + }); + delete options.inputs; + + $(this.inputs) + .datepicker(options) + .bind('changeDate', $.proxy(this.dateUpdated, this)); + + this.pickers = $.map(this.inputs, function(i){ + return $(i).data('datepicker'); + }); + this.updateDates(); + }; + DateRangePicker.prototype = { + updateDates: function(){ + this.dates = $.map(this.pickers, function(i){ + return i.getUTCDate(); + }); + this.updateRanges(); + }, + updateRanges: function(){ + var range = $.map(this.dates, function(d){ + return d.valueOf(); + }); + $.each(this.pickers, function(i, p){ + p.setRange(range); + }); + }, + dateUpdated: function(e){ + // `this.updating` is a workaround for preventing infinite recursion + // between `changeDate` triggering and `setUTCDate` calling. Until + // there is a better mechanism. + if (this.updating) + return; + this.updating = true; + + var dp = $(e.target).data('datepicker'), + new_date = dp.getUTCDate(), + i = $.inArray(e.target, this.inputs), + l = this.inputs.length; + if (i === -1) + return; + + $.each(this.pickers, function(i, p){ + if (!p.getUTCDate()) + p.setUTCDate(new_date); + }); + + if (new_date < this.dates[i]){ + // Date being moved earlier/left + while (i >= 0 && new_date < this.dates[i]){ + this.pickers[i--].setUTCDate(new_date); + } + } + else if (new_date > this.dates[i]){ + // Date being moved later/right + while (i < l && new_date > this.dates[i]){ + this.pickers[i++].setUTCDate(new_date); + } + } + this.updateDates(); + + delete this.updating; + }, + remove: function(){ + $.map(this.pickers, function(p){ p.remove(); }); + delete this.element.data().datepicker; + } + }; + + function opts_from_el(el, prefix){ + // Derive options from element data-attrs + var data = $(el).data(), + out = {}, inkey, + replace = new RegExp('^' + prefix.toLowerCase() + '([A-Z])'); + prefix = new RegExp('^' + prefix.toLowerCase()); + function re_lower(_,a){ + return a.toLowerCase(); + } + for (var key in data) + if (prefix.test(key)){ + inkey = key.replace(replace, re_lower); + out[inkey] = data[key]; + } + return out; + } + + function opts_from_locale(lang){ + // Derive options from locale plugins + var out = {}; + // Check if "de-DE" style date is available, if not language should + // fallback to 2 letter code eg "de" + if (!dates[lang]){ + lang = lang.split('-')[0]; + if (!dates[lang]) + return; + } + var d = dates[lang]; + $.each(locale_opts, function(i,k){ + if (k in d) + out[k] = d[k]; + }); + return out; + } + + var old = $.fn.datepicker; + $.fn.datepicker = function(option){ + var args = Array.apply(null, arguments); + args.shift(); + var internal_return; + this.each(function(){ + var $this = $(this), + data = $this.data('datepicker'), + options = typeof option === 'object' && option; + if (!data){ + var elopts = opts_from_el(this, 'date'), + // Preliminary otions + xopts = $.extend({}, defaults, elopts, options), + locopts = opts_from_locale(xopts.language), + // Options priority: js args, data-attrs, locales, defaults + opts = $.extend({}, defaults, locopts, elopts, options); + if ($this.is('.input-daterange') || opts.inputs){ + var ropts = { + inputs: opts.inputs || $this.find('input').toArray() + }; + $this.data('datepicker', (data = new DateRangePicker(this, $.extend(opts, ropts)))); + } + else { + $this.data('datepicker', (data = new Datepicker(this, opts))); + } + } + if (typeof option === 'string' && typeof data[option] === 'function'){ + internal_return = data[option].apply(data, args); + if (internal_return !== undefined) + return false; + } + }); + if (internal_return !== undefined) + return internal_return; + else + return this; + }; + + var defaults = $.fn.datepicker.defaults = { + autoclose: false, + beforeShowDay: $.noop, + calendarWeeks: false, + clearBtn: false, + daysOfWeekDisabled: [], + endDate: Infinity, + forceParse: true, + format: 'mm/dd/yyyy', + keyboardNavigation: true, + language: 'en', + minViewMode: 0, + multidate: false, + multidateSeparator: ',', + orientation: "auto", + rtl: false, + startDate: -Infinity, + startView: 0, + todayBtn: false, + todayHighlight: false, + weekStart: 0 + }; + var locale_opts = $.fn.datepicker.locale_opts = [ + 'format', + 'rtl', + 'weekStart' + ]; + $.fn.datepicker.Constructor = Datepicker; + var dates = $.fn.datepicker.dates = { + en: { + days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], + daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], + daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"], + months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], + monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], + today: "Today", + clear: "Clear" + } + }; + + var DPGlobal = { + modes: [ + { + clsName: 'days', + navFnc: 'Month', + navStep: 1 + }, + { + clsName: 'months', + navFnc: 'FullYear', + navStep: 1 + }, + { + clsName: 'years', + navFnc: 'FullYear', + navStep: 10 + }], + isLeapYear: function(year){ + return (((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)); + }, + getDaysInMonth: function(year, month){ + return [31, (DPGlobal.isLeapYear(year) ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month]; + }, + validParts: /dd?|DD?|mm?|MM?|yy(?:yy)?/g, + nonpunctuation: /[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g, + parseFormat: function(format){ + // IE treats \0 as a string end in inputs (truncating the value), + // so it's a bad format delimiter, anyway + var separators = format.replace(this.validParts, '\0').split('\0'), + parts = format.match(this.validParts); + if (!separators || !separators.length || !parts || parts.length === 0){ + throw new Error("Invalid date format."); + } + return {separators: separators, parts: parts}; + }, + parseDate: function(date, format, language){ + if (!date) + return undefined; + if (date instanceof Date) + return date; + if (typeof format === 'string') + format = DPGlobal.parseFormat(format); + var part_re = /([\-+]\d+)([dmwy])/, + parts = date.match(/([\-+]\d+)([dmwy])/g), + part, dir, i; + if (/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(date)){ + date = new Date(); + for (i=0; i < parts.length; i++){ + part = part_re.exec(parts[i]); + dir = parseInt(part[1]); + switch (part[2]){ + case 'd': + date.setUTCDate(date.getUTCDate() + dir); + break; + case 'm': + date = Datepicker.prototype.moveMonth.call(Datepicker.prototype, date, dir); + break; + case 'w': + date.setUTCDate(date.getUTCDate() + dir * 7); + break; + case 'y': + date = Datepicker.prototype.moveYear.call(Datepicker.prototype, date, dir); + break; + } + } + return UTCDate(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), 0, 0, 0); + } + parts = date && date.match(this.nonpunctuation) || []; + date = new Date(); + var parsed = {}, + setters_order = ['yyyy', 'yy', 'M', 'MM', 'm', 'mm', 'd', 'dd'], + setters_map = { + yyyy: function(d,v){ + return d.setUTCFullYear(v); + }, + yy: function(d,v){ + return d.setUTCFullYear(2000+v); + }, + m: function(d,v){ + if (isNaN(d)) + return d; + v -= 1; + while (v < 0) v += 12; + v %= 12; + d.setUTCMonth(v); + while (d.getUTCMonth() !== v) + d.setUTCDate(d.getUTCDate()-1); + return d; + }, + d: function(d,v){ + return d.setUTCDate(v); + } + }, + val, filtered; + setters_map['M'] = setters_map['MM'] = setters_map['mm'] = setters_map['m']; + setters_map['dd'] = setters_map['d']; + date = UTCDate(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0); + var fparts = format.parts.slice(); + // Remove noop parts + if (parts.length !== fparts.length){ + fparts = $(fparts).filter(function(i,p){ + return $.inArray(p, setters_order) !== -1; + }).toArray(); + } + // Process remainder + function match_part(){ + var m = this.slice(0, parts[i].length), + p = parts[i].slice(0, m.length); + return m === p; + } + if (parts.length === fparts.length){ + var cnt; + for (i=0, cnt = fparts.length; i < cnt; i++){ + val = parseInt(parts[i], 10); + part = fparts[i]; + if (isNaN(val)){ + switch (part){ + case 'MM': + filtered = $(dates[language].months).filter(match_part); + val = $.inArray(filtered[0], dates[language].months) + 1; + break; + case 'M': + filtered = $(dates[language].monthsShort).filter(match_part); + val = $.inArray(filtered[0], dates[language].monthsShort) + 1; + break; + } + } + parsed[part] = val; + } + var _date, s; + for (i=0; i < setters_order.length; i++){ + s = setters_order[i]; + if (s in parsed && !isNaN(parsed[s])){ + _date = new Date(date); + setters_map[s](_date, parsed[s]); + if (!isNaN(_date)) + date = _date; + } + } + } + return date; + }, + formatDate: function(date, format, language){ + if (!date) + return ''; + if (typeof format === 'string') + format = DPGlobal.parseFormat(format); + var val = { + d: date.getUTCDate(), + D: dates[language].daysShort[date.getUTCDay()], + DD: dates[language].days[date.getUTCDay()], + m: date.getUTCMonth() + 1, + M: dates[language].monthsShort[date.getUTCMonth()], + MM: dates[language].months[date.getUTCMonth()], + yy: date.getUTCFullYear().toString().substring(2), + yyyy: date.getUTCFullYear() + }; + val.dd = (val.d < 10 ? '0' : '') + val.d; + val.mm = (val.m < 10 ? '0' : '') + val.m; + date = []; + var seps = $.extend([], format.separators); + for (var i=0, cnt = format.parts.length; i <= cnt; i++){ + if (seps.length) + date.push(seps.shift()); + date.push(val[format.parts[i]]); + } + return date.join(''); + }, + headTemplate: ''+ + ''+ + '«'+ + ''+ + '»'+ + ''+ + '', + contTemplate: '', + footTemplate: ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '' + }; + DPGlobal.template = '

'; + + $.fn.datepicker.DPGlobal = DPGlobal; + + + /* DATEPICKER NO CONFLICT + * =================== */ + + $.fn.datepicker.noConflict = function(){ + $.fn.datepicker = old; + return this; + }; + + + /* DATEPICKER DATA-API + * ================== */ + + $(document).on( + 'focus.datepicker.data-api click.datepicker.data-api', + '[data-provide="datepicker"]', + function(e){ + var $this = $(this); + if ($this.data('datepicker')) + return; + e.preventDefault(); + // component click requires us to explicitly show it + $this.datepicker('show'); + } + ); + $(function(){ + $('[data-provide="datepicker-inline"]').datepicker(); + }); + +}(window.jQuery)); diff --git a/public/lb-faveo/installer/js/index.js b/public/lb-faveo/installer/js/index.js new file mode 100644 index 000000000..6269e1e4a --- /dev/null +++ b/public/lb-faveo/installer/js/index.js @@ -0,0 +1,61 @@ + +var colors = new Array( + [62,35,255], + [60,255,60], + [255,35,98], + [45,175,230], + [255,0,255], + [255,128,0]); + +var step = 0; +//color table indices for: +// current color left +// next color left +// current color right +// next color right +var colorIndices = [0,1,2,3]; + +//transition speed +var gradientSpeed = 0.002; + +function updateGradient() +{ + + if ( $===undefined ) return; + +var c0_0 = colors[colorIndices[0]]; +var c0_1 = colors[colorIndices[1]]; +var c1_0 = colors[colorIndices[2]]; +var c1_1 = colors[colorIndices[3]]; + +var istep = 1 - step; +var r1 = Math.round(istep * c0_0[0] + step * c0_1[0]); +var g1 = Math.round(istep * c0_0[1] + step * c0_1[1]); +var b1 = Math.round(istep * c0_0[2] + step * c0_1[2]); +var color1 = "rgb("+r1+","+g1+","+b1+")"; + +var r2 = Math.round(istep * c1_0[0] + step * c1_1[0]); +var g2 = Math.round(istep * c1_0[1] + step * c1_1[1]); +var b2 = Math.round(istep * c1_0[2] + step * c1_1[2]); +var color2 = "rgb("+r2+","+g2+","+b2+")"; + + $('#gradient').css({ + background: "-webkit-gradient(linear, left top, right top, from("+color1+"), to("+color2+"))"}).css({ + background: "-moz-linear-gradient(left, "+color1+" 0%, "+color2+" 100%)"}); + + step += gradientSpeed; + if ( step >= 1 ) + { + step %= 1; + colorIndices[0] = colorIndices[1]; + colorIndices[2] = colorIndices[3]; + + //pick two new target color indices + //do not pick the same as the current one + colorIndices[1] = ( colorIndices[1] + Math.floor( 1 + Math.random() * (colors.length - 1))) % colors.length; + colorIndices[3] = ( colorIndices[3] + Math.floor( 1 + Math.random() * (colors.length - 1))) % colors.length; + + } +} + +setInterval(updateGradient,10); \ No newline at end of file diff --git a/public/lb-faveo/installer/js/tooltip.js b/public/lb-faveo/installer/js/tooltip.js new file mode 100644 index 000000000..979adba91 --- /dev/null +++ b/public/lb-faveo/installer/js/tooltip.js @@ -0,0 +1,10 @@ +$(document).ready(function() { + $("button").mouseover(function() { + $.ajax({ + url: "demo_test.txt", + success: function(result) { + $(".tool").html(result); + } + }); + }); +}); \ No newline at end of file diff --git a/public/lb-faveo/plugins/datatables/dataTables.bootstrap.css b/public/lb-faveo/plugins/datatables/dataTables.bootstrap.css index 27036b0e5..569f6f03b 100644 --- a/public/lb-faveo/plugins/datatables/dataTables.bootstrap.css +++ b/public/lb-faveo/plugins/datatables/dataTables.bootstrap.css @@ -221,3 +221,38 @@ div.DTFC_LeftFootWrapper table { border-top: none; } + + + + + + /* .first + { + z-index: 2; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; + padding: 4px; + } + .first .active + { + background-color: red; + }*/ + +/* .paginate_button + { + border-radius: 3px; + -webkit-box-shadow: none; + box-shadow: none; + border: 1px solid ; + + }*/ +/* + .paginate_button_disabled{ + border-radius: 3px; + -webkit-box-shadow: none; + box-shadow: none; + border: 1px solid ; + + }*/ diff --git a/public/uploads/en.zip b/public/uploads/en.zip new file mode 100644 index 0000000000000000000000000000000000000000..0583c8be6787a797716f1940fb188e8956a8bfa1 GIT binary patch literal 2610 zcmZ{mdpr}|AICSNMHj2NJ`%}i)f%Ox$hSS;6&a#t=flC2>rMahyT z*W4Mcxvs>D`M%Ei<8#h=pYQAYIcQ6epcnuESP$5l6l-=~ z2Wo)^0svzI0Kg{xsxRK(KhVd|)ql6Ihi~!qRzjTy#I$GD-im>^Y>1*flxw=3b^wtd zU#gRI(6!l|_B0|a#4Jpy>=Oyk^q6Ao(@s{;nTk_@+!-2r43`*iE9E)9oq%eS8l-~d z#Gc!nyLlU6K)iYx9GP=o%tt0udp?UY%U*o*6x6HV`N6RIKy^2zu*UUb(bs+!?6~U! zxOU7bjJ!udG%ia2depd~c_sO-$O`;mqUfa_!nl|gP|J4Ue0i4?)yT!7Sbk@0_1-vX zsX*g%VkLX^XWn6aStnKXK)rq{D$1kBg^zZkJ4OZU)mTx55rDBiS2PT z-!Ln9W_Y7soPvIp62Y*`^@vCZDtdM2qrwr6ymSZc&yk}pxBN}F>JYgfhCfkxLg=69 zB~y~k787Z$T72{m_~?cC=!y8#o^C&|+x)<8xQiLyn=Q|s1%__Pk`|#N$}%uP4hGwB z*c%D5!iZ%a!QOg6G)DAvpnJffbDY6>uW+3zSa4i3jx-unmdPCn4k%6L4E?dqOOtR0 zA60JA3-K(=_gzqJ4)zlM+94IlDhK)}?U5E96UIArWDZoRe)-Q#F!yFG+v%a-jr)Rhl$y7MB&MihLc zQNC16@#2^U+lyK`aK5D^}5N>dBV~ zxl<=s3d=&MFP&co{R{ScPRj<8;;#w<00;PKzL^g;0PlI$6;C|tAE}|zba?u zKg*l-a$?U_)G_yhn({6Vt;z8Z> zb+53Wct%;$nU}$yi@53w6Xu??YTf!3*<2LJCY5_m^}dN_-;#wMaTSJ`WX3?d8y7rx zHn|g(p&3jy;Ei;xS)+{fkhmE#Jk9!;_3OH*?f}LHul4S=scoM1;(7PelDZlG%hmHI zjT`o%L~Vih>MN4pJU&J<9AUV4Q_-UgYK;!dP+APLq`NsyGurR9jZyCQCm>t7cC~`V zylF?Wx%2?2sj2(Ts9^YUo7)iV2_jt~l9C`nEEP*MKw6 zn9~+%gAM)iyq8q2n|fMzf_Jhc_tmqJ9n7W=B=f^d($3~zDYTaki2e$zd*FaWgS-jC ziQ1IfF5(8?3%axdRSYYo&}Io@NlKXS{8&)2top8{VGQEOJtxvU&N8xXDV`tVdE|4f zQVfbJ?`YOo$JaK0c3RqMulsyz;IR1VELmC0J)9I;NcIIYmYMkB^Flgq8ml(8`#)xs zfTj);)T%%|x|64a#WUi+DHxEEx4iDhKH;=)myxv|a=Y+sD4|bbqb@3>Wb4V-J8mRo zGG&H&_nsMJtf$v;Y7{;u!;D;5cih|VQu1hptTHLCf!38_C>K;v4o^zDoEoo>9$mG1 zCt+*vETK7EIf(pboZ2_;_E0{I7OFDg3GF#@(xpIT-yb_o%7aZ76;b+PLGv@41mB)O z7ih;1SD8W^8Mji|!OVCO zGWa(2ghxG6n zn_;JZ2F7ObfFjvAk&dL4k>ATcX)XQN36RvJ*O>{p%}1Q z_bvR_l2w06dfPO=RDI?9!S|Boi$8PL`)A22zJA18Kyzbs4_C}tb1UH;;Pa?J;pv)n zc21;q+EAU;JnLFwk!)1}1POf8xAN_l+J45%?XbGE4Z$Qm_fki4!}JKpxc*c!<4dO3 zOo_=`$qC^Aw(T=|YL?8pNPpkmR_ys9?=b6S0GXn+&&a?;Lc>{agX;2)>-jK>8aoGj zIM%gsY{dv^l!kf*OQK>cw4ooddNJZ3+X@kj`l62_#@iyT$NU=(x8Te6=hW zF#k1vy7F4-!4Ibkb@jS{SF=^H!`lDGwbK7}qP5a2zUlw!OKbHp_WeJO{Lu98EBq6G u*Z(zb*6Lpc|DHr^^)+yRBk{55`LWMG5p5~7?mJdNeh=bb{`UIsv%dfs8h(WU literal 0 HcmV?d00001 diff --git a/resources/lang/en/lang.php b/resources/lang/en/lang.php index c667f582f..3066f68ef 100644 --- a/resources/lang/en/lang.php +++ b/resources/lang/en/lang.php @@ -193,6 +193,7 @@ return array( 'purglog' =>'Purge Logs', 'nameformat' =>'Name Formatting', 'timeformat' =>'Time Format', + 'date' => 'Date', 'dateformat' =>'Date Format', 'date_time' =>'Date And Time Format', 'day_date_time' =>'Day,Date And Time Format', @@ -305,6 +306,22 @@ return array( 'excessive_failed_login_attempts' =>'Excessive failed login attempts', 'system_error_reports' => 'System error Reports', 'Send_app_crash_reports_to_help_Ladybird_improve_Faveo' => 'Send app crash reports to help Ladybird improve Faveo', + + /* + |------------------------------------------------ + |Language page + |------------------------------------------------ + */ + 'iso-code' => 'ISO-CODE', + 'download' => 'Downlaod', + 'upload_file' => 'Upload File', + 'enter_iso-code' => "Enter ISO-CODE", + 'eg.' => 'Example', + 'for' => 'for', + 'english' => 'English', + 'language-name' => 'Language name', + 'file' => 'File', + /* |---------------------------------------------------------------------------------------- diff --git a/resources/lang/su.zip b/resources/lang/su.zip deleted file mode 100644 index 9082dcc9492cc7fc20f76f694c72b1f2599b8a8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7017 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 G1pE*BocP56 diff --git a/resources/lang/su/lang.php b/resources/lang/su/lang.php deleted file mode 100644 index 003e4287d..000000000 --- a/resources/lang/su/lang.php +++ /dev/null @@ -1,876 +0,0 @@ - 'lllllll', - 'fails' => 'lllllll', - 'alert' => 'lllllll', - - /* - |-------------------------------------- - | Login Page - |-------------------------------------- - */ - 'Login_to_start_your_session' => 'lllllll', - 'login' => 'lllllll', - 'remember' => 'lllllll', - 'signmein' => 'lllllll', - 'iforgot' => 'lllllll', - 'email_address' => 'lllllll', - 'password' => 'llllllll', - 'woops' => 'llllllll', - 'theirisproblem' => 'llllllll', - 'login' => 'llllllll', - 'e-mail' => 'llllllll', - 'reg_new_member' => 'llllllll', - - /* - |-------------------------------------- - | Register Page - |-------------------------------------- - */ - 'registration' => 'llllllll', - 'full_name' => 'llllllll', - 'retype_password' => 'llllllll', - 'i_agree_to_the' => 'llllllll', - 'terms' => 'llllllll', - 'register' => 'llllllll', - 'i_already_have_a_membership' => 'llllllll', - - /* - |-------------------------------------- - | Reset Password Page - |-------------------------------------- - */ - 'reset_password' => 'llllllll', - - - /* - |-------------------------------------- - | Forgot Password Page - |-------------------------------------- - */ - 'i_know_my_password' => 'llllllll', - 'recover_passord' => 'llllllll', - 'send_password_reset_link' => 'llllllll', - 'enter_email_to_reset_password' => 'llllllll', - - - /* - |---------------------------------------------------------------------------------------- - | Emails Pages [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Emails related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - 'admin_panel' => 'llllllll', - 'emails' => 'llllllll', - /* - |-------------------------------------- - | Emails Create Page - |-------------------------------------- - */ - 'incoming_emails' => 'llllllll', - 'reuired_authentication' => 'llllllll', - 'fetching_email_via_imap_or_pop' => 'llllllll', - 'create_email' =>'llllllll', - 'email_address' =>'llllllll', - 'email_name' =>'llllllll', - 'help_topic' =>'llllllll', - 'auto_response' =>'llllllll', - 'host_name' =>'llllllll', - 'port_number' =>'llllllll', - 'mail_box_protocol' =>'llllllll', - 'authentication_required' =>'llllllll', - 'yes' =>'llllllll', - 'no' =>'llllllll', - 'header_spoofing' =>'llllllll', - 'allow_for_this_email' =>'llllllll', - 'imap_config' =>'llllllll', - - /* - |-------------------------------------- - | Ban Emails Create Page - |-------------------------------------- - */ - 'ban_lists' =>'llllllll', - 'ban_email' =>'llllllll', - 'banlists' =>'llllllll', - 'ban_status' =>'llllllll', - - /* - |-------------------------------------- - | Templates Index Page - |-------------------------------------- - */ - - 'templates' =>'llllllll', - 'create_template' =>'llllllll', - 'in_use' =>'llllllll', - - /* - |-------------------------------------- - | Templates Create Page - |-------------------------------------- - */ - - 'template_set_to_clone' =>'llllllll', - 'language' =>'llllllll', - - - /* - |-------------------------------------- - | Diagnostics Page - |-------------------------------------- - */ - - 'diagnostics' =>'llllllll', - 'from' =>'llllllll', - 'to' =>'llllllll', - 'subject' =>'llllllll', - 'message' =>'llllllll', - 'send' =>'llllllll', - - - - /* - |---------------------------------------------------------------------------------------- - | Settings Pages [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Setting related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - - /* - |-------------------------------------- - | Company Settings Page - |-------------------------------------- - */ - - 'company' =>'llllllll', - 'website' =>'llllllll', - 'phone' =>'llllllll', - 'address' =>'llllllll', - 'landing' =>'llllllll', - 'offline' =>'llllllll', - 'thank' =>'llllllll', - 'logo' =>'llllllll', - 'save' =>'llllllll', - - /* - |-------------------------------------- - | System Settings Page - |-------------------------------------- - */ - - 'system' =>'llllllll', - 'online' =>'llllllll', - 'offline' =>'llllllll', - 'name/title' =>'llllllll', - 'pagesize' =>'llllllll', - 'url' =>'llllllll', - 'default_department'=>'llllllll', - 'loglevel' =>'llllllll', - 'purglog' =>'llllllll', - 'nameformat' =>'llllllll', - 'timeformat' =>'llllllll', - 'dateformat' =>'llllllll', - 'date_time' =>'llllllll', - 'day_date_time' =>'llllllll', - 'timezone' =>'llllllll', - - /* - |-------------------------------------- - | Email Settings Page - |-------------------------------------- - */ - - 'email' =>'llllllll', - 'default_template' =>'llllllll', - 'default_system_email' =>'llllllll', - 'default_alert_email' =>'llllllll', - 'admin_email' =>'llllllll', - 'email_fetch' =>'llllllll', - 'enable' =>'llllllll', - 'default_MTA' =>'llllllll', - 'fetch_auto-corn' =>'llllllll', - 'strip_quoted_reply' =>'llllllll', - 'reply_separator' =>'llllllll', - 'accept_all_email' =>'llllllll', - 'accept_email_unknown' =>'llllllll', - 'accept_email_collab' =>'llllllll', - 'automatically_and_collab_from_email'=>'llllllll', - 'default_alert_email' =>'llllllll', - 'attachments' =>'llllllll', - 'email_attahment_user' =>'llllllll', - - - - /* - |-------------------------------------- - | Ticket Settings Page - |-------------------------------------- - */ - - 'ticket' =>'llllllll', - 'default_ticket_number_format' =>'llllllll', - 'default_ticket_number_sequence' =>'llllllll', - 'default_status' =>'llllllll', - 'default_priority' =>'llllllll', - 'default_sla' =>'llllllll', - 'default_help_topic' =>'llllllll', - 'maximum_open_tickets' =>'llllllll', - 'agent_collision_avoidance_duration'=>'llllllll', - 'human_verification' =>'llllllll', - 'claim_on_response' =>'llllllll', - 'assigned_tickets' =>'llllllll', - 'answered_tickets' =>'llllllll', - 'agent_identity_masking' =>'llllllll', - 'enable_HTML_ticket_thread' =>'llllllll', - 'allow_client_updates' =>'llllllll', - - - - /* - |-------------------------------------- - | Access Settings Page - |-------------------------------------- - */ - - 'access' =>'llllllll', - 'expiration_policy' =>'llllllll', - 'allow_password_resets' =>'llllllll', - 'reset_token_expiration' =>'llllllll', - 'agent_session_timeout' =>'llllllll', - 'bind_agent_session_IP' =>'llllllll', - 'registration_required' =>'llllllll', - 'require_registration_and_login_to_create_tickets' =>'llllllll', - 'registration_method' =>'llllllll', - 'user_session_timeout' =>'llllllll', - 'client_quick_access' =>'llllllll', - - /* - |-------------------------------------- - | Auto-Response Settings Page - |-------------------------------------- - */ - - 'auto_responce' =>'llllllll', - 'new_ticket' =>'llllllll', - 'new_ticket_by_agent' =>'llllllll', - 'new_message' =>'llllllll', - 'submitter' =>'llllllll', - 'send_receipt_confirmation' =>'llllllll', - 'participants' =>'llllllll', - 'send_new_activity_notice' =>'llllllll', - 'overlimit_notice' =>'llllllll', - 'email_attachments_to_the_user' =>'llllllll', - - /* - |-------------------------------------- - | Alert & Notice Settings Page - |-------------------------------------- - */ - 'disable' =>'llllllll', - 'admin_email_2' =>'llllllll', - 'alert_notices' =>'llllllll', - 'new_ticket_alert' =>'llllllll', - 'department_manager' =>'llllllll', - 'department_members' =>'llllllll', - 'organization_account_manager' =>'llllllll', - 'new_message_alert' =>'llllllll', - 'last_respondent' =>'llllllll', - 'assigned_agent_team' =>'llllllll', - 'new_internal_note_alert' =>'llllllll', - 'ticket_assignment_alert' =>'llllllll', - 'team_lead' =>'llllllll', - 'team_members' =>'llllllll', - 'ticket_transfer_alert' =>'llllllll', - 'overdue_ticket_alert' =>'llllllll', - 'system_alerts' =>'llllllll', - 'system_errors' =>'llllllll', - 'SQL_errors' =>'llllllll', - 'excessive_failed_login_attempts' =>'llllllll', - - - /* - |---------------------------------------------------------------------------------------- - | Theme Pages [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Theme related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - 'themes' => 'llllllll', - /* - |-------------------------------------- - | Footer Pages - |-------------------------------------- - */ - 'footer' => 'llllllll', - 'footer1' => 'llllllll', - 'footer2' => 'llllllll', - 'footer3' => 'llllllll', - 'footer4' => 'llllllll', - - - /* - |---------------------------------------------------------------------------------------- - | Manage Pages [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Manage related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - 'manage' => 'llllllll', - /* - |-------------------------------------- - | Help Topic index Page - |-------------------------------------- - */ - - 'help_topics' => 'llllllll', - 'topic' =>'llllllll', - 'type' =>'llllllll', - 'priority' =>'llllllll', - 'last_updated' =>'llllllll', - 'create_help_topic' =>'llllllll', - 'action' =>'llllllll', - - /* - |-------------------------------------- - | Help Topic Create Page - |-------------------------------------- - */ - - 'active' =>'llllllll', - 'disabled' =>'llllllll', - 'public' =>'llllllll', - 'private' =>'llllllll', - 'parent_topic' =>'llllllll', - 'Custom_form' =>'llllllll', - 'SLA_plan' =>'llllllll', - 'auto_assign' =>'llllllll', - 'auto_respons' =>'llllllll', - 'ticket_number_format' =>'llllllll', - 'system_default' =>'llllllll', - 'custom' =>'llllllll', - 'internal_notes' =>'llllllll', - - - /* - |-------------------------------------- - | SLA plan Index Page - |-------------------------------------- - */ - 'sla_plans' => 'llllllll', - 'create_SLA' =>'llllllll', - 'grace_period' =>'llllllll', - 'added_date' =>'llllllll', - - /* - |-------------------------------------- - | SLA plan Create Page - |-------------------------------------- - */ - - 'transient' =>'llllllll', - 'ticket_overdue_alert' =>'llllllll', - - /* - |-------------------------------------- - | Form Create Page - |-------------------------------------- - */ - - 'title' =>'llllllll', - 'instruction' =>'llllllll', - 'label' =>'llllllll', - 'visibility' =>'llllllll', - 'variable' =>'llllllll', - 'create_form' =>'llllllll', - 'forms' =>'llllllll', - 'form_name' => 'llllllll', - 'view_this_form' => 'llllllll', - 'delete_from' => 'llllllll', - 'are_you_sure_you_want_to_delete' => 'llllllll', - 'close' => 'llllllll', - 'instructions' => 'llllllll', - "instructions_on_creating_form" => "lllllll", - 'form_properties' => 'llllllll', - 'adding_fields' => 'llllllll', - "click_add_fields_button_to_add_fields" => "llllllll", - 'add_fields' => 'llllllll', - 'save_form' => 'llllllll', - 'label' => 'llllllll', - 'name' => 'llllllll', - 'type' => 'llllllll', - 'values(selected_fields)' => 'llllllll', - 'required' => 'llllllll', - 'Action' => 'llllllll', - 'remove' => 'llllllll', - - - - - /* - |---------------------------------------------------------------------------------------- - | Staff Pages [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Staff related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - - - /* - |-------------------------------------- - | Staff index Page - |-------------------------------------- - */ - - 'are_you_sure' => 'llllllll', - 'staffs' => 'llllllll', - 'name' =>'llllllll', - 'user_name' =>'llllllll', - 'status' =>'llllllll', - 'group' =>'llllllll', - 'department' =>'llllllll', - 'created' =>'llllllll', - 'lastlogin' =>'llllllll', - 'createagent' =>'llllllll', - 'delete' =>'llllllll', - 'agents' =>'llllllll', - 'create' =>'llllllll', - 'edit' =>'llllllll', - 'departments' =>'llllllll', - 'groups' =>'lllllll', - - - /* - |-------------------------------------- - | Staff Create Page - |-------------------------------------- - */ - - 'create_agent' =>'llllllll', - 'first_name' =>'llllllll', - 'last_name' =>'llllllll', - 'mobile_number' =>'llllllll', - 'agent_signature' =>'llllllll', - 'account_status_setting' =>'llllllll', - 'account_type' =>'llllllll', - 'admin' =>'llllllll', - 'agent' =>'llllllll', - 'account_status' =>'llllllll', - 'locked' =>'llllllll', - 'assigned_group' =>'llllllll', - 'primary_department' =>'llllllll', - 'agent_time_zone' =>'llllllll', - 'day_light_saving' =>'llllllll', - 'limit_access' =>'llllllll', - 'directory_listing' =>'llllllll', - 'vocation_mode' =>'llllllll', - 'assigned_team' =>'llllllll', - - - /* - |-------------------------------------- - | Department Create Page - |-------------------------------------- - */ - - 'create_department' =>'llllllll', - 'manager' =>'llllllll', - 'ticket_assignment' =>'llllllll', - 'restrict_ticket_assignment_to_department_members' =>'llllllll', - 'outgoing_emails' =>'llllllll', - 'template_set' =>'llllllll', - 'auto_responding_settings' =>'llllllll', - 'disable_for_this_department' =>'llllllll', - 'auto_response_email' =>'Allllllll', - 'recipient' =>'llllllll', - 'group_access' =>'llllllll', - 'department_signature' =>'llllllll', - - /* - |-------------------------------------- - | Team Create Page - |-------------------------------------- - */ - - 'create_team'=>'llllllll', - 'team_lead'=>'llllllll', - 'assignment_alert'=>'llllllll', - 'disable_for_this_team'=>'llllllll', - 'teams'=>'llllllll', - - /* - |-------------------------------------- - | Group Create Page - |-------------------------------------- - */ - - 'create_group' =>'llllllll', - 'goups' =>'llllllll', - 'can_create_ticket' =>'llllllll', - 'can_edit_ticket' =>'llllllll', - 'can_post_ticket' =>'llllllll', - 'can_close_ticket' =>'llllllll', - 'can_assign_ticket' =>'llllllll', - 'can_transfer_ticket' =>'llllllll', - 'can_delete_ticket' =>'llllllll', - 'can_ban_emails' =>'llllllll', - 'can_manage_premade' =>'llllllll', - 'can_manage_FAQ' =>'llllllll', - 'can_view_agent_stats' =>'llllllll', - 'department_access' =>'llllllll', - 'admin_notes' =>'llllllll', - 'group_members' =>'llllllll', - 'group_name' =>'llllllll', - - - /* - |-------------------------------------- - | SMTP Page - |-------------------------------------- - */ - 'driver' => 'llllllll', - 'smtp' => 'llllllll', - 'host'=>'llllllll', - 'port'=>'llllllll', - 'encryption'=>'llllllll', - - - - /* - |---------------------------------------------------------------------------------------- - | Agent Panel [English(en)] - |---------------------------------------------------------------------------------------- - | - | The following language lines are used in all Agent Panel related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - - 'agent_panel' => 'llllllll', - 'profile' => 'llllllll', - 'change_password' => 'llllllll', - 'sign_out' => 'llllllll', - 'Tickets' => 'llllllll', - 'inbox' => 'llllllll', - 'my_tickets' => 'llllllll', - 'unassigned' => 'llllllll', - 'trash' => 'llllllll', - 'Updates' => 'llllllll', - 'no_new_updates' => 'llllllll', - 'check_for_updates' => 'llllllll', - 'open' => 'llllllll', - 'inprogress' => 'llllllll', - 'closed' => 'llllllll', - 'Departments' => 'llllllll', - 'tools' => 'llllllll', - 'canned' => 'llllllll', - 'knowledge_base' => 'llllllll', - - - - /* - |----------------------------------------------- - | Profile - |----------------------------------------------- - */ - 'user_information' => 'llllllll', - 'time_zone' => 'llllllll', - 'phone_number' => 'llllllll', - 'contact_information' => 'llllllll', - - - /* - |----------------------------------------------- - | Dashboard - |----------------------------------------------- - */ - 'dashboard' => 'llllllll', - 'line_chart' => 'llllllll', - 'statistics' => 'llllllll', - 'opened' => 'llllllll', - 'resolved' => 'llllllll', - 'closed' => 'llllllll', - 'deleted' => 'llllllll', - - - /* - |------------------------------------------------ - |User Page - |------------------------------------------------ - */ - 'user_directory' => 'llllllll', - 'ban' => 'llllllll', - 'user' => 'llllllll', - 'users' => 'llllllll', - 'create_user' => 'llllllll', - 'full_name' => 'llllllll', - 'mobile' => 'llllllll', - 'last_login' => 'llllllll', - 'user_profile' => 'llllllll', - 'assign' => 'llllllll', - 'open_tickets' => 'llllllll', - 'closed_tickets' => 'llllllll', - 'deleted_tickets' => 'llllllll', - - - - /* - |------------------------------------------------ - |Organization Page - |------------------------------------------------ - */ - 'organizations' => 'llllllll', - 'organization' => 'llllllll', - 'create_organization' => 'llllllll', - 'account_manager' => 'llllllll', - 'update' => 'llllllll', - 'organization_profile' => 'llllllll', - 'please_select_an_organization' => 'llllllll', - 'please_select_an_user' => 'llllllll', - 'organization-s_head' => "llllllll", - 'select_department_manager' => 'llllllll', - 'users_of' => 'llllllll', - - - - /* - |---------------------------------------------- - | Ticket page - |---------------------------------------------- - */ - 'subject' => 'llllllll', - 'ticket_id' => 'llllllll', - 'priority' => 'llllllll', - 'from' => 'llllllll', - 'last_replier' => 'llllllll', - 'assigned_to' => 'llllllll', - 'last_activity' => 'llllllll', - 'answered' => 'llllllll', - 'assigned' => 'llllllll', - 'create_ticket' => 'llllllll', - 'tickets' => 'llllllll', - 'open' => 'llllllll', - 'Ticket_Information' => 'llllllll', - 'Ticket_Id' => 'llllllll', - 'User' => 'llllllll', - 'Unassigned' => 'llllllll', - 'generate_pdf' => 'llllllll', - 'change_status' => 'llllllll', - 'more' => 'llllllll', - 'delete_ticket' => 'llllllll', - 'emergency' => 'llllllll', - 'high' => 'llllllll', - 'medium' => 'llllllll', - 'low' => 'llllllll', - 'sla_plan' => 'llllllll', - 'created_date' => 'llllllll', - 'due_date' => 'llllllll', - 'last_response' => 'llllllll', - 'source' => 'llllllll', - 'last_message' => 'llllllll', - 'reply' => 'llllllll', - 'response' => 'llllllll', - 'reply_content' => 'llllllll', - 'attachment' => 'llllllll', - 'internal_note' => 'llllllll', - 'this_ticket_is_under_banned_user' => 'llllllll', - 'ticket_source' => 'llllllll', - 'are_you_sure_to_ban' => 'llllllll', - 'whome_do_you_want_to_assign_ticket' => 'llllllll', - 'are_you_sure_you_want_to_surrender_this_ticket' => 'llllllll', - 'add_collaborator' => 'llllllll', - 'search_existing_users' => 'llllllll', - 'add_new_user' => 'llllllll', - 'search_existing_users_or_add_new_users' => 'llllllll', - 'search_by_email' => 'llllllll', - 'list_of_collaborators_of_this_ticket' => 'llllllll', - 'submit' => 'llllllll', - 'max' => 'llllllll', - 'add_cc' => 'llllllll', - 'recepients' => 'llllllll', - 'select_a_canned_response' => 'llllllll', - 'assign_to' => 'llllllll', - 'detail' => 'llllllll', - 'user_details' => 'llllllll', - 'ticket_option' => 'llllllll', - 'ticket_detail' => 'llllllll', - - - - - /* - |------------------------------------------------ - |Tools Page - |------------------------------------------------ - */ - 'canned_response' => 'llllllll', - 'create_canned_response' => 'llllllll', - 'surrender' => 'llllllll', - 'view' => 'llllllll', - - - - - /* - |----------------------------------------------- - | Main text - |----------------------------------------------- - */ - 'copyright' => 'llllllll', - 'all_rights_reserved' => 'llllllll', - 'powered_by' => 'llllllll', - - - /* - |------------------------------------------------ - |Guest-User Page - |------------------------------------------------ - */ - 'issue_summary' => 'llllllll', - 'issue_details' => 'llllllll', - 'contact_informations' => 'llllllll', - 'contact_details' => 'llllllll', - 'role' => 'llllllll', - 'ext' => 'llllllll', - 'profile_pic' => 'llllllll', - 'agent_sign' => 'llllllll', - 'inactive' => 'llllllll', - 'male' => 'llllllll', - 'female' => 'llllllll', - 'old_password' => 'llllllll', - 'new_password' => 'llllllll', - 'confirm_password' => 'llllllll', - 'gender' => 'llllllll', - 'ticket_number' => 'llllllll', - 'content' => 'llllllll', - - /* - |------------------------------------------------ - | Error Pages - |------------------------------------------------ - */ - 'not_found' => 'llllllll', - 'oops_page_not_found' => 'llllllll', - 'we_could_not_find_the_page_you_were_looking_for'=>'llllllll', - 'internal_server_error' => 'llllllll', - 'be_right_back' => 'llllllll', - 'sorry' => 'llllllll', - 'we_are_working_on_it' => 'llllllll', - - - - - - 'category' => 'llllllll', - 'addcategory' => 'llllllll', - 'allcategory' => 'llllllll', - 'article' => 'llllllll', - 'articles' => 'llllllll', - 'addarticle' => 'llllllll', - 'allarticle' => 'llllllll', - 'pages' => 'llllllll', - 'addpages' => 'llllllll', - 'allpages' => 'llllllll', - 'widgets' => 'llllllll', - 'footer1' => 'llllllll', - 'footer2' => 'llllllll', - 'footer3' => 'llllllll', - 'footer4' => 'llllllll', - 'sidewidget1' => 'llllllll', - 'sidewidget2' => 'llllllll', - 'comments' => 'llllllll', - 'settings' => 'llllllll', - 'parent' => 'llllllll', - 'description' => 'llllllll', - 'enter_the_description' => 'llllllll', - 'publish' => 'llllllll', - 'published' => 'llllllll', - 'draft' => 'llllllll', - 'create_a_category' => 'llllllll', - 'add' => 'llllllll', - 'social' => 'llllllll', - 'comment' => 'llllllll', - 'not_published' => 'llllllll', - 'numberofelementstodisplay' => 'llllllll', - //====================================== - 'language' => 'llllllll', - 'save' => 'llllllll', - 'create' => 'Cllllllll', - 'dateformat' => 'llllllll', - 'slug' => 'llllllll', - 'read_more' => 'llllllll', - 'view_all' => 'llllllll', - 'categories' => 'llllllll', - 'need_more_support' => 'llllllll', - 'if_you_did_not_find_an_answer_please_raise_a_ticket_describing_the_issue' => 'llllllll', - 'have_a_question?_type_your_search_term_here' => 'llllllll', - 'search' => 'llllllll', - 'frequently_asked_questions' => 'llllllll', - 'leave_a_reply' => 'llllllll', - 'post_message' => 'llllllll', - - - - - - /* - |-------------------------------------------------------------------------------------- - | Client Panel [English(en)] - |-------------------------------------------------------------------------------------- - | The following language lines are used in all Agent Panel related issues to translate - | some words in view to English. You are free to change them to anything you want to - | customize your views to better match your application. - | - */ - 'home' => 'llllllll', - 'submit_a_ticket' => 'llllllll', - 'my_profile' => 'llllllll', - 'log_out' => 'llllllll', - 'forgot_password' => 'llllllll', - 'create_account' => 'llllllll', - 'you_are_here' => 'llllllll', - 'have_a_ticket' => 'llllllll', - 'check_ticket_status' => 'llllllll', - 'choose_a_help_topic' => 'llllllll', - 'ticket_status' => 'llllllll', - - - - - ); \ No newline at end of file diff --git a/resources/lang/su/pagination.php b/resources/lang/su/pagination.php deleted file mode 100644 index 13b4dcb3c..000000000 --- a/resources/lang/su/pagination.php +++ /dev/null @@ -1,19 +0,0 @@ - '« Previous', - 'next' => 'Next »', - -]; diff --git a/resources/lang/su/passwords.php b/resources/lang/su/passwords.php deleted file mode 100644 index 1fc0e1ef1..000000000 --- a/resources/lang/su/passwords.php +++ /dev/null @@ -1,22 +0,0 @@ - "Passwords must be at least six characters and match the confirmation.", - "user" => "We can't find a user with that e-mail address.", - "token" => "This password reset token is invalid.", - "sent" => "We have e-mailed your password reset link!", - "reset" => "Your password has been reset!", - -]; diff --git a/resources/lang/su/validation.php b/resources/lang/su/validation.php deleted file mode 100644 index 764f05636..000000000 --- a/resources/lang/su/validation.php +++ /dev/null @@ -1,107 +0,0 @@ - "The :attribute must be accepted.", - "active_url" => "The :attribute is not a valid URL.", - "after" => "The :attribute must be a date after :date.", - "alpha" => "The :attribute may only contain letters.", - "alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.", - "alpha_num" => "The :attribute may only contain letters and numbers.", - "array" => "The :attribute must be an array.", - "before" => "The :attribute must be a date before :date.", - "between" => [ - "numeric" => "The :attribute must be between :min and :max.", - "file" => "The :attribute must be between :min and :max kilobytes.", - "string" => "The :attribute must be between :min and :max characters.", - "array" => "The :attribute must have between :min and :max items.", - ], - "boolean" => "The :attribute field must be true or false.", - "confirmed" => "The :attribute confirmation does not match.", - "date" => "The :attribute is not a valid date.", - "date_format" => "The :attribute does not match the format :format.", - "different" => "The :attribute and :other must be different.", - "digits" => "The :attribute must be :digits digits.", - "digits_between" => "The :attribute must be between :min and :max digits.", - "email" => "The :attribute must be a valid email address.", - "filled" => "The :attribute field is required.", - "exists" => "The selected :attribute is invalid.", - "image" => "The :attribute must be an image.", - "in" => "The selected :attribute is invalid.", - "integer" => "The :attribute must be an integer.", - "ip" => "The :attribute must be a valid IP address.", - "max" => [ - "numeric" => "The :attribute may not be greater than :max.", - "file" => "The :attribute may not be greater than :max kilobytes.", - "string" => "The :attribute may not be greater than :max characters.", - "array" => "The :attribute may not have more than :max items.", - ], - "mimes" => "The :attribute must be a file of type: :values.", - "min" => [ - "numeric" => "The :attribute must be at least :min.", - "file" => "The :attribute must be at least :min kilobytes.", - "string" => "The :attribute must be at least :min characters.", - "array" => "The :attribute must have at least :min items.", - ], - "not_in" => "The selected :attribute is invalid.", - "numeric" => "The :attribute must be a number.", - "regex" => "The :attribute format is invalid.", - "required" => "The :attribute field is required.", - "required_if" => "The :attribute field is required when :other is :value.", - "required_with" => "The :attribute field is required when :values is present.", - "required_with_all" => "The :attribute field is required when :values is present.", - "required_without" => "The :attribute field is required when :values is not present.", - "required_without_all" => "The :attribute field is required when none of :values are present.", - "same" => "The :attribute and :other must match.", - "size" => [ - "numeric" => "The :attribute must be :size.", - "file" => "The :attribute must be :size kilobytes.", - "string" => "The :attribute must be :size characters.", - "array" => "The :attribute must contain :size items.", - ], - "unique" => "The :attribute has already been taken.", - "url" => "The :attribute format is invalid.", - "timezone" => "The :attribute must be a valid zone.", - - /* - |-------------------------------------------------------------------------- - | Custom Validation Language Lines - |-------------------------------------------------------------------------- - | - | Here you may specify custom validation messages for attributes using the - | convention "attribute.rule" to name the lines. This makes it quick to - | specify a specific custom language line for a given attribute rule. - | - */ - - 'custom' => [ - 'attribute-name' => [ - 'rule-name' => 'custom-message', - ], - ], - - /* - |-------------------------------------------------------------------------- - | Custom Validation Attributes - |-------------------------------------------------------------------------- - | - | The following language lines are used to swap attribute place-holders - | with something more reader friendly such as E-Mail Address instead - | of "email". This simply helps us make messages a little cleaner. - | - */ - - 'attributes' => [], - -]; diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index 33106f3f9..8bacbd60f 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -15,6 +15,13 @@ {!! Lang::get('lang.alert') !!}! + @endif + + @if(Session::has('error')) +
+ +
  • {!! Session::get('error') !!}
  • +
    @endif {!! Form::open(['action'=>'Auth\AuthController@postLogin', 'method'=>'post']) !!} diff --git a/resources/views/themes/default1/admin/helpdesk/language/create.blade.php b/resources/views/themes/default1/admin/helpdesk/language/create.blade.php new file mode 100644 index 000000000..851426389 --- /dev/null +++ b/resources/views/themes/default1/admin/helpdesk/language/create.blade.php @@ -0,0 +1,102 @@ +@extends('themes.default1.admin.layout.admin') + +@section('Settings') +class="active" +@stop + +@section('settings-bar') +active +@stop + +@section('languages') +class="active" +@stop + + +@section('HeadInclude') +@stop + +@section('PageHeader') + +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + + + + {!! Form::open(array('url'=>'language/add' , 'method' => 'post', 'files'=>true) )!!} + + +
    +
    + +

    Add language package {!! Form::submit(Lang::get('lang.save'),['class'=>'form-group btn btn-primary pull-right'])!!}

    + +
    + +
    + @if(Session::has('success')) +
    + + +

    {{Session::get('success')}}

    +
    + @endif + + @if(Session::has('fails')) +
    + @endif + +
    + +
    + + {!! Form::label('language-name',Lang::get('lang.language-name')) !!} + {!! Form::text('language-name',null,['placeholder'=>'English','class' => 'form-control']) !!} + {!! $errors->first('language-name', ':message') !!} + + +
    +
    + + {!! Form::label('iso-code',Lang::get('lang.iso-code')) !!} + {!! Form::text('iso-code',null,['placeholder'=>'en','class' => 'form-control']) !!} + {!! $errors->first('iso-code', ':message') !!} + +
    +
    +
    +
    + + {!! Form::label('File',Lang::get('lang.file')) !!} +
    {!! Lang::get('lang.upload_file') !!} + {!! Form::file('File') !!} +
    + {!! $errors->first('File', ':message') !!} + +
    +
    + + +@stop +@section('FooterInclude') + +@stop + + + diff --git a/resources/views/themes/default1/admin/helpdesk/language/index.blade.php b/resources/views/themes/default1/admin/helpdesk/language/index.blade.php new file mode 100644 index 000000000..9435c104a --- /dev/null +++ b/resources/views/themes/default1/admin/helpdesk/language/index.blade.php @@ -0,0 +1,61 @@ +@extends('themes.default1.admin.layout.admin') + +@section('Settings') +class="active" +@stop + +@section('settings-bar') +active +@stop + +@section('languages') +class="active" +@stop + + +@section('HeadInclude') +@stop + +@section('PageHeader') + +@stop + + +@section('breadcrumbs') + +@stop + + + +@section('content') +
    +
    +

    {{ Lang::get('lang.language') }}

    {{Lang::get('lang.add')}} + {{Lang::get('lang.download')}} +
    +
    + + @if(Session::has('success')) +
    + + + {{Session::get('success')}} Enable it +
    + @endif + + @if(Session::has('fails')) +
    + + + {{Session::get('fails')}} +
    + @endif + {!! Datatable::table() + ->addColumn(Lang::get('lang.language'),Lang::get('lang.iso-code'),Lang::get('lang.status'),Lang::get('lang.Action')) // these are the column headings to be shown + ->setUrl(route('getAllLanguages')) // this is the route where data will be retrieved + ->render() !!} +
    +
    +@stop \ No newline at end of file diff --git a/resources/views/themes/default1/admin/helpdesk/setting.blade.php b/resources/views/themes/default1/admin/helpdesk/setting.blade.php new file mode 100644 index 000000000..7458a6068 --- /dev/null +++ b/resources/views/themes/default1/admin/helpdesk/setting.blade.php @@ -0,0 +1,435 @@ +@extends('themes.default1.admin.layout.admin') +@section('HeadInclude') +@stop + +@section('PageHeader') +
    +

    {!! Lang::get('lang.admin_panel') !!}

    +
    +@stop + + +@section('breadcrumbs') + +@stop + + +@section('content') + +
    +
    +

    {!! Lang::get('lang.staffs') !!}

    +
    + +
    +
    +
    + +
    +
    +
    + + + +
    +
    {!! Lang::get('lang.agents') !!}
    +
    +
    + + +
    +
    +
    + + + +
    +
    {!! Lang::get('lang.departments') !!}
    +
    +
    + + + +
    +
    +
    + + + +
    +
    {!! Lang::get('lang.teams') !!}
    +
    +
    + + +
    +
    + +
    {!! Lang::get('lang.groups') !!}
    +
    +
    + +
    +
    + +
    + +
    + + + + +
    +
    +

    {!! Lang::get('lang.email') !!}

    +
    + +
    +
    +
    + +
    +
    + +
    {!! Lang::get('lang.incoming_emails') !!}
    +
    +
    + + +
    +
    + +
    {!! Lang::get('lang.outgoing_emails') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.ban_lists') !!}
    +
    +
    + + +
    +
    + +
    {!! Lang::get('lang.diagnostics') !!}
    +
    +
    + + +
    +
    + +
    + +
    + + + + +
    +
    +

    {!! Lang::get('lang.manage') !!}

    +
    + +
    +
    +
    + +
    +
    + +
    {!! Lang::get('lang.help_topics') !!}
    +
    +
    + + +
    +
    + +
    {!! Lang::get('lang.sla_plans') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.forms') !!}
    +
    +
    + + +
    +
    + +
    + +
    + + + +
    +
    +

    {!! Lang::get('lang.settings') !!}

    +
    + +
    +
    +
    + +
    +
    + +
    {!! Lang::get('lang.company') !!}
    +
    +
    + + +
    +
    + +
    {!! Lang::get('lang.system') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.email') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.ticket') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.auto_response') !!}
    +
    +
    + + + +
    +
    +
    + + + +
    +
    {!! Lang::get('lang.alert_notices') !!}
    +
    +
    + + + +
    +
    +
    + + + +
    +
    {!! Lang::get('lang.language') !!}
    +
    +
    + + +
    +
    + +
    + +
    + + + + +
    +
    +

    {!! Lang::get('lang.themes') !!}

    +
    + +
    +
    +
    + +
    +
    + +
    {!! Lang::get('lang.footer') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.footer2') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.footer3') !!}
    +
    +
    + + + +
    +
    + +
    {!! Lang::get('lang.footer4') !!}
    +
    +
    + + +
    +
    + +
    + +
    + + + + +
    +
    +

    {!! Lang::get('lang.plugin') !!}

    +
    + +
    +
    +
    + +
    +
    + +
    {!! Lang::get('lang.plugin') !!}
    +
    +
    + + +
    +
    + +
    + +
    + + +@stop diff --git a/resources/views/themes/default1/admin/layout/admin.blade.php b/resources/views/themes/default1/admin/layout/admin.blade.php index 027ab1b0e..54eb3a7c9 100644 --- a/resources/views/themes/default1/admin/layout/admin.blade.php +++ b/resources/views/themes/default1/admin/layout/admin.blade.php @@ -28,10 +28,13 @@ + + + @yield('HeadInclude') @@ -49,18 +52,12 @@
    +

    + +@stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer - Copy/helpdesk/view3.blade.php b/resources/views/themes/default1/installer - Copy/helpdesk/view3.blade.php new file mode 100644 index 000000000..08e0b58f4 --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/helpdesk/view3.blade.php @@ -0,0 +1,166 @@ +@extends('themes.default1.installer.layout.installer') + +@section('content') + + +

    Localisation

    + +

    +@stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer - Copy/helpdesk/view4.blade.php b/resources/views/themes/default1/installer - Copy/helpdesk/view4.blade.php new file mode 100644 index 000000000..569724051 --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/helpdesk/view4.blade.php @@ -0,0 +1,32 @@ +@extends('themes.default1.installer.layout.installer') +@section('content') +

    Configuration

    + +

    +@stop + + diff --git a/resources/views/themes/default1/installer - Copy/helpdesk/view5.blade.php b/resources/views/themes/default1/installer - Copy/helpdesk/view5.blade.php new file mode 100644 index 000000000..3a9affd29 --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/helpdesk/view5.blade.php @@ -0,0 +1,205 @@ +@extends('themes.default1.installer.layout.installer') +@section('content') + +

    Database test

    +

    +@stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer - Copy/helpdesk/view6.blade.php b/resources/views/themes/default1/installer - Copy/helpdesk/view6.blade.php new file mode 100644 index 000000000..348875ec4 --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/helpdesk/view6.blade.php @@ -0,0 +1,198 @@ +@extends('themes.default1.installer.layout.installer') + +@section('content') +

    Create Admin Account

    +

    +@stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer - Copy/helpdesk/view7.blade.php b/resources/views/themes/default1/installer - Copy/helpdesk/view7.blade.php new file mode 100644 index 000000000..397eb7b6e --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/helpdesk/view7.blade.php @@ -0,0 +1,26 @@ +@extends('themes.default1.installer.layout.installer') +@section('content') + + +

    You're All Set

    +

    + +

    Thank You

    +

    + +
    +     Submit +


    +

    + +@stop diff --git a/resources/views/themes/default1/installer - Copy/layout/installer.blade.php b/resources/views/themes/default1/installer - Copy/layout/installer.blade.php new file mode 100644 index 000000000..41fb9aadc --- /dev/null +++ b/resources/views/themes/default1/installer - Copy/layout/installer.blade.php @@ -0,0 +1,118 @@ + + + + Faveo HELPDESK | Insatller + + + + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/bootstrap.min.css'); }} --}} + + + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/font-awesome.min.css'); }} --}} + + + + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/admin/css/ionicons.min.css'); }} --}} + + + + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/admin/css/AdminLTE.css'); }} --}} + + + {{-- --}} + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/daterangepicker/daterangepicker-bs3.css'); }} --}} + + + {{-- --}} + {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/timepicker/bootstrap-timepicker.min.css'); }} --}} + + + + + + + +

    + + + + + \ No newline at end of file diff --git a/resources/views/themes/default1/installer/helpdesk/view1.blade.php b/resources/views/themes/default1/installer/helpdesk/view1.blade.php index 0acc8abba..38a1d76db 100644 --- a/resources/views/themes/default1/installer/helpdesk/view1.blade.php +++ b/resources/views/themes/default1/installer/helpdesk/view1.blade.php @@ -1,120 +1,72 @@ @extends('themes.default1.installer.layout.installer') +@section('licence') +active +@stop @section('content') +

    Licence Agreement

    -

    Licence Agreement

    +

    PLEASE READ THIS SOFTWARE LICENSE AGREEMENT CAREFULLY BEFORE DOWNLOADING OR USING THE SOFTWARE. BY CLICKING ON THE "ACCEPT" BUTTON, OPENING THE PACKAGE, OR DOWNLOADING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, STOP THE INSTALLATION PROCESS AND EXIT.

    +
    +
    + +
    +
    + X + + close +

    - - -
    @@ -211,15 +228,14 @@ a:visited {color:#000;} /* visited link */ a:hover {color:#000;} /* mouse over link */ a:active {color:#000;} -


    +

    -
      -
    • ok — All OK
    • -
    • warning — Not a deal breaker, but it's recommended to have this installed for some features to work
    • -
    • error — Faveo HELPDESK require this feature and can't work without it
    • -
    + {{--
      --}} +

      ok — All OK
      + warning — Not a deal breaker, but it's recommended to have this installed for some features to work
      + error — Faveo HELPDESK require this feature and can't work without it

      + {{--
    --}}
    -

    @stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer/helpdesk/view3.blade.php b/resources/views/themes/default1/installer/helpdesk/view3.blade.php index 08e0b58f4..f329f6c9c 100644 --- a/resources/views/themes/default1/installer/helpdesk/view3.blade.php +++ b/resources/views/themes/default1/installer/helpdesk/view3.blade.php @@ -1,166 +1,88 @@ @extends('themes.default1.installer.layout.installer') +@section('licence') +done +@stop + +@section('environment') +done +@stop + +@section('database') +active +@stop + @section('content') - + +

    Page Setup

    -

    Localisation

    - -

    + {!! Form::open(['url'=> '/step4post']) !!} + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + +
    + + + + +
    + + + + +
    + + + + +
    + + + + + +
    +
    +

    + + Previous +

    + +
    @stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer/helpdesk/view4.blade.php b/resources/views/themes/default1/installer/helpdesk/view4.blade.php index 569724051..c68e27937 100644 --- a/resources/views/themes/default1/installer/helpdesk/view4.blade.php +++ b/resources/views/themes/default1/installer/helpdesk/view4.blade.php @@ -1,32 +1,215 @@ @extends('themes.default1.installer.layout.installer') -@section('content') -

    Configuration

    - -

    + +@section('licence') +done @stop +@section('environment') +done +@stop +@section('database') +active +@stop + +@section('content') + +FaveoHELPDESK 1.0 and Newer'); + +define('STATUS_OK', 'ok'); +define('STATUS_WARNING', 'warning'); +define('STATUS_ERROR', 'error'); + +class TestResult { + + var $message; + var $status; + + function TestResult($message, $status = STATUS_OK) { + $this->message = $message; + $this->status = $status; + } + +} // TestResult + +if (DB_HOST && DB_USER && DB_NAME) { + ?> +
      += 0) { + $results[] = new TestResult('MySQL version is ' . $mysqli_version, STATUS_OK); + // $have_inno = check_have_inno($connection); + } else { + $results[] = new TestResult('Your MySQL version is ' . $mysqli_version . '. We recommend upgrading to at least MySQL5!', STATUS_ERROR); + $mysqli_ok = false; + } // if + } else { + $results[] = new TestResult('Failed to select database.
      MySQL said: ' . mysqli_error(), STATUS_ERROR); + $mysqli_ok = false; + } // if + } else { + $results[] = new TestResult('Failed to connect to database.
      MySQL said: ' . mysqli_error(), STATUS_ERROR); + $mysqli_ok = false; + } // if + } + // elseif($default == 'pgsql') { + // if ($connection2 = pg_connect("'host='.DB_HOST.' port='.DB_PORT.' dbname='.DB_NAME.' user='.DB_USER.' password='.DB_PASS.")) { + // $results[] = new TestResult('Connected to database as ' . DB_USER . '@' . DB_HOST, STATUS_OK); + // } else { + // $results[] = new TestResult('Failed to connect to database.
      PgSQL said: ' . mysqli_error(), STATUS_ERROR); + // $mysqli_ok = false; + // } + // } elseif($default == 'sqlsrv') { + + // } + // --------------------------------------------------- + // Validators + // --------------------------------------------------- +// dd($results); + + foreach ($results as $result) { + print '' . $result->status . ' — ' . $result->message . '
      '; + } // foreach + ?> +
    + +

    Database test is turned off. To turn it On, please open probe.php in your favorite text editor and set DB_XXXX connection parameters in database section at the beginning of the file:

    +
      +
    • DB_HOST — Address of your MySQL server (usually localhost)
    • +
    • DB_USER — Username that is used to connect to the server
    • +
    • DB_PASS — User's password
    • +
    • DB_NAME — Name of the database you are connecting to
    • +
    +

    Once these settings are set, probe.php will check if your database meets the system requirements.

    + + + + + +

    OK, this system can run FaveoHELPDESK

    + +

    Database connection successfull

    + + + +Please wait this may take a while...... + +{!! Form::open( ['id'=>'form','method' => 'PATCH'] )!!} +{{-- --}} + + + + + + + + + + + + + + + + + +

    + + Previous +

    + + + + + + +

    This system does not meet FaveoHELPDESK system requirements

    +

    + +

    Legend

    +
    + {{--
      --}} + ok — All OK
      + warning — Not a deal breaker, but it's recommended to have this installed for some features to work
      + errorFaveoHELPDESK require this feature and can't work without it

      + {{--
    --}} +
    + + +@stop diff --git a/resources/views/themes/default1/installer/helpdesk/view4b.blade.php b/resources/views/themes/default1/installer/helpdesk/view4b.blade.php new file mode 100644 index 000000000..eaeb9454b --- /dev/null +++ b/resources/views/themes/default1/installer/helpdesk/view4b.blade.php @@ -0,0 +1,63 @@ + + + + + + + Faveo HELPDESK + + + + + + + + + +

    faveo

    +
      +
    1. Licence Agreement
    2. +
    3. Environment Test
    4. + +
    5. Database Setup
    6. +
    7. Locale Information
    8. +
    9. Ready
    10. +
    +
    + +
    + + +

    + + Test/Probe Prerequisites required to be installed Probe +
    ok — Connected to database as root@localhost +
    ok — Database "faveo" selected +
    ok — MySQL version is 5.6.17 +
    ok, this system can run FaveoHELPDESK +

    Database connection successfull

    + +
    + + + + +

    + + Previous +

    +

    Legend

    +
    ok — All OK +
    Warning — Not a deal breaker, but it's recommended to have this installed for some features to work +
    Error— Faveo HELPDESK require this feature and can't work without it +
    +

    + + +
    +
    + + + + + \ No newline at end of file diff --git a/resources/views/themes/default1/installer/helpdesk/view5.blade.php b/resources/views/themes/default1/installer/helpdesk/view5.blade.php index 3a9affd29..586dc5552 100644 --- a/resources/views/themes/default1/installer/helpdesk/view5.blade.php +++ b/resources/views/themes/default1/installer/helpdesk/view5.blade.php @@ -1,205 +1,328 @@ @extends('themes.default1.installer.layout.installer') + +@section('licence') +done +@stop + +@section('environment') +done +@stop + +@section('database') +done +@stop + +@section('locale') +active +@stop + @section('content') -

    Database test

    -

    @stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer/helpdesk/view6.blade.php b/resources/views/themes/default1/installer/helpdesk/view6.blade.php index 348875ec4..f1914e499 100644 --- a/resources/views/themes/default1/installer/helpdesk/view6.blade.php +++ b/resources/views/themes/default1/installer/helpdesk/view6.blade.php @@ -1,198 +1,61 @@ @extends('themes.default1.installer.layout.installer') +@section('licence') +done +@stop + +@section('environment') +done +@stop + +@section('database') +done +@stop + +@section('locale') +done +@stop + +@section('ready') +active +@stop + @section('content') -

    Create Admin Account

    -

    -@stop \ No newline at end of file + + + + @stop \ No newline at end of file diff --git a/resources/views/themes/default1/installer/layout/installer.blade.php b/resources/views/themes/default1/installer/layout/installer.blade.php index 41fb9aadc..c0c93a797 100644 --- a/resources/views/themes/default1/installer/layout/installer.blade.php +++ b/resources/views/themes/default1/installer/layout/installer.blade.php @@ -1,118 +1,80 @@ - - - - Faveo HELPDESK | Insatller - - - - {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/bootstrap.min.css'); }} --}} + + + + + + Faveo HELPDESK + + + + + + + - - {{-- {{ HTML::style('ep-content/themes/ep-admin/default1/css/font-awesome.min.css'); }} --}} + - - - - - - - - - - - \ No newline at end of file + #sectool p{ + text-align: justify; + text-align-last: center; + font-size: 14px; + color: aliceblue; + width: 200px; + word-wrap: break-word; + font-style: italic; + font-weight: 600; + font-variant: normal; + } + + + + +

    + faveo

    +
      +
    1. Licence Agreement
    2. +
    3. Environment Test
    4. +
    5. Database Setup
    6. +
    7. Locale Information
    8. +
    9. Ready
    10. +
    +
    + @yield('content') +
    +
    ©. Powered by Faveo
    + {{-- // --}} + {{-- // --}} + + \ No newline at end of file diff --git a/vendor/autoload.php b/vendor/autoload.php index 593552971..0141d402f 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer' . '/autoload_real.php'; -return ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05::getLoader(); +return ComposerAutoloaderInit7157e8cc863b79dcda33b8f735f4c92d::getLoader(); diff --git a/vendor/bin/phpspec b/vendor/bin/phpspec index ca93da451..034a5ff91 100644 --- a/vendor/bin/phpspec +++ b/vendor/bin/phpspec @@ -1,7 +1 @@ -#!/usr/bin/env sh -SRC_DIR="`pwd`" -cd "`dirname "$0"`" -cd "../phpspec/phpspec/bin" -BIN_TARGET="`pwd`/phpspec" -cd "$SRC_DIR" -"$BIN_TARGET" "$@" +../phpspec/phpspec/bin/phpspec \ No newline at end of file diff --git a/vendor/bin/phpunit b/vendor/bin/phpunit index 51f84b978..2c4893031 100644 --- a/vendor/bin/phpunit +++ b/vendor/bin/phpunit @@ -1,7 +1 @@ -#!/usr/bin/env sh -SRC_DIR="`pwd`" -cd "`dirname "$0"`" -cd "../phpunit/phpunit" -BIN_TARGET="`pwd`/phpunit" -cd "$SRC_DIR" -"$BIN_TARGET" "$@" +../phpunit/phpunit/phpunit \ No newline at end of file diff --git a/vendor/bugsnag/bugsnag-laravel/CHANGELOG.md b/vendor/bugsnag/bugsnag-laravel/CHANGELOG.md index c21ea345d..87437d248 100644 --- a/vendor/bugsnag/bugsnag-laravel/CHANGELOG.md +++ b/vendor/bugsnag/bugsnag-laravel/CHANGELOG.md @@ -1,6 +1,16 @@ Changelog ========= +1.6.2 +----- + +### Enhancements + +- Add support for configuring the notifier completely from +[environment variables](https://github.com/bugsnag/bugsnag-laravel#environment-variables) + | [Andrew](https://github.com/browner12) + | [#71](https://github.com/bugsnag/bugsnag-laravel/pull/71) + 1.6.1 ----- - Fix array syntax for older php diff --git a/vendor/bugsnag/bugsnag-laravel/CONTRIBUTING.md b/vendor/bugsnag/bugsnag-laravel/CONTRIBUTING.md index 7434b790b..6d9a4cb5b 100644 --- a/vendor/bugsnag/bugsnag-laravel/CONTRIBUTING.md +++ b/vendor/bugsnag/bugsnag-laravel/CONTRIBUTING.md @@ -2,28 +2,15 @@ Contributing ============ - [Fork](https://help.github.com/articles/fork-a-repo) the [notifier on github](https://github.com/bugsnag/bugsnag-laravel) -- Build and test your changes +- Build and test your changes: +``` +composer install && ./vendor/bin/phpunit +``` + - Commit and push until you are happy with your contribution - [Make a pull request](https://help.github.com/articles/using-pull-requests) - Thanks! -Example apps -============ - -Bugsnag supports both Laravel 4 and Laravel 5. You can test these out by running the locally. - - brew tap josegonzalez/homebrew-php - brew install php56 php56-mcrypt composer - -Then cd into `example/laravel-4` and start the server: - - composer install - php56 artisan serve --port 8004 - -The same works for `example/laravel-5` and start the server: - - composer install - php56 artisan serve --port 8005 Releasing ========= diff --git a/vendor/bugsnag/bugsnag-laravel/README.md b/vendor/bugsnag/bugsnag-laravel/README.md index 7b3ece7e4..76dab056f 100644 --- a/vendor/bugsnag/bugsnag-laravel/README.md +++ b/vendor/bugsnag/bugsnag-laravel/README.md @@ -11,11 +11,33 @@ capturing errors from your applications. Check out this excellent [Laracasts screencast](https://laracasts.com/lessons/better-error-tracking-with-bugsnag) for a quick overview of how to use Bugsnag with your Laravel apps. +Contents +-------- -How to Install +- [Getting Started](#getting-started) + - [Installation](#installation) + - [Laravel 5.0+](#laravel-50) + - [Laravel (Older Versions)](#laravel-older-versions) + - [Lumen](#lumen) + - [Environment Variables](#environment-variables) +- [Usage](#usage) + - [Catching and Reporting Exceptions](#catching-and-reporting-exceptions) + - [Sending Non-fatal Exceptions](#sending-non-fatal-exceptions) + - [Configuration Options](#configuration-options) + - [Error Reporting Levels](#error-reporting-levels) + - [Callbacks](#callbacks) +- [Demo Applications](#demo-applications) +- [Support](#support) +- [Contributing](#contributing) +- [License](#license) + + +Getting Started --------------- -### Laravel 5.0 + +### Installation + +#### Laravel 5.0+ 1. Install the `bugsnag/bugsnag-laravel` package @@ -68,7 +90,7 @@ How to Install 1. Create the configuration file `config/bugsnag.php`: ```shell - $ php artisan vendor:publish + $ php artisan vendor:publish --provider="Bugsnag\BugsnagLaravel\BugsnagLaravelServiceProvider" ``` 1. Configure your `api_key` in your `.env` file: @@ -87,7 +109,9 @@ How to Install ); ``` -### Laravel < 5.0 +#### Laravel (Older Versions) + +For versions of Laravel before 5.0: 1. Install the `bugsnag/bugsnag-laravel` package @@ -137,7 +161,7 @@ How to Install ``` -### Lumen +#### Lumen 1. In `bootstrap/app.php` add the line @@ -170,41 +194,35 @@ How to Install ); ``` +### Environment Variables + +In addition to `BUGSNAG_API_KEY`, other configuration keys can be automatically +populated in `config.php` from your `.env` file: + +- `BUGSNAG_API_KEY`: Your API key. You can find your API key on your Bugsnag + dashboard. +- `BUGSNAG_NOTIFY_RELEASE_STAGES`: Set which release stages should send + notifications to Bugsnag. +- `BUGSNAG_ENDPOINT`: Set what server to which the Bugsnag notifier should send + errors. The default is https://notify.bugsnag.com, but for Bugsnag Enterprise + the endpoint should be the URL of your Bugsnag instance. +- `BUGSNAG_FILTERS`: Set which keys are filtered from metadata is sent to + Bugsnag. +- `BUGSNAG_PROXY`: Set the configuration options for your server if it is behind + a proxy server. Additional details are available in the + [sample configuration](src/Bugsnag/BugsnagLaravel/config.php#L56). +Usage +----- -Sending Custom Data With Exceptions ------------------------------------ +### Catching and Reporting Exceptions -It is often useful to send additional meta-data about your app, such as -information about the currently logged in user, along with any -error or exceptions, to help debug problems. - -To send custom data, you should define a *before-notify* function, -adding an array of "tabs" of custom data to the $metaData parameter. For example: - -```php -Bugsnag::setBeforeNotifyFunction("before_bugsnag_notify"); - -function before_bugsnag_notify($error) { - // Do any custom error handling here - - // Also add some meta data to each error - $error->setMetaData(array( - "user" => array( - "name" => "James", - "email" => "james@example.com" - ) - )); -} -``` - -See the [setBeforeNotifyFunction](https://bugsnag.com/docs/notifiers/php#setbeforenotifyfunction) -documentation on the `bugsnag-php` library for more information. +Bugsnag works "out of the box" for reporting unhandled exceptions in +Laravel and Lumen apps. -Sending Custom Errors or Non-Fatal Exceptions ---------------------------------------------- +### Sending Non-fatal Exceptions You can easily tell Bugsnag about non-fatal or caught exceptions by calling `Bugsnag::notifyException`: @@ -231,9 +249,16 @@ $metaData = array( ); ``` +Additional data can be sent with exceptions as an options hash as detailed in the [Notification Options](docs/Notification Options.md) documentation, including some [options specific to non-fatal exceptions](docs/Notification Options.md#handled-notification-options). -Error Reporting Levels ----------------------- + +### Configuration Options + +The [Bugsnag PHP Client](https://bugsnag.com/docs/notifiers/php) +is available as `Bugsnag`, which allows you to set various +configuration options. These options are listed in the [documentation for Bugsnag PHP](https://bugsnag.com/docs/notifiers/php#additional-options). + +#### Error Reporting Levels By default we'll use the value of `error_reporting` from your `php.ini` or any value you set at runtime using the `error_reporting(...)` function. @@ -245,43 +270,67 @@ If you'd like to send different levels of errors to Bugsnag, you can call Bugsnag::setErrorReportingLevel(E_ALL & ~E_NOTICE); ``` +#### Callbacks -Additional Configuration ------------------------- +It is often useful to send additional meta-data about your app, such as +information about the currently logged in user, along with any +error or exceptions, to help debug problems. -The [Bugsnag PHP Client](https://bugsnag.com/docs/notifiers/php) -is available as `Bugsnag`, which allows you to set various -configuration options, for example: +To send custom data, you should define a *before-notify* function, +adding an array of "tabs" of custom data to the $metaData parameter. For example: ```php -Bugsnag::setReleaseStage("production"); +Bugsnag::setBeforeNotifyFunction("before_bugsnag_notify"); + +function before_bugsnag_notify($error) { + // Do any custom error handling here + + // Also add some meta data to each error + $error->setMetaData(array( + "user" => array( + "name" => "James", + "email" => "james@example.com" + ) + )); +} ``` -See the [Bugsnag Notifier for PHP documentation](https://bugsnag.com/docs/notifiers/php#additional-configuration) -for full configuration details. +This example snippet adds a "user" tab to the Bugsnag error report. See the [setBeforeNotifyFunction](https://bugsnag.com/docs/notifiers/php#setbeforenotifyfunction) +documentation on the `bugsnag-php` library for more information. -Reporting Bugs or Feature Requests ----------------------------------- +Demo Applications +----------------- -Please report any bugs or feature requests on the github issues page for this -project here: +The [Bugsnag Laravel source repository](https://github.com/bugsnag/bugsnag-laravel) includes example applications for [Laravel 4, Laravel 5, and Lumen](https://github.com/bugsnag/bugsnag-laravel/tree/master/example). - +Before running one of the example applications, install the prerequisites: + + brew tap josegonzalez/homebrew-php + brew install php56 php56-mcrypt composer + +Then open the example directory (such as `example/laravel-5.1`) in a terminal and start the server: + + composer install + php56 artisan serve --port 8004 + + +Support +------- + +* [Additional Documentation](https://github.com/bugsnag/bugsnag-laravel/tree/master/docs) +* [Search open and closed issues](https://github.com/bugsnag/bugsnag-laravel/issues?utf8=✓&q=is%3Aissue) for similar problems +* [Report a bug or request a feature](https://github.com/bugsnag/bugsnag-laravel/issues/new) Contributing ------------ -- [Fork](https://help.github.com/articles/fork-a-repo) the [notifier on github](https://github.com/bugsnag/bugsnag-laravel) -- Commit and push until you are happy with your contribution -- Run the tests to make sure they all pass: `composer install && ./vendor/bin/phpunit` -- [Make a pull request](https://help.github.com/articles/using-pull-requests) -- Thanks! +We'd love you to file issues and send pull requests. The [contributing guidelines](https://github.com/bugsnag/bugsnag-laravel/CONTRIBUTING.md) details the process of building and testing `bugsnag-laravel`, as well as the pull request process. Feel free to comment on [existing issues](https://github.com/bugsnag/bugsnag-laravel/issues) for clarification or starting points. License ------- The Bugsnag Laravel notifier is free software released under the MIT License. -See [LICENSE.txt](https://github.com/bugsnag/bugsnag-laravel/blob/master/LICENSE.txt) for details. +See [LICENSE.txt](LICENSE.txt) for details. diff --git a/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/BugsnagLaravelServiceProvider.php b/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/BugsnagLaravelServiceProvider.php index 675658029..435739ca4 100644 --- a/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/BugsnagLaravelServiceProvider.php +++ b/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/BugsnagLaravelServiceProvider.php @@ -66,7 +66,7 @@ class BugsnagLaravelServiceProvider extends ServiceProvider $client->setReleaseStage($app->environment()); $client->setNotifier(array( 'name' => 'Bugsnag Laravel', - 'version' => '1.6.1', + 'version' => '1.6.2', 'url' => 'https://github.com/bugsnag/bugsnag-laravel' )); diff --git a/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/config.php b/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/config.php index b372c8fd9..f92af7678 100644 --- a/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/config.php +++ b/vendor/bugsnag/bugsnag-laravel/src/Bugsnag/BugsnagLaravel/config.php @@ -25,7 +25,7 @@ return array( | Example: array('development', 'production') | */ - 'notify_release_stages' => null, + 'notify_release_stages' => env('BUGSNAG_NOTIFY_RELEASE_STAGES', null), /* |-------------------------------------------------------------------------- @@ -37,7 +37,7 @@ return array( | this should be the URL to your Bugsnag instance. | */ - 'endpoint' => null, + 'endpoint' => env('BUGSNAG_ENDPOINT', null), /* |-------------------------------------------------------------------------- @@ -49,7 +49,7 @@ return array( | contain these strings will be filtered. | */ - 'filters' => array('password'), + 'filters' => env('BUGSNAG_FILTERS', array('password')), /* |-------------------------------------------------------------------------- @@ -72,6 +72,6 @@ return array( | ) | */ - 'proxy' => null + 'proxy' => env('BUGSNAG_PROXY', null) ); diff --git a/vendor/bugsnag/bugsnag/.gitignore b/vendor/bugsnag/bugsnag/.gitignore index 88e99d50d..a43ea8b13 100644 --- a/vendor/bugsnag/bugsnag/.gitignore +++ b/vendor/bugsnag/bugsnag/.gitignore @@ -1,2 +1,4 @@ -vendor -composer.lock \ No newline at end of file +/vendor +/composer.lock +/composer.phar +/.idea diff --git a/vendor/bugsnag/bugsnag/.travis.yml b/vendor/bugsnag/bugsnag/.travis.yml index f0504449d..363311c7b 100644 --- a/vendor/bugsnag/bugsnag/.travis.yml +++ b/vendor/bugsnag/bugsnag/.travis.yml @@ -1,3 +1,4 @@ +sudo: false language: php php: - 5.6 @@ -6,7 +7,3 @@ php: - 5.3 - 5.2 - hhvm -notifications: - hipchat: - rooms: - secure: CP1Pqa5TRwHtft3UQRZpnnw/mRCAVtXAn5S/Am45uk4fpGGFLf3F/mHKOgjDeALB/aVyJQvHV/Lr2KrgY7FWOjOdzXVVwLDtGoXXimvqxGEjvSFQMiJGKiwm7Thw41EqwHOZUxIKLtJBByP36bqvx4zXxUeNbCTc4T2f92eiZps= diff --git a/vendor/bugsnag/bugsnag/CHANGELOG.md b/vendor/bugsnag/bugsnag/CHANGELOG.md index 1c01236bd..a71fe3273 100644 --- a/vendor/bugsnag/bugsnag/CHANGELOG.md +++ b/vendor/bugsnag/bugsnag/CHANGELOG.md @@ -1,6 +1,24 @@ Changelog ========= +2.6.0 (23 Dec 2015) +----- + +### Enhancements + +* Add support for PHP 7's Throwable + | [Chris Stone](https://github.com/cmstone) + | [#106](https://github.com/bugsnag/bugsnag-php/pull/106) + +* Fix errors which arise from from error payloads not encoded using UTF-8 + | [GaetanNaulin](https://github.com/GaetanNaulin) + | [#104](https://github.com/bugsnag/bugsnag-php/pull/104) + | [#105](https://github.com/bugsnag/bugsnag-php/pull/105) + +2.5.6 +----- +- Added a debug flag to help diagnose notification problems + 2.5.5 ----- - Ensure no unnecessary code is executed when errors should be skipped diff --git a/vendor/bugsnag/bugsnag/CONTRIBUTING.md b/vendor/bugsnag/bugsnag/CONTRIBUTING.md index b41c84a42..78b4614be 100644 --- a/vendor/bugsnag/bugsnag/CONTRIBUTING.md +++ b/vendor/bugsnag/bugsnag/CONTRIBUTING.md @@ -2,7 +2,7 @@ Contributing ============ - [Fork](https://help.github.com/articles/fork-a-repo) the [notifier on github](https://github.com/bugsnag/bugsnag-laravel) -- Build and test your changes +- Build and test your changes. Run the tests using [phpunit](https://phpunit.de) (vendored to `vendor/bin/phpunit`) - Commit and push until you are happy with your contribution - [Make a pull request](https://help.github.com/articles/using-pull-requests) - Thanks! @@ -22,15 +22,27 @@ Releasing ========= 1. Commit all outstanding changes -1. Bump the version in `src/Bugsnag/Configuration.php`. -2. Update the CHANGELOG.md, and README if appropriate. -3. Build a new phar package +2. Bump the version in `src/Bugsnag/Configuration.php`. +3. Update the CHANGELOG.md, and README if appropriate. +4. Build a new phar package + * NB: You may need to set `phar.readonly = Off` in /usr/local/etc/php/5.4/php.ini + * If not located in /usr/local/etc, check /private/etc/php.ini + * If not in /private/etc/php.ini: + ``` + sudo cp /private/etc/php.ini.default /private/etc/php.ini + ``` + * Then: + + ``` composer install php pharbuilder.php + ``` 4. Commit, tag push - git commit -am v1.x.x - git tag v1.x.x - git push origin master v1.x.x + ``` + git commit -am v2.x.x + git tag v2.x.x + git push origin master && git push --tags + ``` diff --git a/vendor/bugsnag/bugsnag/README.md b/vendor/bugsnag/bugsnag/README.md index 553e0607f..a0259858f 100644 --- a/vendor/bugsnag/bugsnag/README.md +++ b/vendor/bugsnag/bugsnag/README.md @@ -1,4 +1,4 @@ -Bugsnag Notifier for PHP +Bugsnag Notifier for PHP build status ======================== The Bugsnag Notifier for PHP gives you instant notification of errors and @@ -161,14 +161,12 @@ you can set the `releaseStage` that is reported to Bugsnag. $bugsnag->setReleaseStage('development'); ``` -By default this is set to be "production". +By default this is set to "production". -> Note: If you would like errors from stages other than production to be sent -to Bugsnag, you'll also have to call `setNotifyReleaseStages`. ###setNotifyReleaseStages -By default, we will notify Bugsnag of errors that happen in any +By default, we will notify Bugsnag of errors that happen in *any* `releaseStage` If you would like to change which release stages notify Bugsnag of errors you can call `setNotifyReleaseStages`: diff --git a/vendor/bugsnag/bugsnag/build/bugsnag.phar b/vendor/bugsnag/bugsnag/build/bugsnag.phar index 3c55b079740580e3e1968bde014428577a816548..047689fb9e2a982053e39aa7ab17997b1b883da7 100644 GIT binary patch delta 9503 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 delta 9151 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

    #<1U_%~>m?1l%l*TPkjZZ;-{|m; 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 - Install bugsnag using composer - + ```shell composer install ``` +- Add your API key to the example script - Run the example script ```shell php index.php - ``` \ No newline at end of file + ``` diff --git a/vendor/bugsnag/bugsnag/example/php/index.php b/vendor/bugsnag/bugsnag/example/php/index.php index 9437dc47a..0e4ef4f24 100644 --- a/vendor/bugsnag/bugsnag/example/php/index.php +++ b/vendor/bugsnag/bugsnag/example/php/index.php @@ -2,7 +2,7 @@ require_once "../../build/bugsnag.phar"; -$bugsnag = new Bugsnag_Client("066f5ad3590596f9aa8d601ea89af845"); +$bugsnag = new Bugsnag_Client("YOUR-API-KEY-HERE"); $bugsnag->notifyError("Broken", "Something broke", array("tab" => array("paying" => true, "object" => (object)array("key" => "value"), "null" => NULL, "string" => "test", "int" => 4))); ?> diff --git a/vendor/bugsnag/bugsnag/src/Bugsnag/Client.php b/vendor/bugsnag/bugsnag/src/Bugsnag/Client.php index d21db5e7b..5b49c97ca 100644 --- a/vendor/bugsnag/bugsnag/src/Bugsnag/Client.php +++ b/vendor/bugsnag/bugsnag/src/Bugsnag/Client.php @@ -3,12 +3,14 @@ class Bugsnag_Client { private $config; + /** @var Bugsnag_Notification|null */ private $notification; /** * Initialize Bugsnag * * @param String $apiKey your Bugsnag API key + * @throws Exception */ public function __construct($apiKey) { @@ -33,6 +35,7 @@ class Bugsnag_Client * Set your release stage, eg "production" or "development" * * @param String $releaseStage the app's current release stage + * @return $this */ public function setReleaseStage($releaseStage) { @@ -45,6 +48,7 @@ class Bugsnag_Client * Set your app's semantic version, eg "1.2.3" * * @param String $appVersion the app's version + * @return $this */ public function setAppVersion($appVersion) { @@ -53,10 +57,11 @@ class Bugsnag_Client return $this; } - /** + /** * Set the host name * * @param String $hostname the host name + * @return $this */ public function setHostname($hostname) { @@ -70,6 +75,7 @@ class Bugsnag_Client * eg array("production", "development") * * @param Array $notifyReleaseStages array of release stages to notify for + * @return $this */ public function setNotifyReleaseStages(array $notifyReleaseStages) { @@ -82,6 +88,7 @@ class Bugsnag_Client * Set which Bugsnag endpoint to send errors to. * * @param String $endpoint endpoint URL + * @return $this */ public function setEndpoint($endpoint) { @@ -90,11 +97,25 @@ class Bugsnag_Client return $this; } + /** + * Enable debug mode to help diagnose problems. + * + * @param Boolean $debug whether to enable debug mode + * @return $this + */ + public function setDebug($debug) + { + $this->config->debug = $debug; + + return $this; + } + /** * Set whether or not to use SSL when notifying bugsnag * * @param Boolean $useSSL whether to use SSL * @deprecated you can now pass full URLs to setEndpoint + * @return $this */ public function setUseSSL($useSSL) { @@ -107,6 +128,7 @@ class Bugsnag_Client * Set the desired timeout for cURL connection when notifying bugsnag * * @param Integer $timeout the desired timeout in seconds + * @return $this */ public function setTimeout($timeout) { @@ -121,6 +143,7 @@ class Bugsnag_Client * stacktrace lines. * * @param String $projectRoot the root path for your application + * @return $this */ public function setProjectRoot($projectRoot) { @@ -135,6 +158,7 @@ class Bugsnag_Client * for grouping and reduces the noise in stack traces. * * @param String $stripPath the path to strip from filenames + * @return $this */ public function setStripPath($stripPath) { @@ -148,6 +172,7 @@ class Bugsnag_Client * that are part of your application. * * @param String $projectRootRegex regex matching paths belong to your project + * @return $this */ public function setProjectRootRegex($projectRootRegex) { @@ -161,6 +186,7 @@ class Bugsnag_Client * to Bugsnag. Eg. array("password", "credit_card") * * @param Array $filters an array of metaData filters + * @return $this */ public function setFilters(array $filters) { @@ -178,6 +204,7 @@ class Bugsnag_Client * 'name' => 'Bob Hoskins', * 'email' => 'bob@hoskins.com' * ) + * @return $this */ public function setUser(array $user) { @@ -188,6 +215,8 @@ class Bugsnag_Client /** * @deprecated deprecated since version 2.1 + * @param $userId + * @return $this */ public function setUserId($userId) { @@ -204,6 +233,7 @@ class Bugsnag_Client * Set a context representing the current type of request, or location in code. * * @param String $context the current context + * @return $this */ public function setContext($context) { @@ -218,6 +248,7 @@ class Bugsnag_Client * eg "laravel", or executing through delayed worker code, eg "resque". * * @param String $type the current type + * @return $this */ public function setType($type) { @@ -237,6 +268,7 @@ class Bugsnag_Client * "email" => "james@example.com" * ) * ) + * @return $this */ public function setMetaData(array $metaData) { @@ -255,6 +287,7 @@ class Bugsnag_Client * 'user' => "username" * 'password' => "password123" * ) + * @return $this */ public function setProxySettings(array $proxySettings) { @@ -270,6 +303,7 @@ class Bugsnag_Client * array( * CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4 * ) + * @return $this */ public function setCurlOptions(array $curlOptions) { @@ -292,8 +326,9 @@ class Bugsnag_Client * )); * } * $bugsnag->setBeforeNotifyFunction("before_bugsnag_notify"); - * - */ + * @param callable $beforeNotifyFunction + * @return $this + */ public function setBeforeNotifyFunction($beforeNotifyFunction) { $this->config->beforeNotifyFunction = $beforeNotifyFunction; @@ -308,6 +343,7 @@ class Bugsnag_Client * * @param Integer $errorReportingLevel the error reporting level integer * exactly as you would pass to PHP's error_reporting + * @return $this */ public function setErrorReportingLevel($errorReportingLevel) { @@ -321,6 +357,7 @@ class Bugsnag_Client * exceptions and errors. * * @param Boolean $autoNotify whether to auto notify or not + * @return $this */ public function setAutoNotify($autoNotify) { @@ -334,6 +371,7 @@ class Bugsnag_Client * each request. * * @param Boolean $batchSending whether to batch together errors + * @return $this */ public function setBatchSending($batchSending) { @@ -347,6 +385,7 @@ class Bugsnag_Client * set by other notifier libraries. * * @param Array $notifier an array of name, version, url. + * @return $this */ public function setNotifier($notifier) { @@ -359,6 +398,7 @@ class Bugsnag_Client * Sets whether Bugsnag should send $_ENV with each error. * * @param Boolean $sendEnvironment whether to send the environment + * @return $this */ public function setSendEnvironment($sendEnvironment) { @@ -367,11 +407,38 @@ class Bugsnag_Client return $this; } + /** + * Sets whether Bugsnag should send $_COOKIE with each error. + * + * @param Boolean $sendCookies whether to send the environment + * @return $this + */ + public function setSendCookies($sendCookies) + { + $this->config->sendCookies = $sendCookies; + + return $this; + } + + /** + * Sets whether Bugsnag should send $_SESSION with each error. + * + * @param Boolean $sendSession whether to send the environment + * @return $this + */ + public function setSendSession($sendSession) + { + $this->config->sendSession = $sendSession; + + return $this; + } + /** * Should we send a small snippet of the code that crashed to help you * diagnose even faster from within your dashboard. * - * @param Boolean $setSendCode whether to send code to Bugsnag + * @param Boolean $sendCode whether to send code to Bugsnag + * @return $this */ public function setSendCode($sendCode) { @@ -381,25 +448,27 @@ class Bugsnag_Client } /** - * Notify Bugsnag of a non-fatal/handled exception + * Notify Bugsnag of a non-fatal/handled throwable * - * @param Exception $exception the exception to notify Bugsnag about + * @param Throwable $throwable the throwable to notify Bugsnag about * @param Array $metaData optional metaData to send with this error * @param String $severity optional severity of this error (fatal/error/warning/info) */ - public function notifyException(Exception $exception, array $metaData = null, $severity = null) + public function notifyException($throwable, array $metaData = null, $severity = null) { - $error = Bugsnag_Error::fromPHPException($this->config, $this->diagnostics, $exception); - $error->setSeverity($severity); + if (is_subclass_of($throwable, 'Throwable') || is_subclass_of($throwable, 'Exception') || get_class($throwable) == 'Exception') { + $error = Bugsnag_Error::fromPHPThrowable($this->config, $this->diagnostics, $throwable); + $error->setSeverity($severity); - $this->notify($error, $metaData); + $this->notify($error, $metaData); + } } /** * Notify Bugsnag of a non-fatal/handled error * - * @param String $errorName the name of the error, a short (1 word) string - * @param String $errorMessage the error message + * @param String $name the name of the error, a short (1 word) string + * @param String $message the error message * @param Array $metaData optional metaData to send with this error * @param String $severity optional severity of this error (fatal/error/warning/info) */ @@ -412,13 +481,13 @@ class Bugsnag_Client } // Exception handler callback, should only be called internally by PHP's set_exception_handler - public function exceptionHandler($exception) + public function exceptionHandler($throwable) { if(!$this->config->autoNotify) { return; } - $error = Bugsnag_Error::fromPHPException($this->config, $this->diagnostics, $exception); + $error = Bugsnag_Error::fromPHPThrowable($this->config, $this->diagnostics, $throwable); $error->setSeverity("error"); $this->notify($error); } diff --git a/vendor/bugsnag/bugsnag/src/Bugsnag/Configuration.php b/vendor/bugsnag/bugsnag/src/Bugsnag/Configuration.php index a7256456e..93a8e1f7d 100644 --- a/vendor/bugsnag/bugsnag/src/Bugsnag/Configuration.php +++ b/vendor/bugsnag/bugsnag/src/Bugsnag/Configuration.php @@ -18,10 +18,12 @@ class Bugsnag_Configuration public $proxySettings = array(); public $notifier = array( 'name' => 'Bugsnag PHP (Official)', - 'version' => '2.5.5', + 'version' => '2.6.0', 'url' => 'https://bugsnag.com', ); public $sendEnvironment = false; + public $sendCookies = true; + public $sendSession = true; public $sendCode = true; public $stripPath; public $stripPathRegex; @@ -39,6 +41,8 @@ class Bugsnag_Configuration public $curlOptions = array(); + public $debug = false; + public function __construct() { $this->timeout = Bugsnag_Configuration::$DEFAULT_TIMEOUT; @@ -67,8 +71,6 @@ class Bugsnag_Configuration } else { return !(error_reporting() & $code); } - - return false; } public function setProjectRoot($projectRoot) diff --git a/vendor/bugsnag/bugsnag/src/Bugsnag/Error.php b/vendor/bugsnag/bugsnag/src/Bugsnag/Error.php index 5ccf3da76..0f79e3812 100644 --- a/vendor/bugsnag/bugsnag/src/Bugsnag/Error.php +++ b/vendor/bugsnag/bugsnag/src/Bugsnag/Error.php @@ -12,10 +12,12 @@ class Bugsnag_Error public $payloadVersion = "2"; public $message; public $severity = "warning"; + /** @var Bugsnag_Stacktrace */ public $stacktrace; public $metaData = array(); public $config; public $diagnostics; + /** @var Bugsnag_Error|null */ public $previous; public $groupingHash; @@ -28,10 +30,10 @@ class Bugsnag_Error return $error; } - public static function fromPHPException(Bugsnag_Configuration $config, Bugsnag_Diagnostics $diagnostics, Exception $exception) + public static function fromPHPThrowable(Bugsnag_Configuration $config, Bugsnag_Diagnostics $diagnostics, $throwable) { $error = new Bugsnag_Error($config, $diagnostics); - $error->setPHPException($exception); + $error->setPHPException($throwable); return $error; } @@ -74,7 +76,7 @@ class Bugsnag_Error return $this; } - public function setStacktrace($stacktrace) + public function setStacktrace(Bugsnag_Stacktrace $stacktrace) { $this->stacktrace = $stacktrace; @@ -141,7 +143,7 @@ class Bugsnag_Error public function setPrevious($exception) { if ($exception) { - $this->previous = Bugsnag_Error::fromPHPException($this->config, $this->diagnostics, $exception); + $this->previous = Bugsnag_Error::fromPHPThrowable($this->config, $this->diagnostics, $exception); } return $this; @@ -181,13 +183,13 @@ class Bugsnag_Error 'stacktrace' => $this->stacktrace->toArray(), ); - return $exceptionArray; + return $this->cleanupObj($exceptionArray); } private function cleanupObj($obj) { if (is_null($obj)) { - return; + return null; } if (is_array($obj)) { diff --git a/vendor/bugsnag/bugsnag/src/Bugsnag/Notification.php b/vendor/bugsnag/bugsnag/src/Bugsnag/Notification.php index 44ecbc82d..8295a45d6 100644 --- a/vendor/bugsnag/bugsnag/src/Bugsnag/Notification.php +++ b/vendor/bugsnag/bugsnag/src/Bugsnag/Notification.php @@ -5,6 +5,7 @@ class Bugsnag_Notification private static $CONTENT_TYPE_HEADER = 'Content-type: application/json'; private $config; + /** @var Bugsnag_Error[] */ private $errorQueue = array(); public function __construct(Bugsnag_Configuration $config) @@ -12,7 +13,7 @@ class Bugsnag_Notification $this->config = $config; } - public function addError($error, $passedMetaData = array()) + public function addError(Bugsnag_Error $error, $passedMetaData = array()) { // Check if this error should be sent to Bugsnag if (!$this->config->shouldNotify()) { @@ -27,6 +28,16 @@ class Bugsnag_Notification $error->setMetaData(Bugsnag_Request::getRequestMetaData()); } + // Session Tab + if ($this->config->sendSession && !empty($_SESSION)) { + $error->setMetaData(array('session' => $_SESSION)); + } + + // Cookies Tab + if ($this->config->sendCookies && !empty($_COOKIE)) { + $error->setMetaData(array('cookies' => $_COOKIE)); + } + // Add environment meta-data to error if ($this->config->sendEnvironment && !empty($_ENV)) { $error->setMetaData(array("Environment" => $_ENV)); @@ -139,6 +150,11 @@ class Bugsnag_Notification if ($statusCode > 200) { error_log('Bugsnag Warning: Couldn\'t notify ('.$responseBody.')'); + + if($this->config->debug) { + error_log('Bugsnag Debug: Attempted to post to URL - "'.$url.'"'); + error_log('Bugsnag Debug: Attempted to post payload - "'.$body.'"'); + } } if (curl_errno($http)) { diff --git a/vendor/bugsnag/bugsnag/src/Bugsnag/Request.php b/vendor/bugsnag/bugsnag/src/Bugsnag/Request.php index 6bab35361..ff4a44fb0 100644 --- a/vendor/bugsnag/bugsnag/src/Bugsnag/Request.php +++ b/vendor/bugsnag/bugsnag/src/Bugsnag/Request.php @@ -36,16 +36,6 @@ class Bugsnag_Request $requestData['request']['headers'] = $headers; } - // Session Tab - if (!empty($_SESSION)) { - $requestData['session'] = $_SESSION; - } - - // Cookies Tab - if (!empty($_COOKIE)) { - $requestData['cookies'] = $_COOKIE; - } - return $requestData; } @@ -54,7 +44,7 @@ class Bugsnag_Request if (self::isRequest() && isset($_SERVER['REQUEST_METHOD']) && isset($_SERVER["REQUEST_URI"])) { return $_SERVER['REQUEST_METHOD'].' '.strtok($_SERVER["REQUEST_URI"], '?'); } else { - return; + return null; } } @@ -63,7 +53,7 @@ class Bugsnag_Request if (self::isRequest()) { return self::getRequestIp(); } else { - return; + return null; } } diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/Bugsnag_TestCase.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/Bugsnag_TestCase.php index 78ffb3260..408d52505 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/Bugsnag_TestCase.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/Bugsnag_TestCase.php @@ -2,6 +2,11 @@ abstract class Bugsnag_TestCase extends PHPUnit_Framework_TestCase { + /** @var Bugsnag_Configuration */ + protected $config; + /** @var Bugsnag_Diagnostics */ + protected $diagnostics; + protected function getError($name = "Name", $message = "Message") { return Bugsnag_Error::fromNamedError($this->config, $this->diagnostics, $name, $message); diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/ClientTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/ClientTest.php index 0fdff0a17..82fa77d7f 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/ClientTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/ClientTest.php @@ -2,6 +2,7 @@ class ClientTest extends PHPUnit_Framework_TestCase { + /** @var PHPUnit_Framework_MockObject_MockObject|Bugsnag_Client */ protected $client; protected function setUp() @@ -77,6 +78,6 @@ class ClientTest extends PHPUnit_Framework_TestCase */ public function testSetInvalidCurlOptions() { - $return = $this->client->setCurlOptions("option"); + $this->client->setCurlOptions("option"); } } diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/ConfigurationTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/ConfigurationTest.php index bc49a5b4c..40c129b2e 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/ConfigurationTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/ConfigurationTest.php @@ -2,6 +2,7 @@ class ConfigurationTest extends PHPUnit_Framework_TestCase { + /** @var Bugsnag_Configuration */ protected $config; protected function setUp() diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/DiagnosticsTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/DiagnosticsTest.php index 2fcf4ca54..12cf539db 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/DiagnosticsTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/DiagnosticsTest.php @@ -2,7 +2,10 @@ class DiagnosticsTest extends PHPUnit_Framework_TestCase { + /** @var Bugsnag_Configuration */ protected $config; + /** @var Bugsnag_Diagnostics */ + protected $diagnostics; protected function setUp() { diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/ErrorTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/ErrorTest.php index a0ed4e600..772bd23c8 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/ErrorTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/ErrorTest.php @@ -4,8 +4,11 @@ require_once 'Bugsnag_TestCase.php'; class ErrorTest extends Bugsnag_TestCase { + /** @var Bugsnag_Configuration */ protected $config; + /** @var Bugsnag_Diagnostics */ protected $diagnostics; + /** @var Bugsnag_Error */ protected $error; protected function setUp() @@ -102,7 +105,7 @@ class ErrorTest extends Bugsnag_TestCase if (version_compare(PHP_VERSION, '5.3.0', '>=')) { $exception = new Exception("secondly", 65533, new Exception("firstly")); - $error = Bugsnag_Error::fromPHPException($this->config, $this->diagnostics, $exception); + $error = Bugsnag_Error::fromPHPThrowable($this->config, $this->diagnostics, $exception); $errorArray = $error->toArray(); diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/NotificationTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/NotificationTest.php index 377270e27..a3f635210 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/NotificationTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/NotificationTest.php @@ -4,8 +4,11 @@ require_once 'Bugsnag_TestCase.php'; class NotificationTest extends Bugsnag_TestCase { + /** @var Bugsnag_Configuration */ protected $config; + /** @var Bugsnag_Diagnostics */ protected $diagnostics; + /** @var Bugsnag_Notification|PHPUnit_Framework_MockObject_MockObject */ protected $notification; protected function setUp() @@ -64,6 +67,7 @@ class NotificationTest extends Bugsnag_TestCase ->method('shouldNotify') ->will($this->returnValue(false)); + /** @var Bugsnag_Notification $notification */ $notification = $this->getMockBuilder('Bugsnag_Notification') ->setMethods(array("postJSON")) ->setConstructorArgs(array($config)) @@ -86,6 +90,7 @@ class NotificationTest extends Bugsnag_TestCase ->method('shouldNotify') ->will($this->returnValue(false)); + /** @var Bugsnag_Notification|PHPUnit_Framework_MockObject_MockObject $notification */ $notification = $this->getMockBuilder('Bugsnag_Notification') ->setMethods(array("postJSON")) ->setConstructorArgs(array($config)) diff --git a/vendor/bugsnag/bugsnag/tests/Bugsnag/StacktraceTest.php b/vendor/bugsnag/bugsnag/tests/Bugsnag/StacktraceTest.php index 19ece5196..99e85b99c 100644 --- a/vendor/bugsnag/bugsnag/tests/Bugsnag/StacktraceTest.php +++ b/vendor/bugsnag/bugsnag/tests/Bugsnag/StacktraceTest.php @@ -4,7 +4,9 @@ require_once 'Bugsnag_TestCase.php'; class StacktraceTest extends Bugsnag_TestCase { + /** @var Bugsnag_Configuration */ protected $config; + /** @var Bugsnag_Diagnostics */ protected $diagnostics; protected function setUp() diff --git a/vendor/chumper/datatable/src/Chumper/Datatable/Engines/CollectionEngine.php b/vendor/chumper/datatable/src/Chumper/Datatable/Engines/CollectionEngine.php index e3dbfcaa1..2ec060008 100644 --- a/vendor/chumper/datatable/src/Chumper/Datatable/Engines/CollectionEngine.php +++ b/vendor/chumper/datatable/src/Chumper/Datatable/Engines/CollectionEngine.php @@ -14,11 +14,13 @@ class CollectionEngine extends BaseEngine { /** * Constant for OR queries in internal search + * * @var string */ const OR_CONDITION = 'OR'; /** * Constant for AND queries in internal search + * * @var string */ const AND_CONDITION = 'AND'; @@ -37,9 +39,10 @@ class CollectionEngine extends BaseEngine { * @var array Different options */ private $options = array( - 'stripOrder' => false, - 'stripSearch' => false, - 'caseSensitive' => false, + 'sortFlags' => SORT_NATURAL, + 'stripOrder' => false, + 'stripSearch' => false, + 'caseSensitive' => false, ); /** @@ -116,6 +119,18 @@ class CollectionEngine extends BaseEngine { return $this->stripOrder($callback); } + /** + * Set the sort behaviour of the doInternalOrder() function. + * + * @param int $sort_flags For details see: http://php.net/manual/en/function.sort.php + * @return $this + */ + public function setOrderFlags($sort_flags = SORT_NATURAL) + { + $this->options['sortFlags'] = $sort_flags; + return $this; + } + public function setCaseSensitive($value) { $this->options['caseSensitive'] = $value; @@ -264,7 +279,7 @@ class CollectionEngine extends BaseEngine { { return $row[$column]; } - }, SORT_NATURAL); + }, $this->options['sortFlags']); if($this->orderDirection == BaseEngine::ORDER_DESC) $this->workingCollection = $this->workingCollection->reverse(); diff --git a/vendor/chumper/datatable/src/views/template.blade.php b/vendor/chumper/datatable/src/views/template.blade.php index e432196fa..d6c226407 100644 --- a/vendor/chumper/datatable/src/views/template.blade.php +++ b/vendor/chumper/datatable/src/views/template.blade.php @@ -22,42 +22,6 @@ - - @if (!$noScript) @include(Config::get('chumper.datatable.table.script_view'), array('id' => $id, 'options' => $options)) @endif diff --git a/vendor/chumper/zipper/.gitignore b/vendor/chumper/zipper/.gitignore new file mode 100644 index 000000000..fc9a5077c --- /dev/null +++ b/vendor/chumper/zipper/.gitignore @@ -0,0 +1,5 @@ +/vendor +composer.phar +composer.lock +.DS_Store +/.idea \ No newline at end of file diff --git a/vendor/chumper/zipper/.travis.yml b/vendor/chumper/zipper/.travis.yml new file mode 100644 index 000000000..978a8fc82 --- /dev/null +++ b/vendor/chumper/zipper/.travis.yml @@ -0,0 +1,11 @@ +language: php + +php: + - 5.4 + - 5.5 + +before_script: + - curl -s http://getcomposer.org/installer | php + - php composer.phar install --dev + +script: phpunit diff --git a/vendor/chumper/zipper/LICENSE b/vendor/chumper/zipper/LICENSE new file mode 100644 index 000000000..37ec93a14 --- /dev/null +++ b/vendor/chumper/zipper/LICENSE @@ -0,0 +1,191 @@ +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and +distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright +owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities +that control, are controlled by, or are under common control with that entity. +For the purposes of this definition, "control" means (i) the power, direct or +indirect, to cause the direction or management of such entity, whether by +contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the +outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising +permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including +but not limited to software source code, documentation source, and configuration +files. + +"Object" form shall mean any form resulting from mechanical transformation or +translation of a Source form, including but not limited to compiled object code, +generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made +available under the License, as indicated by a copyright notice that is included +in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that +is based on (or derived from) the Work and for which the editorial revisions, +annotations, elaborations, or other modifications represent, as a whole, an +original work of authorship. For the purposes of this License, Derivative Works +shall not include works that remain separable from, or merely link (or bind by +name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version +of the Work and any modifications or additions to that Work or Derivative Works +thereof, that is intentionally submitted to Licensor for inclusion in the Work +by the copyright owner or by an individual or Legal Entity authorized to submit +on behalf of the copyright owner. For the purposes of this definition, +"submitted" means any form of electronic, verbal, or written communication sent +to the Licensor or its representatives, including but not limited to +communication on electronic mailing lists, source code control systems, and +issue tracking systems that are managed by, or on behalf of, the Licensor for +the purpose of discussing and improving the Work, but excluding communication +that is conspicuously marked or otherwise designated in writing by the copyright +owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf +of whom a Contribution has been received by Licensor and subsequently +incorporated within the Work. + +2. Grant of Copyright License. + +Subject to the terms and conditions of this License, each Contributor hereby +grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, +irrevocable copyright license to reproduce, prepare Derivative Works of, +publicly display, publicly perform, sublicense, and distribute the Work and such +Derivative Works in Source or Object form. + +3. Grant of Patent License. + +Subject to the terms and conditions of this License, each Contributor hereby +grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, +irrevocable (except as stated in this section) patent license to make, have +made, use, offer to sell, sell, import, and otherwise transfer the Work, where +such license applies only to those patent claims licensable by such Contributor +that are necessarily infringed by their Contribution(s) alone or by combination +of their Contribution(s) with the Work to which such Contribution(s) was +submitted. If You institute patent litigation against any entity (including a +cross-claim or counterclaim in a lawsuit) alleging that the Work or a +Contribution incorporated within the Work constitutes direct or contributory +patent infringement, then any patent licenses granted to You under this License +for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. + +You may reproduce and distribute copies of the Work or Derivative Works thereof +in any medium, with or without modifications, and in Source or Object form, +provided that You meet the following conditions: + +You must give any other recipients of the Work or Derivative Works a copy of +this License; and +You must cause any modified files to carry prominent notices stating that You +changed the files; and +You must retain, in the Source form of any Derivative Works that You distribute, +all copyright, patent, trademark, and attribution notices from the Source form +of the Work, excluding those notices that do not pertain to any part of the +Derivative Works; and +If the Work includes a "NOTICE" text file as part of its distribution, then any +Derivative Works that You distribute must include a readable copy of the +attribution notices contained within such NOTICE file, excluding those notices +that do not pertain to any part of the Derivative Works, in at least one of the +following places: within a NOTICE text file distributed as part of the +Derivative Works; within the Source form or documentation, if provided along +with the Derivative Works; or, within a display generated by the Derivative +Works, if and wherever such third-party notices normally appear. The contents of +the NOTICE file are for informational purposes only and do not modify the +License. You may add Your own attribution notices within Derivative Works that +You distribute, alongside or as an addendum to the NOTICE text from the Work, +provided that such additional attribution notices cannot be construed as +modifying the License. +You may add Your own copyright statement to Your modifications and may provide +additional or different license terms and conditions for use, reproduction, or +distribution of Your modifications, or for any such Derivative Works as a whole, +provided Your use, reproduction, and distribution of the Work otherwise complies +with the conditions stated in this License. + +5. Submission of Contributions. + +Unless You explicitly state otherwise, any Contribution intentionally submitted +for inclusion in the Work by You to the Licensor shall be under the terms and +conditions of this License, without any additional terms or conditions. +Notwithstanding the above, nothing herein shall supersede or modify the terms of +any separate license agreement you may have executed with Licensor regarding +such Contributions. + +6. Trademarks. + +This License does not grant permission to use the trade names, trademarks, +service marks, or product names of the Licensor, except as required for +reasonable and customary use in describing the origin of the Work and +reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. + +Unless required by applicable law or agreed to in writing, Licensor provides the +Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, +including, without limitation, any warranties or conditions of TITLE, +NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are +solely responsible for determining the appropriateness of using or +redistributing the Work and assume any risks associated with Your exercise of +permissions under this License. + +8. Limitation of Liability. + +In no event and under no legal theory, whether in tort (including negligence), +contract, or otherwise, unless required by applicable law (such as deliberate +and grossly negligent acts) or agreed to in writing, shall any Contributor be +liable to You for damages, including any direct, indirect, special, incidental, +or consequential damages of any character arising as a result of this License or +out of the use or inability to use the Work (including but not limited to +damages for loss of goodwill, work stoppage, computer failure or malfunction, or +any and all other commercial damages or losses), even if such Contributor has +been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. + +While redistributing the Work or Derivative Works thereof, You may choose to +offer, and charge a fee for, acceptance of support, warranty, indemnity, or +other liability obligations and/or rights consistent with this License. However, +in accepting such obligations, You may act only on Your own behalf and on Your +sole responsibility, not on behalf of any other Contributor, and only if You +agree to indemnify, defend, and hold each Contributor harmless for any liability +incurred by, or claims asserted against, such Contributor by reason of your +accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work + +To apply the Apache License to your work, attach the following boilerplate +notice, with the fields enclosed by brackets "[]" replaced with your own +identifying information. (Don't include the brackets!) The text should be +enclosed in the appropriate comment syntax for the file format. We also +recommend that a file or class name and description of purpose be included on +the same "printed page" as the copyright notice for easier identification within +third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/vendor/chumper/zipper/README.md b/vendor/chumper/zipper/README.md new file mode 100644 index 000000000..1bfad98a6 --- /dev/null +++ b/vendor/chumper/zipper/README.md @@ -0,0 +1,150 @@ +#Zipper + +[![Build Status](https://travis-ci.org/Chumper/Zipper.png)](https://travis-ci.org/Chumper/Zipper) + +This is a simple Wrapper around the ZipArchive methods with some handy functions. + +##Installation + +1a- To install this package for laravel 5 just require it in your + +`composer.json` with `"Chumper/Zipper": "0.6.0"` + +1b- To install this package for laravel 4 just require it in your + +`composer.json` with `"Chumper/Zipper": "0.5.1"` + +2- goto `app/config/app.php` + +.add to providers + + 'Chumper\Zipper\ZipperServiceProvider' + +.add to aliases + + 'Zipper' => 'Chumper\Zipper\Zipper' + +You can now access Zipper with the `Zipper` alias. + +##Simple example +```php +$files = glob('public/files/*'); +Zipper::make('public/test.zip')->add($files); +``` +- by default the package will create the `test.zip` in the project route folder but in the example above we changed it to `project_route/public/`. + +####Another example +```php +$zipper = new \Chumper\Zipper\Zipper; + +$zipper->make('test.zip')->folder('test')->add('composer.json'); +$zipper->zip('test.zip')->folder('test')->add('composer.json','test'); + +$zipper->remove('composer.lock'); + +$zipper->folder('mySuperPackage')->add( + array( + 'vendor', + 'composer.json' + ), +); + +$zipper->getFileContent('mySuperPackage/composer.json'); + +$zipper->make('test.zip')->extractTo('',array('mySuperPackage/composer.json'),Zipper::WHITELIST); +``` + +- You can easily chain most functions, except `getFileContent`, `getStatus`, `close` and `extractTo` which must come at the end of the chaine. + +The main reason i wrote this little package is the `extractTo` method since it allows you to be very flexible when extracting zips. +So you can for example implement an update method which will just override the changed files. + + +##Functions + +**make($pathToFile)** + +`Create` or `Open` a zip archive; if the file does not exists it will create a new one. +It will return the Zipper instance so you can chain easily. + + +**add($files/folder)** + +You can add and array of Files, or a Folder which all the files in that folder will then be added, so from the first example we could instead do something like `$files = 'public/files/';`. + + +**addString($filename, $content)** + +add a single file to the zip by specifying a name and content as strings. + + +**remove($file/s)** + +removes a single file or an array of files from the zip. + + +**folder($folder)** + +Specify a folder to 'add files to' or 'remove files from' from the zip, example + + Zipper::make('test.zip')->folder('test')->add('composer.json'); + Zipper::make('test.zip')->folder('test')->remove('composer.json'); + + +**home()** + +Resets the folder pointer. + + +**zip($fileName)** + +Uses the ZipRepository for file handling. + + +**getFileContent($filePath)** + +get the content of a file in the zip. This will return the content or false. + + +**getStatus()** + +get the opening status of the zip as integer. + + +**close()** + +closes the zip and writes all changes. + + +**extractTo($path)** + +Extracts the content of the zip archive to the specified location, for example + + Zipper::make('test.zip')->folder('test')->extractTo('foo'); + +This will go into the folder `test` in the zip file and extract the content of that folder only to the folder `foo`, this is equal to using the `Zipper::WHITELIST`. + +This command is really nice to get just a part of the zip file, you can also pass a 2nd & 3rd param to specify a single or an array of files that will be + +white listed + +>**Zipper::WHITELIST** +> + Zipper::make('test.zip')->extractTo('public', array('vendor'), Zipper::WHITELIST); +Which will extract the `test.zip` into the `public` folder but **only** the folder `vendor` inside the zip will be extracted. + +or black listed + +>**Zipper::BLACKLIST** +> + Zipper::make('test.zip')->extractTo('public', array('vendor'), Zipper::BLACKLIST); +Which will extract the `test.zip` into the `public` folder except the folder `vendor` inside the zip will not be extracted. + + + +##Development + +May it is a goot idea to add other compress functions like rar, phar or bzip2 etc... +Everything is setup for that, if you want just fork and develop further. + +If you need other functions or got errors, please leave an issue on github. diff --git a/vendor/chumper/zipper/composer.json b/vendor/chumper/zipper/composer.json new file mode 100644 index 000000000..6560de1b2 --- /dev/null +++ b/vendor/chumper/zipper/composer.json @@ -0,0 +1,31 @@ +{ + "name": "chumper/zipper", + "type": "library", + "description": "This is a little neat helper for the ZipArchive methods with handy functions", + "keywords": ["laravel", "ZIP", "Archive"], + "homepage": "http://github.com/Chumper/zipper", + "license": "Apache2", + "authors": [ + { + "name": "Nils Plaschke", + "email": "github@nilsplaschke.de", + "homepage": "http://nilsplaschke.de", + "role": "Developer" + } + ], + "require": { + "php": ">=5.3.0", + "illuminate/support": "5.x", + "illuminate/filesystem": "5.x" + }, + "require-dev": { + "phpunit/phpunit": "3.7.*", + "mockery/mockery": "dev-master" + }, + "autoload": { + "psr-0": { + "Chumper\\Zipper": "src/" + } + }, + "minimum-stability": "dev" +} diff --git a/vendor/chumper/zipper/phpunit.xml b/vendor/chumper/zipper/phpunit.xml new file mode 100644 index 000000000..e89ac6d80 --- /dev/null +++ b/vendor/chumper/zipper/phpunit.xml @@ -0,0 +1,18 @@ + + + + + ./tests/ + + + \ No newline at end of file diff --git a/vendor/chumper/zipper/src/Chumper/Zipper/Facades/Zipper.php b/vendor/chumper/zipper/src/Chumper/Zipper/Facades/Zipper.php new file mode 100644 index 000000000..b38de5046 --- /dev/null +++ b/vendor/chumper/zipper/src/Chumper/Zipper/Facades/Zipper.php @@ -0,0 +1,13 @@ +archive = $archive ? $archive : new ZipArchive; + + if ($create) + $this->archive->open($filePath, ZipArchive::CREATE); + else + $this->archive->open($filePath); + } + + /** + * Add a file to the opened Archive + * + * @param $pathToFile + * @param $pathInArchive + * @return void + */ + public function addFile($pathToFile, $pathInArchive) + { + $this->archive->addFile($pathToFile, $pathInArchive); + } + + /** + * Add a file to the opened Archive using its contents + * + * @param $name + * @param $content + * @return void + */ + public function addFromString($name, $content) + { + $this->archive->addFromString($name, $content); + } + + /** + * Remove a file permanently from the Archive + * + * @param $pathInArchive + * @return void + */ + public function removeFile($pathInArchive) + { + $this->archive->deleteName($pathInArchive); + } + + /** + * Get the content of a file + * + * @param $pathInArchive + * @return string + */ + public function getFileContent($pathInArchive) + { + return $this->archive->getFromName($pathInArchive); + } + + /** + * Get the stream of a file + * + * @param $pathInArchive + * @return mixed + */ + public function getFileStream($pathInArchive) + { + return $this->archive->getStream($pathInArchive); + } + + /** + * Will loop over every item in the archive and will execute the callback on them + * Will provide the filename for every item + * + * @param $callback + * @return void + */ + public function each($callback) + { + for ($i = 0; $i < $this->archive->numFiles; $i++) { + + //skip if folder + $stats = $this->archive->statIndex($i); + if ($stats['size'] == 0 && $stats['crc'] == 0) + continue; + + call_user_func_array($callback, array( + 'file' => $this->archive->getNameIndex($i), + )); + } + } + + /** + * Checks whether the file is in the archive + * + * @param $fileInArchive + * @return boolean + */ + public function fileExists($fileInArchive) + { + return $this->archive->locateName($fileInArchive) !== false; + } + + /** + * Returns the status of the archive as a string + * + * @return string + */ + public function getStatus() + { + return $this->archive->getStatusString(); + } + + /** + * Closes the archive and saves it + * @return void + */ + public function close() + { + @$this->archive->close(); + } +} \ No newline at end of file diff --git a/vendor/chumper/zipper/src/Chumper/Zipper/Zipper.php b/vendor/chumper/zipper/src/Chumper/Zipper/Zipper.php new file mode 100644 index 000000000..fcb3f567d --- /dev/null +++ b/vendor/chumper/zipper/src/Chumper/Zipper/Zipper.php @@ -0,0 +1,474 @@ +file = $fs ? $fs : new Filesystem(); + } + + /** + * Create a new zip Archive if the file does not exists + * opens a zip archive if the file exists + * + * @param $pathToFile string The file to open + * @param RepositoryInterface|string $type The type of the archive, defaults to zip, possible are zip, phar + * + * @return $this Zipper instance + */ + public function make($pathToFile, $type = 'zip') + { + $new = $this->createArchiveFile($pathToFile); + $this->filePath = $pathToFile; + + $name = 'Chumper\Zipper\Repositories\\' . ucwords($type) . 'Repository'; + if (is_subclass_of($name, 'Chumper\Zipper\Repositories\RepositoryInterface')) + $this->repository = new $name($pathToFile, $new); + else + //TODO $type should be a class name and not a string + $this->repository = $type; + + return $this; + } + + /** + * Create a new zip archive or open an existing one + * + * @param $pathToFile + * @return $this + */ + public function zip($pathToFile) + { + $this->make($pathToFile); + return $this; + } + + /** + * Create a new phar file or open one + * + * @param $pathToFile + * @return $this + */ + public function phar($pathToFile) + { + $this->make($pathToFile, 'phar'); + return $this; + } + + /** + * Extracts the opened zip archive to the specified location
    + * you can provide an array of files and folders and define if they should be a white list + * or a black list to extract. + * + * @param $path string The path to extract to + * @param array $files An array of files + * @param int $method The Method the files should be treated + */ + public function extractTo($path, array $files = array(), $method = Zipper::BLACKLIST) + { + $path = realpath($path); + if (!$this->file->exists($path)) + $this->file->makeDirectory($path, 0755, true); + + if ($method == Zipper::WHITELIST) + $this->extractWithWhiteList($path, $files); + else + $this->extractWithBlackList($path, $files); + } + + /** + * Gets the content of a single file if available + * + * @param $filePath string The full path (including all folders) of the file in the zip + * @throws \Exception + * @return mixed returns the content or throws an exception + */ + public function getFileContent($filePath) + { + + if ($this->repository->fileExists($filePath) === false) + throw new Exception(sprintf('The file "%s" cannot be found', $filePath)); + + return $this->repository->getFileContent($filePath); + } + + /** + * Add one or multiple files to the zip. + * + * @param $pathToAdd array|string An array or string of files and folders to add + * @return $this Zipper instance + */ + public function add($pathToAdd) + { + if (is_array($pathToAdd)) { + foreach ($pathToAdd as $dir) { + $this->add($dir); + } + } else if ($this->file->isFile($pathToAdd)) { + $this->addFile($pathToAdd); + } else + $this->addDir($pathToAdd); + + return $this; + } + + /** + * Add a file to the zip using its contents + * + * @param $filename string The name of the file to create + * @param $content string The file contents + * @return $this Zipper instance + */ + public function addString($filename, $content) + { + $this->addFromString($filename, $content); + + return $this; + } + + + /** + * Gets the status of the zip. + * + * @return integer The status of the internal zip file + */ + public function getStatus() + { + return $this->repository->getStatus(); + } + + /** + * Remove a file or array of files and folders from the zip archive + * + * @param $fileToRemove array|string The path/array to the files in the zip + * @return $this Zipper instance + */ + public function remove($fileToRemove) + { + if (is_array($fileToRemove)) { + $self = $this; + $this->repository->each(function ($file) use ($fileToRemove, $self) { + if (starts_with($file, $fileToRemove)) { + $self->getRepository()->removeFile($file); + } + }); + } else + $this->repository->removeFile($fileToRemove); + + return $this; + } + + /** + * Returns the path of the current zip file if there is one. + * @return string The path to the file + */ + public function getFilePath() + { + return $this->filePath; + } + + /** + * Closes the zip file and frees all handles + */ + public function close() + { + if(!is_null($this->repository)) + $this->repository->close(); + $this->filePath = ""; + } + + /** + * Sets the internal folder to the given path.
    + * Useful for extracting only a segment of a zip file. + * @param $path + * @return $this + */ + public function folder($path) + { + $this->currentFolder = $path; + return $this; + } + + /** + * Resets the internal folder to the root of the zip file. + * + * @return $this + */ + public function home() + { + $this->currentFolder = ''; + return $this; + } + + /** + * Deletes the archive file + */ + public function delete() + { + if(!is_null($this->repository)) + $this->repository->close(); + + $this->file->delete($this->filePath); + $this->filePath = ""; + } + + /** + * Get the type of the Archive + * + * @return string + */ + public function getArchiveType() + { + return get_class($this->repository); + } + + /** + * Destructor + */ + public function __destruct() + { + if(!is_null($this->repository)) + $this->repository->close(); + } + + /** + * Get the current internal folder pointer + * + * @return string + */ + public function getCurrentFolderPath() + { + return $this->currentFolder; + } + + /** + * Checks if a file is present in the archive + * + * @param $fileInArchive + * @return bool + */ + public function contains($fileInArchive) + { + return $this->repository->fileExists($fileInArchive); + } + + /** + * @return RepositoryInterface + */ + public function getRepository() + { + return $this->repository; + } + + /** + * @return Filesystem + */ + public function getFileHandler() + { + return $this->file; + } + + /** + * Gets the path to the internal folder + * + * @return string + */ + public function getInternalPath() + { + return empty($this->currentFolder) ? '' : $this->currentFolder . '/'; + } + + //---------------------PRIVATE FUNCTIONS------------- + + /** + * @param $pathToZip + * @throws \Exception + * @return bool + */ + private function createArchiveFile($pathToZip) + { + + if (!$this->file->exists($pathToZip)) { + if (!$this->file->exists(dirname($pathToZip))) + $this->file->makeDirectory(dirname($pathToZip), 0755, true); + + if (!$this->file->isWritable(dirname($pathToZip))) + throw new Exception(sprintf('The path "%s" is not writeable', $pathToZip)); + + return true; + } + return false; + } + + /** + * @param $pathToDir + */ + private function addDir($pathToDir) + { + // First go over the files in this directory and add them to the repository. + foreach ($this->file->files($pathToDir) as $file) { + $this->addFile($pathToDir . '/' . basename($file)); + } + + // Now let's visit the subdirectories and add them, too. + foreach ($this->file->directories($pathToDir) as $dir) { + $old_folder = $this->currentFolder; + $this->currentFolder = empty($this->currentFolder) ? basename($dir) : $this->currentFolder . '/' . basename($dir); + $this->addDir($pathToDir . '/' . basename($dir)); + $this->currentFolder = $old_folder; + } + } + + /** + * Add the file to the zip + * + * @param $pathToAdd + */ + private function addFile($pathToAdd) + { + $info = pathinfo($pathToAdd); + + $file_name = isset($info['extension']) ? + $info['filename'] . '.' . $info['extension'] : + $info['filename']; + + $this->repository->addFile($pathToAdd, $this->getInternalPath() . $file_name); + } + + /** + * Add the file to the zip from content + * + * @param $filename + * @param $content + */ + private function addFromString($filename, $content) + { + $this->repository->addFromString($this->getInternalPath() . $filename, $content); + } + + + /** + * @param $path + * @param $filesArray + * @throws \Exception + */ + private function extractWithBlackList($path, $filesArray) + { + $self = $this; + $this->repository->each(function ($fileName) use ($path, $filesArray, $self) { + $oriName = $fileName; + + $currentPath = $self->getCurrentFolderPath(); + if (!empty($currentPath) && !starts_with($fileName, $currentPath)) + return; + + if (starts_with($fileName, $filesArray)) { + return; + } + + $tmpPath = str_replace($self->getInternalPath(), '', $fileName); + + // We need to create the directory first in case it doesn't exist + $full_path = $path . '/' . $tmpPath; + $dir = substr($full_path, 0, strrpos($full_path, '/')); + if(!is_dir($dir)) + $self->getFileHandler()->makeDirectory($dir, 0777, true, true); + + $self->getFileHandler()->put($path . '/' . $tmpPath, $self->getRepository()->getFileStream($oriName)); + + }); + } + + /** + * @param $path + * @param $filesArray + * @throws \Exception + */ + private function extractWithWhiteList($path, $filesArray) + { + $self = $this; + $this->repository->each(function ($fileName) use ($path, $filesArray, $self) { + $oriName = $fileName; + + $currentPath = $self->getCurrentFolderPath(); + if (!empty($currentPath) && !starts_with($fileName, $currentPath)) + return; + + if (starts_with($self->getInternalPath() . $fileName, $filesArray)) { + $tmpPath = str_replace($self->getInternalPath(), '', $fileName); + + // We need to create the directory first in case it doesn't exist + $full_path = $path . '/' . $tmpPath; + $dir = substr($full_path, 0, strrpos($full_path, '/')); + if(!is_dir($dir)) + $self->getFileHandler()->makeDirectory($dir, 0777, true, true); + + $self->getFileHandler()->put($path . '/' . $tmpPath, $self->getRepository()->getFileStream($oriName)); + } + }); + } + + /** + * List files that are within the archive + * + * @return array + */ + public function listFiles() + { + $filesList = array(); + $this->repository->each( + function ($file) use (&$filesList) { + $filesList[] = $file; + } + ); + + return $filesList; + } +} diff --git a/vendor/chumper/zipper/src/Chumper/Zipper/ZipperServiceProvider.php b/vendor/chumper/zipper/src/Chumper/Zipper/ZipperServiceProvider.php new file mode 100644 index 000000000..227f22130 --- /dev/null +++ b/vendor/chumper/zipper/src/Chumper/Zipper/ZipperServiceProvider.php @@ -0,0 +1,55 @@ +app['zipper'] = $this->app->share(function($app) + { + $return = $app->make('Chumper\Zipper\Zipper'); + return $return; + }); + + $this->app->booting(function() + { + $loader = AliasLoader::getInstance(); + $loader->alias('Zipper', 'Chumper\Zipper\Facades\Zipper'); + }); + } + + /** + * Get the services provided by the provider. + * + * @return array + */ + public function provides() + { + return array('zipper'); + } + +} diff --git a/vendor/chumper/zipper/tests/.gitkeep b/vendor/chumper/zipper/tests/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/vendor/chumper/zipper/tests/ArrayArchive.php b/vendor/chumper/zipper/tests/ArrayArchive.php new file mode 100644 index 000000000..fab290c86 --- /dev/null +++ b/vendor/chumper/zipper/tests/ArrayArchive.php @@ -0,0 +1,110 @@ +entries[$pathInArchive] = $pathInArchive; + } + + /** + * Remove a file permanently from the Archive + * + * @param $pathInArchive + * @return void + */ + public function removeFile($pathInArchive) + { + unset($this->entries[$pathInArchive]); + } + + /** + * Get the content of a file + * + * @param $pathInArchive + * @return string + */ + public function getFileContent($pathInArchive) + { + return $this->entries[$pathInArchive]; + } + + /** + * Get the stream of a file + * + * @param $pathInArchive + * @return mixed + */ + public function getFileStream($pathInArchive) + { + return $this->entries[$pathInArchive]; + } + + /** + * Will loop over every item in the archive and will execute the callback on them + * Will provide the filename for every item + * + * @param $callback + * @return void + */ + public function each($callback) + { + foreach ($this->entries as $entry) { + call_user_func_array($callback, array( + 'file' => $entry, + )); + } + + } + + /** + * Checks whether the file is in the archive + * + * @param $fileInArchive + * @return boolean + */ + public function fileExists($fileInArchive) + { + return array_key_exists($fileInArchive, $this->entries); + } + + /** + * Returns the status of the archive as a string + * + * @return string + */ + public function getStatus() + { + return "OK"; + } + + /** + * Closes the archive and saves it + * @return void + */ + public function close() + { + } +} diff --git a/vendor/chumper/zipper/tests/Repositories/ZipRepositoryTest.php b/vendor/chumper/zipper/tests/Repositories/ZipRepositoryTest.php new file mode 100644 index 000000000..1fa342246 --- /dev/null +++ b/vendor/chumper/zipper/tests/Repositories/ZipRepositoryTest.php @@ -0,0 +1,101 @@ +mock = Mockery::mock(new ZipArchive); + $this->zip = new ZipRepository('foo', true, $this->mock); + } + + public function testMake() + { + $zip = new ZipRepository('foo.zip', true); + $this->assertFalse($zip->fileExists('foo')); + } + + public function testAddFile() + { + $this->mock->shouldReceive('addFile')->once()->with('bar', 'bar'); + $this->mock->shouldReceive('addFile')->once()->with('bar', 'foo/bar'); + $this->mock->shouldReceive('addFile')->once()->with('foo/bar', 'bar'); + + $this->zip->addFile('bar', 'bar'); + $this->zip->addFile('bar', 'foo/bar'); + $this->zip->addFile('foo/bar', 'bar'); + } + + public function testRemoveFile() + { + $this->mock->shouldReceive('deleteName')->once()->with('bar'); + $this->mock->shouldReceive('deleteName')->once()->with('foo/bar'); + + $this->zip->removeFile('bar'); + $this->zip->removeFile('foo/bar'); + } + + public function testGetFileContent() + { + $this->mock->shouldReceive('getFromName')->once() + ->with('bar')->andReturn('foo'); + $this->mock->shouldReceive('getFromName')->once() + ->with('foo/bar')->andReturn('baz'); + + $this->assertEquals('foo', $this->zip->getFileContent('bar')); + $this->assertEquals('baz', $this->zip->getFileContent('foo/bar')); + } + + public function testGetFileStream() + { + $this->mock->shouldReceive('getStream')->once() + ->with('bar')->andReturn('foo'); + $this->mock->shouldReceive('getStream')->once() + ->with('foo/bar')->andReturn('baz'); + + $this->assertEquals('foo', $this->zip->getFileStream('bar')); + $this->assertEquals('baz', $this->zip->getFileStream('foo/bar')); + } + + public function testFileExists() + { + $this->mock->shouldReceive('locateName')->once() + ->with('bar')->andReturn(true); + $this->mock->shouldReceive('locateName')->once() + ->with('foo/bar')->andReturn(false); + + $this->assertTrue($this->zip->fileExists('bar')); + $this->assertFalse($this->zip->fileExists('foo/bar')); + } + + public function testClose() + { + $this->zip->close(); + } + + protected function tearDown() + { + Mockery::close(); + } + + +} diff --git a/vendor/chumper/zipper/tests/ZipperTest.php b/vendor/chumper/zipper/tests/ZipperTest.php new file mode 100644 index 000000000..cf16b5136 --- /dev/null +++ b/vendor/chumper/zipper/tests/ZipperTest.php @@ -0,0 +1,238 @@ +archive = new \Chumper\Zipper\Zipper( + $this->file = Mockery::mock(new Filesystem) + ); + $this->archive->make('foo', new ArrayArchive('foo', true)); + } + + public function testMake() + { + $this->assertEquals('ArrayArchive', $this->archive->getArchiveType()); + $this->assertEquals('foo', $this->archive->getFilePath()); + } + + public function testExtractTo() + { + + } + + public function testAddAndGet() + { + $this->file->shouldReceive('isFile')->with('foo.bar') + ->times(3)->andReturn(true); + $this->file->shouldReceive('isFile')->with('foo') + ->times(3)->andReturn(true); + + /**Array**/ + $this->file->shouldReceive('isFile')->with('/path/to/fooDir') + ->once()->andReturn(false); + + $this->file->shouldReceive('files')->with('/path/to/fooDir') + ->once()->andReturn(array('foo.bar', 'bar.foo')); + $this->file->shouldReceive('directories')->with('/path/to/fooDir') + ->once()->andReturn(array('fooSubdir')); + + $this->file->shouldReceive('files')->with('/path/to/fooDir/fooSubdir') + ->once()->andReturn(array('foo.bar')); + $this->file->shouldReceive('directories')->with('/path/to/fooDir/fooSubdir') + ->once()->andReturn(array()); + + //test1 + $this->archive->add('foo.bar'); + $this->archive->add('foo'); + + $this->assertEquals('foo', $this->archive->getFileContent('foo')); + $this->assertEquals('foo.bar', $this->archive->getFileContent('foo.bar')); + + //test2 + $this->archive->add(array( + 'foo.bar', + 'foo' + )); + $this->assertEquals('foo', $this->archive->getFileContent('foo')); + $this->assertEquals('foo.bar', $this->archive->getFileContent('foo.bar')); + + /** + * test3: + * Add the local folder /path/to/fooDir as folder fooDir to the repository + * and make sure the folder structure within the repository is there. + */ + $this->archive->folder('fooDir')->add('/path/to/fooDir'); + $this->assertEquals('fooDir/foo.bar', $this->archive->getFileContent('fooDir/foo.bar')); + $this->assertEquals('fooDir/bar.foo', $this->archive->getFileContent('fooDir/bar.foo')); + $this->assertEquals('fooDir/fooSubdir/foo.bar', $this->archive->getFileContent('fooDir/fooSubdir/foo.bar')); + + } + + /** + * @expectedException Exception + */ + public function testGetFileContent() + { + $this->archive->getFileContent('baz'); + } + + public function testRemove() + { + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->add('foo'); + + $this->assertTrue($this->archive->contains('foo')); + + $this->archive->remove('foo'); + + $this->assertFalse($this->archive->contains('foo')); + + //---- + + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + $this->file->shouldReceive('isFile')->with('fooBar') + ->andReturn(true); + + $this->archive->add(array('foo', 'fooBar')); + + $this->assertTrue($this->archive->contains('foo')); + $this->assertTrue($this->archive->contains('fooBar')); + + $this->archive->remove(array('foo', 'fooBar')); + + $this->assertFalse($this->archive->contains('foo')); + $this->assertFalse($this->archive->contains('fooBar')); + } + + public function testExtractWhiteList() + { + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->add('foo'); + + $this->file->shouldReceive('put')->with(realpath(NULL) . '/foo', 'foo'); + + $this->archive->extractTo('', array('foo'), Zipper::WHITELIST); + + //---- + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->folder('foo/bar')->add('foo'); + + $this->file->shouldReceive('put')->with(realpath(NULL) . '/foo', 'foo/bar/foo'); + + $this->archive->extractTo('', array('foo'), Zipper::WHITELIST); + + } + + public function testExtractBlackList() + { + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->add('foo'); + + $this->file->shouldReceive('put')->with(realpath(NULL) . '/foo', 'foo'); + + $this->archive->extractTo('', array(), Zipper::BLACKLIST); + + //---- + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->folder('foo/bar')->add('foo'); + + $this->file->shouldReceive('put')->with(realpath(NULL) . '/foo', 'foo/bar/foo'); + + $this->archive->extractTo('', array('foo'), Zipper::BLACKLIST); + } + + public function testNavigationFolderAndHome() + { + $this->archive->folder('foo/bar'); + $this->assertEquals('foo/bar', $this->archive->getCurrentFolderPath()); + + //---- + + $this->file->shouldReceive('isFile')->with('foo') + ->andReturn(true); + + $this->archive->add('foo'); + $this->assertEquals('foo/bar/foo', $this->archive->getFileContent('foo/bar/foo')); + + //---- + + $this->file->shouldReceive('isFile')->with('bar') + ->andReturn(true); + + $this->archive->home()->add('bar'); + $this->assertEquals('bar', $this->archive->getFileContent('bar')); + + //---- + + $this->file->shouldReceive('isFile')->with('baz/bar/bing') + ->andReturn(true); + + $this->archive->folder('test')->add('baz/bar/bing'); + $this->assertEquals('test/bing', $this->archive->getFileContent('test/bing')); + + } + + public function testListFiles() + { + // testing empty file + $this->file->shouldReceive('isFile')->with('foo.file')->andReturn(true); + $this->file->shouldReceive('isFile')->with('bar.file')->andReturn(true); + + $this->assertEquals(array(), $this->archive->listFiles()); + + // testing not empty file + $this->archive->add('foo.file'); + $this->archive->add('bar.file'); + + $this->assertEquals(array('foo.file', 'bar.file'), $this->archive->listFiles()); + + // testing with a empty sub dir + $this->file->shouldReceive('isFile')->with('/path/to/subDirEmpty')->andReturn(false); + + $this->file->shouldReceive('files')->with('/path/to/subDirEmpty')->andReturn(array()); + $this->file->shouldReceive('directories')->with('/path/to/subDirEmpty')->andReturn(array()); + $this->archive->folder('subDirEmpty')->add('/path/to/subDirEmpty'); + + $this->assertEquals(array('foo.file', 'bar.file'), $this->archive->listFiles()); + + // testing with a not empty sub dir + $this->file->shouldReceive('isFile')->with('/path/to/subDir')->andReturn(false); + $this->file->shouldReceive('isFile')->with('sub.file')->andReturn(true); + + $this->file->shouldReceive('files')->with('/path/to/subDir')->andReturn(array('sub.file')); + $this->file->shouldReceive('directories')->with('/path/to/subDir')->andReturn(array()); + + $this->archive->folder('subDir')->add('/path/to/subDir'); + + $this->assertEquals(array('foo.file', 'bar.file', 'subDir/sub.file'), $this->archive->listFiles()); + } +} diff --git a/vendor/composer/LICENSE b/vendor/composer/LICENSE new file mode 100644 index 000000000..c8d57af8b --- /dev/null +++ b/vendor/composer/LICENSE @@ -0,0 +1,21 @@ + +Copyright (c) 2015 Nils Adermann, Jordi Boggiano + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index a075c2bc2..f07ced246 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -53,10 +53,12 @@ return array( 'CreateLanguagesTable' => $baseDir . '/database/migrations/2015_05_06_131238_create_languages_table.php', 'CreateLogTable' => $baseDir . '/database/migrations/2015_05_06_130627_create_log_table.php', 'CreateMailboxProtocolTable' => $baseDir . '/database/migrations/2015_05_06_125817_create_mailbox_protocol_table.php', + 'CreateNotificationLogTable' => $baseDir . '/database/migrations/2015_12_23_074831_create_notification_log_table.php', 'CreateOptionsTable' => $baseDir . '/database/migrations/2015_05_15_080512_create_options_table.php', 'CreateOrganizationTable' => $baseDir . '/database/migrations/2015_05_06_125328_create_organization_table.php', 'CreatePagesTable' => $baseDir . '/database/migrations/2015_05_14_072226_create_pages_table.php', 'CreatePasswordResetsTable' => $baseDir . '/database/migrations/2014_10_12_100000_create_password_resets_table.php', + 'CreatePluginsTable' => $baseDir . '/database/migrations/2015_12_14_072307_create_plugins_table.php', 'CreatePriorityTable' => $baseDir . '/database/migrations/2015_06_09_062121_create_priority_table.php', 'CreateSettingsTable' => $baseDir . '/database/migrations/2015_05_04_113843_create_settings_table.php', 'CreateSideTable' => $baseDir . '/database/migrations/2015_11_02_063848_create_side_table.php', diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php index d61a4187b..76460a186 100644 --- a/vendor/composer/autoload_files.php +++ b/vendor/composer/autoload_files.php @@ -6,14 +6,15 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( - $vendorDir . '/symfony/var-dumper/Symfony/Component/VarDumper/Resources/functions/dump.php', $vendorDir . '/nikic/php-parser/lib/bootstrap.php', + $vendorDir . '/symfony/var-dumper/Symfony/Component/VarDumper/Resources/functions/dump.php', $vendorDir . '/swiftmailer/swiftmailer/lib/swift_required.php', $vendorDir . '/ircmaxell/password-compat/lib/password.php', + $vendorDir . '/symfony/polyfill-php56/bootstrap.php', $vendorDir . '/psy/psysh/src/Psy/functions.php', $vendorDir . '/danielstjules/stringy/src/Create.php', + $vendorDir . '/illuminate/html/helpers.php', $vendorDir . '/laravel/framework/src/Illuminate/Foundation/helpers.php', $vendorDir . '/laravel/framework/src/Illuminate/Support/helpers.php', - $vendorDir . '/illuminate/html/helpers.php', $vendorDir . '/propaganistas/laravel-phone/src/helpers.php', ); diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php index 7a692366a..85e3f588f 100644 --- a/vendor/composer/autoload_namespaces.php +++ b/vendor/composer/autoload_namespaces.php @@ -24,7 +24,6 @@ return array( 'Psr\\Log\\' => array($vendorDir . '/psr/log'), 'Prophecy\\' => array($vendorDir . '/phpspec/prophecy/src'), 'PhpSpec' => array($vendorDir . '/phpspec/phpspec/src'), - 'PhpImap' => array($vendorDir . '/php-imap/php-imap/src'), 'JakubOnderka\\PhpConsoleHighlighter' => array($vendorDir . '/jakub-onderka/php-console-highlighter/src'), 'JakubOnderka\\PhpConsoleColor' => array($vendorDir . '/jakub-onderka/php-console-color/src'), 'ForceUTF8\\' => array($vendorDir . '/neitanod/forceutf8/src'), @@ -32,8 +31,8 @@ return array( 'Doctrine\\Common\\Inflector\\' => array($vendorDir . '/doctrine/inflector/lib'), 'Diff' => array($vendorDir . '/phpspec/php-diff/lib'), 'Cron' => array($vendorDir . '/mtdowling/cron-expression/src'), + 'Chumper\\Zipper' => array($vendorDir . '/chumper/zipper/src'), 'Chumper\\Datatable' => array($vendorDir . '/chumper/datatable/src'), - 'Carbon' => array($vendorDir . '/nesbot/carbon/src'), 'Bugsnag_' => array($vendorDir . '/bugsnag/bugsnag/src'), 'Bugsnag\\BugsnagLaravel\\' => array($vendorDir . '/bugsnag/bugsnag-laravel/src'), ); diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php index 3bb0a985f..b77682cd3 100644 --- a/vendor/composer/autoload_psr4.php +++ b/vendor/composer/autoload_psr4.php @@ -10,12 +10,15 @@ return array( 'Vsmoraes\\Pdf\\' => array($vendorDir . '/vsmoraes/laravel-pdf/src'), 'Thomaswelton\\Tests\\LaravelGravatar\\' => array($vendorDir . '/thomaswelton/laravel-gravatar/tests'), 'Thomaswelton\\LaravelGravatar\\' => array($vendorDir . '/thomaswelton/laravel-gravatar/src'), + 'Symfony\\Polyfill\\Util\\' => array($vendorDir . '/symfony/polyfill-util'), + 'Symfony\\Polyfill\\Php56\\' => array($vendorDir . '/symfony/polyfill-php56'), 'Symfony\\Component\\Yaml\\' => array($vendorDir . '/symfony/yaml'), 'Symfony\\Component\\Filesystem\\' => array($vendorDir . '/symfony/filesystem'), 'Symfony\\Component\\EventDispatcher\\' => array($vendorDir . '/symfony/event-dispatcher'), 'SuperClosure\\' => array($vendorDir . '/jeremeamia/SuperClosure/src'), 'Stringy\\' => array($vendorDir . '/danielstjules/stringy/src'), 'Propaganistas\\LaravelPhone\\' => array($vendorDir . '/propaganistas/laravel-phone/src'), + 'PhpImap\\' => array($vendorDir . '/php-imap/php-imap/src/PhpImap'), 'Nicolaslopezj\\Searchable\\' => array($vendorDir . '/nicolaslopezj/searchable/src'), 'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'), 'League\\Flysystem\\' => array($vendorDir . '/league/flysystem/src'), @@ -23,5 +26,6 @@ return array( 'Illuminate\\' => array($vendorDir . '/laravel/framework/src/Illuminate'), 'Doctrine\\Instantiator\\' => array($vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator'), 'ClassPreloader\\' => array($vendorDir . '/classpreloader/classpreloader/src'), + 'Carbon\\' => array($vendorDir . '/nesbot/carbon/src/Carbon'), 'App\\' => array($baseDir . '/app'), ); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 56683ef55..05fae057f 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05 +class ComposerAutoloaderInit7157e8cc863b79dcda33b8f735f4c92d { private static $loader; @@ -19,9 +19,9 @@ class ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit7157e8cc863b79dcda33b8f735f4c92d', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit7157e8cc863b79dcda33b8f735f4c92d', 'loadClassLoader')); $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -42,14 +42,14 @@ class ComposerAutoloaderInitbe2f9f1bc8232b95340714a19f4a3f05 $includeFiles = require __DIR__ . '/autoload_files.php'; foreach ($includeFiles as $file) { - composerRequirebe2f9f1bc8232b95340714a19f4a3f05($file); + composerRequire7157e8cc863b79dcda33b8f735f4c92d($file); } return $loader; } } -function composerRequirebe2f9f1bc8232b95340714a19f4a3f05($file) +function composerRequire7157e8cc863b79dcda33b8f735f4c92d($file) { require $file; } diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index 54566387b..a361e7e2c 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -341,55 +341,6 @@ "shell" ] }, - { - "name": "nesbot/carbon", - "version": "1.20.0", - "version_normalized": "1.20.0.0", - "source": { - "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", - "reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", - "shasum": "" - }, - "require": { - "php": ">=5.3.0", - "symfony/translation": "~2.6|~3.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "time": "2015-06-25 04:19:39", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-0": { - "Carbon": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Brian Nesbitt", - "email": "brian@nesbot.com", - "homepage": "http://nesbot.com" - } - ], - "description": "A simple API extension for DateTime.", - "homepage": "http://carbon.nesbot.com", - "keywords": [ - "date", - "datetime", - "time" - ] - }, { "name": "mtdowling/cron-expression", "version": "v1.0.4", @@ -436,66 +387,6 @@ "schedule" ] }, - { - "name": "jeremeamia/SuperClosure", - "version": "2.1.0", - "version_normalized": "2.1.0.0", - "source": { - "type": "git", - "url": "https://github.com/jeremeamia/super_closure.git", - "reference": "b712f39c671e5ead60c7ebfe662545456aade833" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jeremeamia/super_closure/zipball/b712f39c671e5ead60c7ebfe662545456aade833", - "reference": "b712f39c671e5ead60c7ebfe662545456aade833", - "shasum": "" - }, - "require": { - "nikic/php-parser": "~1.0", - "php": ">=5.4" - }, - "require-dev": { - "codeclimate/php-test-reporter": "~0.1.2", - "phpunit/phpunit": "~4.0" - }, - "time": "2015-03-11 20:06:43", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "SuperClosure\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jeremy Lindblom", - "email": "jeremeamia@gmail.com", - "homepage": "https://github.com/jeremeamia", - "role": "Developer" - } - ], - "description": "Serialize Closure objects, including their context and binding", - "homepage": "https://github.com/jeremeamia/super_closure", - "keywords": [ - "closure", - "function", - "lambda", - "parser", - "serializable", - "serialize", - "tokenizer" - ] - }, { "name": "ircmaxell/password-compat", "version": "v1.0.4", @@ -540,75 +431,6 @@ "password" ] }, - { - "name": "doctrine/inflector", - "version": "v1.0.1", - "version_normalized": "1.0.1.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604", - "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "4.*" - }, - "time": "2014-12-20 21:24:13", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Doctrine\\Common\\Inflector\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Common String Manipulations with regard to casing and singular/plural rules.", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "inflection", - "pluralize", - "singularize", - "string" - ] - }, { "name": "classpreloader/classpreloader", "version": "1.4.0", @@ -671,134 +493,6 @@ "preload" ] }, - { - "name": "laravel/framework", - "version": "v5.0.33", - "version_normalized": "5.0.33.0", - "source": { - "type": "git", - "url": "https://github.com/laravel/framework.git", - "reference": "b11c8ab88245f920b30e5f30e16b141ac8d461d3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/b11c8ab88245f920b30e5f30e16b141ac8d461d3", - "reference": "b11c8ab88245f920b30e5f30e16b141ac8d461d3", - "shasum": "" - }, - "require": { - "classpreloader/classpreloader": "~1.2", - "danielstjules/stringy": "~1.8", - "doctrine/inflector": "~1.0", - "ext-mbstring": "*", - "ext-mcrypt": "*", - "ext-openssl": "*", - "ircmaxell/password-compat": "~1.0", - "jeremeamia/superclosure": "~2.0", - "league/flysystem": "~1.0", - "monolog/monolog": "~1.11", - "mtdowling/cron-expression": "~1.0", - "nesbot/carbon": "~1.0", - "php": ">=5.4.0", - "psy/psysh": "0.4.*", - "swiftmailer/swiftmailer": "~5.1", - "symfony/console": "2.6.*", - "symfony/debug": "2.6.*", - "symfony/finder": "2.6.*", - "symfony/http-foundation": "2.6.*", - "symfony/http-kernel": "2.6.*", - "symfony/process": "2.6.*", - "symfony/routing": "2.6.*", - "symfony/security-core": "2.6.*", - "symfony/translation": "2.6.*", - "symfony/var-dumper": "2.6.*", - "vlucas/phpdotenv": "~1.0" - }, - "replace": { - "illuminate/auth": "self.version", - "illuminate/bus": "self.version", - "illuminate/cache": "self.version", - "illuminate/config": "self.version", - "illuminate/console": "self.version", - "illuminate/container": "self.version", - "illuminate/contracts": "self.version", - "illuminate/cookie": "self.version", - "illuminate/database": "self.version", - "illuminate/encryption": "self.version", - "illuminate/events": "self.version", - "illuminate/exception": "self.version", - "illuminate/filesystem": "self.version", - "illuminate/foundation": "self.version", - "illuminate/hashing": "self.version", - "illuminate/http": "self.version", - "illuminate/log": "self.version", - "illuminate/mail": "self.version", - "illuminate/pagination": "self.version", - "illuminate/pipeline": "self.version", - "illuminate/queue": "self.version", - "illuminate/redis": "self.version", - "illuminate/routing": "self.version", - "illuminate/session": "self.version", - "illuminate/support": "self.version", - "illuminate/translation": "self.version", - "illuminate/validation": "self.version", - "illuminate/view": "self.version" - }, - "require-dev": { - "aws/aws-sdk-php": "~2.4", - "iron-io/iron_mq": "~1.5", - "mockery/mockery": "~0.9", - "pda/pheanstalk": "~3.0", - "phpunit/phpunit": "~4.0", - "predis/predis": "~1.0" - }, - "suggest": { - "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~2.4).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.4).", - "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers (~5.0).", - "iron-io/iron_mq": "Required to use the iron queue driver (~1.5).", - "league/flysystem-aws-s3-v2": "Required to use the Flysystem S3 driver (~1.0).", - "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", - "predis/predis": "Required to use the redis cache and queue drivers (~1.0)." - }, - "time": "2015-06-09 13:12:19", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "installation-source": "dist", - "autoload": { - "classmap": [ - "src/Illuminate/Queue/IlluminateQueueClosure.php" - ], - "files": [ - "src/Illuminate/Foundation/helpers.php", - "src/Illuminate/Support/helpers.php" - ], - "psr-4": { - "Illuminate\\": "src/Illuminate/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylorotwell@gmail.com" - } - ], - "description": "The Laravel Framework.", - "homepage": "http://laravel.com", - "keywords": [ - "framework", - "laravel" - ] - }, { "name": "neitanod/forceutf8", "version": "dev-master", @@ -886,60 +580,6 @@ } ] }, - { - "name": "sebastian/diff", - "version": "1.3.0", - "version_normalized": "1.3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3", - "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.2" - }, - "time": "2015-02-22 15:13:53", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3-dev" - } - }, - "installation-source": "dist", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Diff implementation", - "homepage": "http://www.github.com/sebastianbergmann/diff", - "keywords": [ - "diff" - ] - }, { "name": "doctrine/instantiator", "version": "1.0.5", @@ -1112,61 +752,6 @@ "template" ] }, - { - "name": "sebastian/recursion-context", - "version": "1.0.1", - "version_normalized": "1.0.1.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "994d4a811bafe801fb06dccbee797863ba2792ba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba", - "reference": "994d4a811bafe801fb06dccbee797863ba2792ba", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.4" - }, - "time": "2015-06-21 08:04:50", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context" - }, { "name": "sebastian/exporter", "version": "1.2.1", @@ -1235,58 +820,6 @@ "exporter" ] }, - { - "name": "sebastian/environment", - "version": "1.3.2", - "version_normalized": "1.3.2.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44", - "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.4" - }, - "time": "2015-08-03 06:14:51", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ] - }, { "name": "sebastian/comparator", "version": "1.2.0", @@ -1565,629 +1098,6 @@ "utils" ] }, - { - "name": "symfony/console", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Console", - "source": { - "type": "git", - "url": "https://github.com/symfony/Console.git", - "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/0e5e18ae09d3f5c06367759be940e9ed3f568359", - "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/event-dispatcher": "~2.1", - "symfony/phpunit-bridge": "~2.7", - "symfony/process": "~2.1" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/process": "" - }, - "time": "2015-07-26 09:08:40", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Console\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Console Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/finder", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Finder", - "source": { - "type": "git", - "url": "https://github.com/symfony/Finder.git", - "reference": "203a10f928ae30176deeba33512999233181dd28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Finder/zipball/203a10f928ae30176deeba33512999233181dd28", - "reference": "203a10f928ae30176deeba33512999233181dd28", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-07-09 16:02:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Finder\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Finder Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/debug", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Debug", - "source": { - "type": "git", - "url": "https://github.com/symfony/Debug.git", - "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/fca5696e0c9787722baa8f2ad6940dfd7a6a6941", - "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" - }, - "require-dev": { - "symfony/class-loader": "~2.2", - "symfony/http-foundation": "~2.1", - "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2", - "symfony/phpunit-bridge": "~2.7" - }, - "suggest": { - "symfony/http-foundation": "", - "symfony/http-kernel": "" - }, - "time": "2015-07-08 05:59:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Debug\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Debug Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/http-foundation", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/HttpFoundation", - "source": { - "type": "git", - "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", - "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/expression-language": "~2.4", - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-07-22 10:08:40", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony HttpFoundation Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/http-kernel", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/HttpKernel", - "source": { - "type": "git", - "url": "https://github.com/symfony/HttpKernel.git", - "reference": "a3f0ed713255c0400a2db38b3ed01989ef4b7322" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/a3f0ed713255c0400a2db38b3ed01989ef4b7322", - "reference": "a3f0ed713255c0400a2db38b3ed01989ef4b7322", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/debug": "~2.6,>=2.6.2", - "symfony/event-dispatcher": "~2.6,>=2.6.7", - "symfony/http-foundation": "~2.5,>=2.5.4" - }, - "require-dev": { - "symfony/browser-kit": "~2.3", - "symfony/class-loader": "~2.1", - "symfony/config": "~2.0,>=2.0.5", - "symfony/console": "~2.3", - "symfony/css-selector": "~2.0,>=2.0.5", - "symfony/dependency-injection": "~2.2", - "symfony/dom-crawler": "~2.0,>=2.0.5", - "symfony/expression-language": "~2.4", - "symfony/finder": "~2.0,>=2.0.5", - "symfony/phpunit-bridge": "~2.7", - "symfony/process": "~2.0,>=2.0.5", - "symfony/routing": "~2.2", - "symfony/stopwatch": "~2.3", - "symfony/templating": "~2.2", - "symfony/translation": "~2.0,>=2.0.5", - "symfony/var-dumper": "~2.6" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/class-loader": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "", - "symfony/var-dumper": "" - }, - "time": "2015-07-26 10:44:22", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\HttpKernel\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony HttpKernel Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/process", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Process", - "source": { - "type": "git", - "url": "https://github.com/symfony/Process.git", - "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/57f1e88bb5dafa449b83f9f265b11d52d517b3e9", - "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-06-30 16:10:16", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Process\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Process Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/routing", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Routing", - "source": { - "type": "git", - "url": "https://github.com/symfony/Routing.git", - "reference": "0a1764d41bbb54f3864808c50569ac382b44d128" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/0a1764d41bbb54f3864808c50569ac382b44d128", - "reference": "0a1764d41bbb54f3864808c50569ac382b44d128", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/common": "~2.2", - "psr/log": "~1.0", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/http-foundation": "~2.3", - "symfony/phpunit-bridge": "~2.7", - "symfony/yaml": "~2.0,>=2.0.5" - }, - "suggest": { - "doctrine/annotations": "For using the annotation loader", - "symfony/config": "For using the all-in-one router or any loader", - "symfony/expression-language": "For using expression matching", - "symfony/yaml": "For using the YAML loader" - }, - "time": "2015-07-09 16:02:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Routing\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Routing Component", - "homepage": "https://symfony.com", - "keywords": [ - "router", - "routing", - "uri", - "url" - ] - }, - { - "name": "symfony/security-core", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Security/Core", - "source": { - "type": "git", - "url": "https://github.com/symfony/security-core.git", - "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/05f58bb3814e8a853332dc448e3b7addaa87679c", - "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "ircmaxell/password-compat": "1.0.*", - "psr/log": "~1.0", - "symfony/event-dispatcher": "~2.1", - "symfony/expression-language": "~2.6", - "symfony/http-foundation": "~2.4", - "symfony/phpunit-bridge": "~2.7", - "symfony/translation": "~2.0,>=2.0.5", - "symfony/validator": "~2.5,>=2.5.5" - }, - "suggest": { - "ircmaxell/password-compat": "For using the BCrypt password encoder in PHP <5.5", - "symfony/event-dispatcher": "", - "symfony/expression-language": "For using the expression voter", - "symfony/http-foundation": "", - "symfony/validator": "For using the user password constraint" - }, - "time": "2015-07-22 10:08:40", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Security\\Core\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Security Component - Core Library", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/translation", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/Translation", - "source": { - "type": "git", - "url": "https://github.com/symfony/Translation.git", - "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/d84291215b5892834dd8ca8ee52f9cbdb8274904", - "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.3,>=2.3.12", - "symfony/intl": "~2.3", - "symfony/phpunit-bridge": "~2.7", - "symfony/yaml": "~2.2" - }, - "suggest": { - "psr/log": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "time": "2015-07-08 05:59:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Translation\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Translation Component", - "homepage": "https://symfony.com" - }, - { - "name": "symfony/var-dumper", - "version": "v2.6.11", - "version_normalized": "2.6.11.0", - "target-dir": "Symfony/Component/VarDumper", - "source": { - "type": "git", - "url": "https://github.com/symfony/var-dumper.git", - "reference": "5fba957a30161d8724aade093593cd22f815bea2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/5fba957a30161d8724aade093593cd22f815bea2", - "reference": "5fba957a30161d8724aade093593cd22f815bea2", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "suggest": { - "ext-symfony_debug": "" - }, - "time": "2015-07-01 10:03:42", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "files": [ - "Resources/functions/dump.php" - ], - "psr-0": { - "Symfony\\Component\\VarDumper\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony mechanism for exploring and dumping PHP variables", - "homepage": "https://symfony.com", - "keywords": [ - "debug", - "dump" - ] - }, { "name": "illuminate/html", "version": "v5.0.0", @@ -2272,49 +1182,6 @@ "description": "A library to read, parse, export and make subsets of different types of font files.", "homepage": "https://github.com/PhenX/php-font-lib" }, - { - "name": "dompdf/dompdf", - "version": "v0.6.1", - "version_normalized": "0.6.1.0", - "source": { - "type": "git", - "url": "https://github.com/dompdf/dompdf.git", - "reference": "cf7d8a0a27270418850cc7d7ea532159e5eeb3eb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/cf7d8a0a27270418850cc7d7ea532159e5eeb3eb", - "reference": "cf7d8a0a27270418850cc7d7ea532159e5eeb3eb", - "shasum": "" - }, - "require": { - "phenx/php-font-lib": "0.2.*" - }, - "time": "2014-03-11 01:59:52", - "type": "library", - "installation-source": "dist", - "autoload": { - "classmap": [ - "include/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL" - ], - "authors": [ - { - "name": "Fabien Ménager", - "email": "fabien.menager@gmail.com" - }, - { - "name": "Brian Sweeney", - "email": "eclecticgeek@gmail.com" - } - ], - "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", - "homepage": "https://github.com/dompdf/dompdf" - }, { "name": "vsmoraes/laravel-pdf", "version": "1.0.1", @@ -2419,165 +1286,6 @@ "twig" ] }, - { - "name": "bugsnag/bugsnag", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "source": { - "type": "git", - "url": "https://github.com/bugsnag/bugsnag-php.git", - "reference": "30af9dfc67c42bd3c392c7917b4b35d08a53da74" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/bugsnag/bugsnag-php/zipball/30af9dfc67c42bd3c392c7917b4b35d08a53da74", - "reference": "30af9dfc67c42bd3c392c7917b4b35d08a53da74", - "shasum": "" - }, - "require": { - "php": ">=5.2.0" - }, - "require-dev": { - "phpunit/phpunit": "3.7.*" - }, - "time": "2015-07-01 02:43:15", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-0": { - "Bugsnag_": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "James Smith", - "email": "notifiers@bugsnag.com", - "homepage": "https://bugsnag.com" - } - ], - "description": "Official Bugsnag notifier for PHP applications.", - "homepage": "https://github.com/bugsnag/bugsnag-php", - "keywords": [ - "bugsnag", - "errors", - "exceptions", - "logging", - "tracking" - ] - }, - { - "name": "bugsnag/bugsnag-laravel", - "version": "v1.6.1", - "version_normalized": "1.6.1.0", - "source": { - "type": "git", - "url": "https://github.com/bugsnag/bugsnag-laravel.git", - "reference": "43cbba24bfc8c476d59cb1dbc7591f4e8632c5a5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/bugsnag/bugsnag-laravel/zipball/43cbba24bfc8c476d59cb1dbc7591f4e8632c5a5", - "reference": "43cbba24bfc8c476d59cb1dbc7591f4e8632c5a5", - "shasum": "" - }, - "require": { - "bugsnag/bugsnag": ">=2.5.0", - "illuminate/support": "4.*|5.*", - "php": ">=5.3.0" - }, - "time": "2015-07-22 14:48:17", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-0": { - "Bugsnag\\BugsnagLaravel\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "James Smith", - "email": "notifiers@bugsnag.com" - } - ], - "description": "Official Bugsnag notifier for Laravel applications.", - "homepage": "https://github.com/bugsnag/bugsnag-laravel", - "keywords": [ - "bugsnag", - "errors", - "exceptions", - "laravel", - "logging", - "tracking" - ] - }, - { - "name": "filp/whoops", - "version": "1.1.7", - "version_normalized": "1.1.7.0", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "72538eeb70bbfb11964412a3d098d109efd012f7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/72538eeb70bbfb11964412a3d098d109efd012f7", - "reference": "72538eeb70bbfb11964412a3d098d109efd012f7", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "mockery/mockery": "0.9.*" - }, - "time": "2015-06-29 05:42:04", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Whoops": "src/" - }, - "classmap": [ - "src/deprecated" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://github.com/filp/whoops", - "keywords": [ - "error", - "exception", - "handling", - "library", - "silex-provider", - "whoops", - "zf2" - ] - }, { "name": "phpunit/php-token-stream", "version": "1.4.8", @@ -2629,85 +1337,6 @@ "tokenizer" ] }, - { - "name": "phpspec/phpspec", - "version": "2.3.0", - "version_normalized": "2.3.0.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/phpspec.git", - "reference": "36635a903bdeb54899d7407bc95610501fd98559" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/phpspec/zipball/36635a903bdeb54899d7407bc95610501fd98559", - "reference": "36635a903bdeb54899d7407bc95610501fd98559", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.0.1", - "php": ">=5.3.3", - "phpspec/php-diff": "~1.0.0", - "phpspec/prophecy": "~1.4", - "sebastian/exporter": "~1.0", - "symfony/console": "~2.3", - "symfony/event-dispatcher": "~2.1", - "symfony/finder": "~2.1", - "symfony/process": "^2.6", - "symfony/yaml": "~2.1" - }, - "require-dev": { - "behat/behat": "^3.0.11", - "bossa/phpspec2-expect": "~1.0", - "phpunit/phpunit": "~4.4", - "symfony/filesystem": "~2.1" - }, - "suggest": { - "phpspec/nyan-formatters": "~1.0 – Adds Nyan formatters" - }, - "time": "2015-09-07 07:07:37", - "bin": [ - "bin/phpspec" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "PhpSpec": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "homepage": "http://marcelloduarte.net/" - } - ], - "description": "Specification-oriented BDD framework for PHP 5.3+", - "homepage": "http://phpspec.net/", - "keywords": [ - "BDD", - "SpecBDD", - "TDD", - "spec", - "specification", - "testing", - "tests" - ] - }, { "name": "nikic/php-parser", "version": "v1.4.1", @@ -2755,163 +1384,6 @@ "php" ] }, - { - "name": "propaganistas/laravel-phone", - "version": "2.4.0", - "version_normalized": "2.4.0.0", - "source": { - "type": "git", - "url": "https://github.com/Propaganistas/Laravel-Phone.git", - "reference": "43b28096f88c0a3191a2cc123ca84da179e47fc7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/43b28096f88c0a3191a2cc123ca84da179e47fc7", - "reference": "43b28096f88c0a3191a2cc123ca84da179e47fc7", - "shasum": "" - }, - "require": { - "giggsey/libphonenumber-for-php": "~7.0", - "illuminate/support": "~4.0|~5.0", - "illuminate/validation": "~4.0|~5.0", - "php": ">=5.4.0" - }, - "suggest": { - "monarobase/country-list": "Adds a compatible (and fully translated) country list API." - }, - "time": "2015-09-15 14:24:09", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "Propaganistas\\LaravelPhone\\": "src/" - }, - "files": [ - "src/helpers.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Propaganistas", - "email": "Propaganistas@users.noreply.github.com" - } - ], - "description": "Adds a phone validator to Laravel based on Google's libphonenumber API.", - "keywords": [ - "laravel", - "libphonenumber", - "phone", - "validation" - ] - }, - { - "name": "php-imap/php-imap", - "version": "2.0.3", - "version_normalized": "2.0.3.0", - "source": { - "type": "git", - "url": "https://github.com/barbushin/php-imap.git", - "reference": "cc1a49a3f68090db182183c59ffbc09055d59f5b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/barbushin/php-imap/zipball/cc1a49a3f68090db182183c59ffbc09055d59f5b", - "reference": "cc1a49a3f68090db182183c59ffbc09055d59f5b", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "time": "2015-09-16 07:40:39", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-0": { - "PhpImap": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD 3-Clause" - ], - "authors": [ - { - "name": "Sergey Barbushin", - "email": "barbushin@gmail.com", - "homepage": "http://linkedin.com/in/barbushin" - } - ], - "description": "PHP class to access mailbox by POP3/IMAP/NNTP using IMAP extension", - "homepage": "https://github.com/barbushin/php-imap", - "keywords": [ - "imap", - "mail", - "php" - ] - }, - { - "name": "symfony/event-dispatcher", - "version": "v2.7.6", - "version_normalized": "2.7.6.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/87a5db5ea887763fa3a31a5471b512ff1596d9b8", - "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8", - "shasum": "" - }, - "require": { - "php": ">=5.3.9" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.0,>=2.0.5", - "symfony/dependency-injection": "~2.6", - "symfony/expression-language": "~2.6", - "symfony/stopwatch": "~2.3" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "time": "2015-10-11 09:39:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony EventDispatcher Component", - "homepage": "https://symfony.com" - }, { "name": "monolog/monolog", "version": "1.17.2", @@ -2991,245 +1463,6 @@ "psr-3" ] }, - { - "name": "league/flysystem", - "version": "1.0.15", - "version_normalized": "1.0.15.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/flysystem.git", - "reference": "31525caf9e8772683672fefd8a1ca0c0736020f4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/31525caf9e8772683672fefd8a1ca0c0736020f4", - "reference": "31525caf9e8772683672fefd8a1ca0c0736020f4", - "shasum": "" - }, - "require": { - "php": ">=5.4.0" - }, - "conflict": { - "league/flysystem-sftp": "<1.0.6" - }, - "require-dev": { - "ext-fileinfo": "*", - "mockery/mockery": "~0.9", - "phpspec/phpspec": "^2.2", - "phpspec/prophecy-phpunit": "~1.0", - "phpunit/phpunit": "~4.1" - }, - "suggest": { - "ext-fileinfo": "Required for MimeType", - "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", - "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", - "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", - "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", - "league/flysystem-copy": "Allows you to use Copy.com storage", - "league/flysystem-dropbox": "Allows you to use Dropbox storage", - "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", - "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", - "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", - "league/flysystem-webdav": "Allows you to use WebDAV storage", - "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter" - }, - "time": "2015-09-30 22:26:59", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "League\\Flysystem\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frenky.net" - } - ], - "description": "Filesystem abstraction: Many filesystems, one API.", - "keywords": [ - "Cloud Files", - "WebDAV", - "abstraction", - "aws", - "cloud", - "copy.com", - "dropbox", - "file systems", - "files", - "filesystem", - "filesystems", - "ftp", - "rackspace", - "remote", - "s3", - "sftp", - "storage" - ] - }, - { - "name": "symfony/filesystem", - "version": "v2.7.6", - "version_normalized": "2.7.6.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/filesystem.git", - "reference": "56fd6df73be859323ff97418d97edc1d756df6df" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/56fd6df73be859323ff97418d97edc1d756df6df", - "reference": "56fd6df73be859323ff97418d97edc1d756df6df", - "shasum": "" - }, - "require": { - "php": ">=5.3.9" - }, - "time": "2015-10-18 20:23:18", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "Symfony\\Component\\Filesystem\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Filesystem Component", - "homepage": "https://symfony.com" - }, - { - "name": "thomaswelton/laravel-gravatar", - "version": "1.1.0", - "version_normalized": "1.1.0.0", - "source": { - "type": "git", - "url": "https://github.com/thomaswelton/laravel-gravatar.git", - "reference": "e01b473a4e89c8ebb203d0616e12894f5dd84c45" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thomaswelton/laravel-gravatar/zipball/e01b473a4e89c8ebb203d0616e12894f5dd84c45", - "reference": "e01b473a4e89c8ebb203d0616e12894f5dd84c45", - "shasum": "" - }, - "require": { - "illuminate/support": "~5.0", - "php": ">=5.4.0", - "thomaswelton/gravatarlib": "0.1.x" - }, - "require-dev": { - "mockery/mockery": "0.9.*", - "phpunit/phpunit": "4.8.*" - }, - "time": "2015-10-13 14:42:42", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "Thomaswelton\\LaravelGravatar\\": "src/", - "Thomaswelton\\Tests\\LaravelGravatar\\": "tests/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "ThomasWelton", - "email": "thomaswelton@me.com", - "role": "Developer" - }, - { - "name": "Antoine Augusti", - "email": "antoine.augusti@gmail.com", - "role": "Developer" - } - ], - "description": "Laravel 5 Gravatar helper", - "homepage": "https://github.com/thomaswelton/laravel-gravatar", - "keywords": [ - "gravatar", - "laravel", - "laravel5" - ] - }, - { - "name": "nicolaslopezj/searchable", - "version": "1.6.1", - "version_normalized": "1.6.1.0", - "source": { - "type": "git", - "url": "https://github.com/nicolaslopezj/searchable.git", - "reference": "8d97d2c97dc17bc0795220b11b9ce0769d7d9173" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nicolaslopezj/searchable/zipball/8d97d2c97dc17bc0795220b11b9ce0769d7d9173", - "reference": "8d97d2c97dc17bc0795220b11b9ce0769d7d9173", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "illuminate/database": "4.2.x|~5.0", - "php": ">=5.4.0" - }, - "time": "2015-10-28 02:46:28", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "Nicolaslopezj\\Searchable\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Lopez", - "email": "nicolaslopezj@me.com" - } - ], - "description": "Eloquent model search trait.", - "keywords": [ - "database", - "eloquent", - "laravel", - "model", - "search", - "searchable" - ] - }, { "name": "sebastian/global-state", "version": "1.1.1", @@ -3283,54 +1516,6 @@ "global state" ] }, - { - "name": "symfony/yaml", - "version": "v2.7.6", - "version_normalized": "2.7.6.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "eca9019c88fbe250164affd107bc8057771f3f4d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/eca9019c88fbe250164affd107bc8057771f3f4d", - "reference": "eca9019c88fbe250164affd107bc8057771f3f4d", - "shasum": "" - }, - "require": { - "php": ">=5.3.9" - }, - "time": "2015-10-11 09:39:48", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "Symfony\\Component\\Yaml\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Yaml Component", - "homepage": "https://symfony.com" - }, { "name": "phpunit/phpunit-mock-objects", "version": "2.3.8", @@ -3454,52 +1639,308 @@ ] }, { - "name": "phpunit/phpunit", - "version": "4.8.16", - "version_normalized": "4.8.16.0", + "name": "symfony/yaml", + "version": "v3.0.1", + "version_normalized": "3.0.1.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "625f8c345606ed0f3a141dfb88f4116f0e22978e" + "url": "https://github.com/symfony/yaml.git", + "reference": "3df409958a646dad2bc5046c3fb671ee24a1a691" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/625f8c345606ed0f3a141dfb88f4116f0e22978e", - "reference": "625f8c345606ed0f3a141dfb88f4116f0e22978e", + "url": "https://api.github.com/repos/symfony/yaml/zipball/3df409958a646dad2bc5046c3fb671ee24a1a691", + "reference": "3df409958a646dad2bc5046c3fb671ee24a1a691", "shasum": "" }, "require": { - "ext-dom": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-reflection": "*", - "ext-spl": "*", - "php": ">=5.3.3", - "phpspec/prophecy": "^1.3.1", - "phpunit/php-code-coverage": "~2.1", - "phpunit/php-file-iterator": "~1.4", - "phpunit/php-text-template": "~1.2", - "phpunit/php-timer": ">=1.0.6", - "phpunit/phpunit-mock-objects": "~2.3", - "sebastian/comparator": "~1.1", - "sebastian/diff": "~1.2", - "sebastian/environment": "~1.3", - "sebastian/exporter": "~1.2", - "sebastian/global-state": "~1.0", - "sebastian/version": "~1.0", - "symfony/yaml": "~2.1|~3.0" + "php": ">=5.5.9" }, - "suggest": { - "phpunit/php-invoker": "~1.1" - }, - "time": "2015-10-23 06:48:33", - "bin": [ - "phpunit" - ], + "time": "2015-12-26 13:39:53", "type": "library", "extra": { "branch-alias": { - "dev-master": "4.8.x-dev" + "dev-master": "3.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Yaml Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/finder", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Finder", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "203a10f928ae30176deeba33512999233181dd28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/203a10f928ae30176deeba33512999233181dd28", + "reference": "203a10f928ae30176deeba33512999233181dd28", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-07-09 16:02:48", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Finder\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Finder Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/process", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Process", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/57f1e88bb5dafa449b83f9f265b11d52d517b3e9", + "reference": "57f1e88bb5dafa449b83f9f265b11d52d517b3e9", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-06-30 16:10:16", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Process\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Process Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/event-dispatcher", + "version": "v2.8.1", + "version_normalized": "2.8.1.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "a5eb815363c0388e83247e7e9853e5dbc14999cc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/a5eb815363c0388e83247e7e9853e5dbc14999cc", + "reference": "a5eb815363c0388e83247e7e9853e5dbc14999cc", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.0,>=2.0.5|~3.0.0", + "symfony/dependency-injection": "~2.6|~3.0.0", + "symfony/expression-language": "~2.6|~3.0.0", + "symfony/stopwatch": "~2.3|~3.0.0" + }, + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "time": "2015-10-30 20:15:42", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.8-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony EventDispatcher Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/console", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Console", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/0e5e18ae09d3f5c06367759be940e9ed3f568359", + "reference": "0e5e18ae09d3f5c06367759be940e9ed3f568359", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/event-dispatcher": "~2.1", + "symfony/phpunit-bridge": "~2.7", + "symfony/process": "~2.1" + }, + "suggest": { + "psr/log": "For using the console logger", + "symfony/event-dispatcher": "", + "symfony/process": "" + }, + "time": "2015-07-26 09:08:40", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Console\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Console Component", + "homepage": "https://symfony.com" + }, + { + "name": "sebastian/recursion-context", + "version": "1.0.2", + "version_normalized": "1.0.2.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "913401df809e99e4f47b27cdd781f4a258d58791" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791", + "reference": "913401df809e99e4f47b27cdd781f4a258d58791", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "~4.4" + }, + "time": "2015-11-11 19:50:13", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" } }, "installation-source": "dist", @@ -3513,33 +1954,1004 @@ "BSD-3-Clause" ], "authors": [ + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, { "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "email": "sebastian@phpunit.de" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" } ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", + "description": "Provides functionality to recursively process PHP variables", + "homepage": "http://www.github.com/sebastianbergmann/recursion-context" + }, + { + "name": "sebastian/diff", + "version": "1.4.1", + "version_normalized": "1.4.1.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e", + "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "~4.8" + }, + "time": "2015-12-08 07:14:41", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", "keywords": [ - "phpunit", + "diff" + ] + }, + { + "name": "phpspec/phpspec", + "version": "2.4.0", + "version_normalized": "2.4.0.0", + "source": { + "type": "git", + "url": "https://github.com/phpspec/phpspec.git", + "reference": "1d3938e6d9ffb1bd4805ea8ddac62ea48767f358" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/phpspec/zipball/1d3938e6d9ffb1bd4805ea8ddac62ea48767f358", + "reference": "1d3938e6d9ffb1bd4805ea8ddac62ea48767f358", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.0.1", + "ext-tokenizer": "*", + "php": ">=5.3.3", + "phpspec/php-diff": "~1.0.0", + "phpspec/prophecy": "~1.4", + "sebastian/exporter": "~1.0", + "symfony/console": "~2.3|~3.0", + "symfony/event-dispatcher": "~2.1|~3.0", + "symfony/finder": "~2.1|~3.0", + "symfony/process": "^2.6|~3.0", + "symfony/yaml": "~2.1|~3.0" + }, + "require-dev": { + "behat/behat": "^3.0.11", + "bossa/phpspec2-expect": "~1.0", + "phpunit/phpunit": "~4.4", + "symfony/filesystem": "~2.1|~3.0" + }, + "suggest": { + "phpspec/nyan-formatters": "~1.0 – Adds Nyan formatters" + }, + "time": "2015-11-29 02:03:49", + "bin": [ + "bin/phpspec" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "PhpSpec": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + }, + { + "name": "Marcello Duarte", + "homepage": "http://marcelloduarte.net/" + } + ], + "description": "Specification-oriented BDD framework for PHP 5.3+", + "homepage": "http://phpspec.net/", + "keywords": [ + "BDD", + "SpecBDD", + "TDD", + "spec", + "specification", "testing", - "xunit" + "tests" + ] + }, + { + "name": "doctrine/inflector", + "version": "v1.1.0", + "version_normalized": "1.1.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "90b2128806bfde671b6952ab8bea493942c1fdae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/90b2128806bfde671b6952ab8bea493942c1fdae", + "reference": "90b2128806bfde671b6952ab8bea493942c1fdae", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "4.*" + }, + "time": "2015-11-06 14:35:42", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Doctrine\\Common\\Inflector\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Common String Manipulations with regard to casing and singular/plural rules.", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "inflection", + "pluralize", + "singularize", + "string" + ] + }, + { + "name": "symfony/polyfill-util", + "version": "v1.0.1", + "version_normalized": "1.0.1.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-util.git", + "reference": "4271c55cbc0a77b2641f861b978123e46b3da969" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/4271c55cbc0a77b2641f861b978123e46b3da969", + "reference": "4271c55cbc0a77b2641f861b978123e46b3da969", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "time": "2015-11-04 20:28:58", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Util\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony utilities for portability of PHP codes", + "homepage": "https://symfony.com", + "keywords": [ + "compat", + "compatibility", + "polyfill", + "shim" + ] + }, + { + "name": "symfony/polyfill-php56", + "version": "v1.0.1", + "version_normalized": "1.0.1.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php56.git", + "reference": "e2e77609a9e2328eb370fbb0e0d8b2000ebb488f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/e2e77609a9e2328eb370fbb0e0d8b2000ebb488f", + "reference": "e2e77609a9e2328eb370fbb0e0d8b2000ebb488f", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "symfony/polyfill-util": "~1.0" + }, + "time": "2015-12-18 15:10:25", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php56\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 5.6+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ] + }, + { + "name": "jeremeamia/SuperClosure", + "version": "2.2.0", + "version_normalized": "2.2.0.0", + "source": { + "type": "git", + "url": "https://github.com/jeremeamia/super_closure.git", + "reference": "29a88be2a4846d27c1613aed0c9071dfad7b5938" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jeremeamia/super_closure/zipball/29a88be2a4846d27c1613aed0c9071dfad7b5938", + "reference": "29a88be2a4846d27c1613aed0c9071dfad7b5938", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^1.2|^2.0", + "php": ">=5.4", + "symfony/polyfill-php56": "^1.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.0|^5.0" + }, + "time": "2015-12-05 17:17:57", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "SuperClosure\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia", + "role": "Developer" + } + ], + "description": "Serialize Closure objects, including their context and binding", + "homepage": "https://github.com/jeremeamia/super_closure", + "keywords": [ + "closure", + "function", + "lambda", + "parser", + "serializable", + "serialize", + "tokenizer" + ] + }, + { + "name": "league/flysystem", + "version": "1.0.16", + "version_normalized": "1.0.16.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem.git", + "reference": "183e1a610664baf6dcd6fceda415baf43cbdc031" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/183e1a610664baf6dcd6fceda415baf43cbdc031", + "reference": "183e1a610664baf6dcd6fceda415baf43cbdc031", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "conflict": { + "league/flysystem-sftp": "<1.0.6" + }, + "require-dev": { + "ext-fileinfo": "*", + "mockery/mockery": "~0.9", + "phpspec/phpspec": "^2.2", + "phpspec/prophecy-phpunit": "~1.0", + "phpunit/phpunit": "~4.8" + }, + "suggest": { + "ext-fileinfo": "Required for MimeType", + "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", + "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", + "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", + "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", + "league/flysystem-copy": "Allows you to use Copy.com storage", + "league/flysystem-dropbox": "Allows you to use Dropbox storage", + "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", + "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", + "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", + "league/flysystem-webdav": "Allows you to use WebDAV storage", + "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter" + }, + "time": "2015-12-19 20:16:43", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "League\\Flysystem\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frenky.net" + } + ], + "description": "Filesystem abstraction: Many filesystems, one API.", + "keywords": [ + "Cloud Files", + "WebDAV", + "abstraction", + "aws", + "cloud", + "copy.com", + "dropbox", + "file systems", + "files", + "filesystem", + "filesystems", + "ftp", + "rackspace", + "remote", + "s3", + "sftp", + "storage" + ] + }, + { + "name": "symfony/translation", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Translation", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/d84291215b5892834dd8ca8ee52f9cbdb8274904", + "reference": "d84291215b5892834dd8ca8ee52f9cbdb8274904", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.3,>=2.3.12", + "symfony/intl": "~2.3", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.2" + }, + "suggest": { + "psr/log": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "time": "2015-07-08 05:59:48", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Translation Component", + "homepage": "https://symfony.com" + }, + { + "name": "nesbot/carbon", + "version": "1.21.0", + "version_normalized": "1.21.0.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "7b08ec6f75791e130012f206e3f7b0e76e18e3d7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7b08ec6f75791e130012f206e3f7b0e76e18e3d7", + "reference": "7b08ec6f75791e130012f206e3f7b0e76e18e3d7", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "symfony/translation": "~2.6|~3.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0|~5.0" + }, + "time": "2015-11-04 20:07:17", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brian Nesbitt", + "email": "brian@nesbot.com", + "homepage": "http://nesbot.com" + } + ], + "description": "A simple API extension for DateTime.", + "homepage": "http://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ] + }, + { + "name": "symfony/debug", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Debug", + "source": { + "type": "git", + "url": "https://github.com/symfony/debug.git", + "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/debug/zipball/fca5696e0c9787722baa8f2ad6940dfd7a6a6941", + "reference": "fca5696e0c9787722baa8f2ad6940dfd7a6a6941", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "psr/log": "~1.0" + }, + "conflict": { + "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" + }, + "require-dev": { + "symfony/class-loader": "~2.2", + "symfony/http-foundation": "~2.1", + "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2", + "symfony/phpunit-bridge": "~2.7" + }, + "suggest": { + "symfony/http-foundation": "", + "symfony/http-kernel": "" + }, + "time": "2015-07-08 05:59:48", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Debug\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Debug Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/http-foundation", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/HttpFoundation", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", + "reference": "e8fd1b73ac1c3de1f76c73801ddf1a8ecb1c1c9c", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/expression-language": "~2.4", + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-07-22 10:08:40", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "classmap": [ + "Symfony/Component/HttpFoundation/Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony HttpFoundation Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/http-kernel", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/HttpKernel", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "498866a8ca0bcbcd3f3824b1520fa568ff7ca3b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/498866a8ca0bcbcd3f3824b1520fa568ff7ca3b6", + "reference": "498866a8ca0bcbcd3f3824b1520fa568ff7ca3b6", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "psr/log": "~1.0", + "symfony/debug": "~2.6,>=2.6.2", + "symfony/event-dispatcher": "~2.6,>=2.6.7", + "symfony/http-foundation": "~2.5,>=2.5.4" + }, + "require-dev": { + "symfony/browser-kit": "~2.3", + "symfony/class-loader": "~2.1", + "symfony/config": "~2.0,>=2.0.5", + "symfony/console": "~2.3", + "symfony/css-selector": "~2.0,>=2.0.5", + "symfony/dependency-injection": "~2.2", + "symfony/dom-crawler": "~2.0,>=2.0.5", + "symfony/expression-language": "~2.4", + "symfony/finder": "~2.0,>=2.0.5", + "symfony/phpunit-bridge": "~2.7", + "symfony/process": "~2.0,>=2.0.5", + "symfony/routing": "~2.2", + "symfony/stopwatch": "~2.3", + "symfony/templating": "~2.2", + "symfony/translation": "~2.0,>=2.0.5", + "symfony/var-dumper": "~2.6" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/class-loader": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "", + "symfony/finder": "", + "symfony/var-dumper": "" + }, + "time": "2015-11-23 11:37:53", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\HttpKernel\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony HttpKernel Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/routing", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Routing", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "0a1764d41bbb54f3864808c50569ac382b44d128" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/0a1764d41bbb54f3864808c50569ac382b44d128", + "reference": "0a1764d41bbb54f3864808c50569ac382b44d128", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "doctrine/annotations": "~1.0", + "doctrine/common": "~2.2", + "psr/log": "~1.0", + "symfony/config": "~2.2", + "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.3", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.0,>=2.0.5" + }, + "suggest": { + "doctrine/annotations": "For using the annotation loader", + "symfony/config": "For using the all-in-one router or any loader", + "symfony/expression-language": "For using expression matching", + "symfony/yaml": "For using the YAML loader" + }, + "time": "2015-07-09 16:02:48", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Routing\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Routing Component", + "homepage": "https://symfony.com", + "keywords": [ + "router", + "routing", + "uri", + "url" + ] + }, + { + "name": "symfony/security-core", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/Security/Core", + "source": { + "type": "git", + "url": "https://github.com/symfony/security-core.git", + "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/security-core/zipball/05f58bb3814e8a853332dc448e3b7addaa87679c", + "reference": "05f58bb3814e8a853332dc448e3b7addaa87679c", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "ircmaxell/password-compat": "1.0.*", + "psr/log": "~1.0", + "symfony/event-dispatcher": "~2.1", + "symfony/expression-language": "~2.6", + "symfony/http-foundation": "~2.4", + "symfony/phpunit-bridge": "~2.7", + "symfony/translation": "~2.0,>=2.0.5", + "symfony/validator": "~2.5,>=2.5.5" + }, + "suggest": { + "ircmaxell/password-compat": "For using the BCrypt password encoder in PHP <5.5", + "symfony/event-dispatcher": "", + "symfony/expression-language": "For using the expression voter", + "symfony/http-foundation": "", + "symfony/validator": "For using the user password constraint" + }, + "time": "2015-07-22 10:08:40", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Security\\Core\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Security Component - Core Library", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/var-dumper", + "version": "v2.6.12", + "version_normalized": "2.6.12.0", + "target-dir": "Symfony/Component/VarDumper", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "5fba957a30161d8724aade093593cd22f815bea2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/5fba957a30161d8724aade093593cd22f815bea2", + "reference": "5fba957a30161d8724aade093593cd22f815bea2", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "suggest": { + "ext-symfony_debug": "" + }, + "time": "2015-07-01 10:03:42", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-0": { + "Symfony\\Component\\VarDumper\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony mechanism for exploring and dumping PHP variables", + "homepage": "https://symfony.com", + "keywords": [ + "debug", + "dump" ] }, { "name": "giggsey/libphonenumber-for-php", - "version": "7.1.0", - "version_normalized": "7.1.0.0", + "version": "7.2.2", + "version_normalized": "7.2.2.0", "source": { "type": "git", "url": "https://github.com/giggsey/libphonenumber-for-php.git", - "reference": "75277038380dbeba6c915749add6c0d38edd3719" + "reference": "8b64ea2ecd4080f9ce75cf688dda0c4afedb6b64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/giggsey/libphonenumber-for-php/zipball/75277038380dbeba6c915749add6c0d38edd3719", - "reference": "75277038380dbeba6c915749add6c0d38edd3719", + "url": "https://api.github.com/repos/giggsey/libphonenumber-for-php/zipball/8b64ea2ecd4080f9ce75cf688dda0c4afedb6b64", + "reference": "8b64ea2ecd4080f9ce75cf688dda0c4afedb6b64", "shasum": "" }, "require": { @@ -3557,7 +2969,7 @@ "suggest": { "ext-intl": "To use the geocoder and carrier mapping" }, - "time": "2015-10-08 14:46:18", + "time": "2015-12-15 17:24:20", "type": "library", "extra": { "branch-alias": { @@ -3592,6 +3004,720 @@ "validation" ] }, + { + "name": "symfony/filesystem", + "version": "v2.8.1", + "version_normalized": "2.8.1.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "a7ad724530a764d70c168d321ac226ba3d2f10fc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/a7ad724530a764d70c168d321ac226ba3d2f10fc", + "reference": "a7ad724530a764d70c168d321ac226ba3d2f10fc", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "time": "2015-12-22 10:25:57", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.8-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Filesystem Component", + "homepage": "https://symfony.com" + }, + { + "name": "laravel/framework", + "version": "v5.0.34", + "version_normalized": "5.0.34.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/framework.git", + "reference": "98dbaafe8e2781f86b1b858f8610be0d7318b153" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/framework/zipball/98dbaafe8e2781f86b1b858f8610be0d7318b153", + "reference": "98dbaafe8e2781f86b1b858f8610be0d7318b153", + "shasum": "" + }, + "require": { + "classpreloader/classpreloader": "~1.2", + "danielstjules/stringy": "~1.8", + "doctrine/inflector": "~1.0", + "ext-mbstring": "*", + "ext-mcrypt": "*", + "ext-openssl": "*", + "ircmaxell/password-compat": "~1.0", + "jeremeamia/superclosure": "~2.0", + "league/flysystem": "~1.0", + "monolog/monolog": "~1.11", + "mtdowling/cron-expression": "~1.0", + "nesbot/carbon": "~1.0", + "php": ">=5.4.0", + "psy/psysh": "0.4.*", + "swiftmailer/swiftmailer": "~5.1", + "symfony/console": "2.6.*", + "symfony/debug": "2.6.*", + "symfony/finder": "2.6.*", + "symfony/http-foundation": "2.6.*", + "symfony/http-kernel": "2.6.*", + "symfony/process": "2.6.*", + "symfony/routing": "2.6.*", + "symfony/security-core": "2.6.*", + "symfony/translation": "2.6.*", + "symfony/var-dumper": "2.6.*", + "vlucas/phpdotenv": "~1.0" + }, + "replace": { + "illuminate/auth": "self.version", + "illuminate/bus": "self.version", + "illuminate/cache": "self.version", + "illuminate/config": "self.version", + "illuminate/console": "self.version", + "illuminate/container": "self.version", + "illuminate/contracts": "self.version", + "illuminate/cookie": "self.version", + "illuminate/database": "self.version", + "illuminate/encryption": "self.version", + "illuminate/events": "self.version", + "illuminate/exception": "self.version", + "illuminate/filesystem": "self.version", + "illuminate/foundation": "self.version", + "illuminate/hashing": "self.version", + "illuminate/http": "self.version", + "illuminate/log": "self.version", + "illuminate/mail": "self.version", + "illuminate/pagination": "self.version", + "illuminate/pipeline": "self.version", + "illuminate/queue": "self.version", + "illuminate/redis": "self.version", + "illuminate/routing": "self.version", + "illuminate/session": "self.version", + "illuminate/support": "self.version", + "illuminate/translation": "self.version", + "illuminate/validation": "self.version", + "illuminate/view": "self.version" + }, + "require-dev": { + "aws/aws-sdk-php": "~2.4", + "iron-io/iron_mq": "~1.5", + "mockery/mockery": "~0.9", + "pda/pheanstalk": "~3.0", + "phpunit/phpunit": "~4.0", + "predis/predis": "~1.0" + }, + "suggest": { + "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~2.4).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.4).", + "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers (~5.0).", + "iron-io/iron_mq": "Required to use the iron queue driver (~1.5).", + "league/flysystem-aws-s3-v2": "Required to use the Flysystem S3 driver (~1.0).", + "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", + "predis/predis": "Required to use the redis cache and queue drivers (~1.0)." + }, + "time": "2015-12-04 23:20:49", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/Illuminate/Queue/IlluminateQueueClosure.php" + ], + "files": [ + "src/Illuminate/Foundation/helpers.php", + "src/Illuminate/Support/helpers.php" + ], + "psr-4": { + "Illuminate\\": "src/Illuminate/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylorotwell@gmail.com" + } + ], + "description": "The Laravel Framework.", + "homepage": "http://laravel.com", + "keywords": [ + "framework", + "laravel" + ] + }, + { + "name": "propaganistas/laravel-phone", + "version": "2.5.0", + "version_normalized": "2.5.0.0", + "source": { + "type": "git", + "url": "https://github.com/Propaganistas/Laravel-Phone.git", + "reference": "c9d75872e1ea62de99d0a43be20fe153ca9f9422" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Propaganistas/Laravel-Phone/zipball/c9d75872e1ea62de99d0a43be20fe153ca9f9422", + "reference": "c9d75872e1ea62de99d0a43be20fe153ca9f9422", + "shasum": "" + }, + "require": { + "giggsey/libphonenumber-for-php": "~7.0", + "illuminate/support": "~4.0|~5.0", + "illuminate/validation": "~4.0|~5.0", + "php": ">=5.4.0" + }, + "require-dev": { + "orchestra/testbench": "^3.1" + }, + "suggest": { + "monarobase/country-list": "Adds a compatible (and fully translated) country list API." + }, + "time": "2015-12-19 11:34:59", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Propaganistas\\LaravelPhone\\": "src/" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Propaganistas", + "email": "Propaganistas@users.noreply.github.com" + } + ], + "description": "Adds a phone validator to Laravel based on Google's libphonenumber API.", + "keywords": [ + "laravel", + "libphonenumber", + "phone", + "validation" + ] + }, + { + "name": "bugsnag/bugsnag", + "version": "v2.6.0", + "version_normalized": "2.6.0.0", + "source": { + "type": "git", + "url": "https://github.com/bugsnag/bugsnag-php.git", + "reference": "8c728a3b0a4fd072a3f86904a1a126b5fb7f7d10" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bugsnag/bugsnag-php/zipball/8c728a3b0a4fd072a3f86904a1a126b5fb7f7d10", + "reference": "8c728a3b0a4fd072a3f86904a1a126b5fb7f7d10", + "shasum": "" + }, + "require": { + "php": ">=5.2.0" + }, + "require-dev": { + "phpunit/phpunit": "3.7.*" + }, + "time": "2015-12-23 22:53:05", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-0": { + "Bugsnag_": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "James Smith", + "email": "notifiers@bugsnag.com", + "homepage": "https://bugsnag.com" + } + ], + "description": "Official Bugsnag notifier for PHP applications.", + "homepage": "https://github.com/bugsnag/bugsnag-php", + "keywords": [ + "bugsnag", + "errors", + "exceptions", + "logging", + "tracking" + ] + }, + { + "name": "bugsnag/bugsnag-laravel", + "version": "v1.6.2", + "version_normalized": "1.6.2.0", + "source": { + "type": "git", + "url": "https://github.com/bugsnag/bugsnag-laravel.git", + "reference": "a1123dfa036a3ae69814d2d53cea22a74b8d7831" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bugsnag/bugsnag-laravel/zipball/a1123dfa036a3ae69814d2d53cea22a74b8d7831", + "reference": "a1123dfa036a3ae69814d2d53cea22a74b8d7831", + "shasum": "" + }, + "require": { + "bugsnag/bugsnag": ">=2.5.0", + "illuminate/support": "4.*|5.*", + "php": ">=5.3.0" + }, + "time": "2015-12-08 19:11:24", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-0": { + "Bugsnag\\BugsnagLaravel\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "James Smith", + "email": "notifiers@bugsnag.com" + } + ], + "description": "Official Bugsnag notifier for Laravel applications.", + "homepage": "https://github.com/bugsnag/bugsnag-laravel", + "keywords": [ + "bugsnag", + "errors", + "exceptions", + "laravel", + "logging", + "tracking" + ] + }, + { + "name": "filp/whoops", + "version": "1.1.10", + "version_normalized": "1.1.10.0", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "72538eeb70bbfb11964412a3d098d109efd012f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/72538eeb70bbfb11964412a3d098d109efd012f7", + "reference": "72538eeb70bbfb11964412a3d098d109efd012f7", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "mockery/mockery": "0.9.*" + }, + "time": "2015-06-29 05:42:04", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Whoops": "src/" + }, + "classmap": [ + "src/deprecated" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://github.com/filp/whoops", + "keywords": [ + "error", + "exception", + "handling", + "library", + "silex-provider", + "whoops", + "zf2" + ] + }, + { + "name": "thomaswelton/laravel-gravatar", + "version": "1.1.1", + "version_normalized": "1.1.1.0", + "source": { + "type": "git", + "url": "https://github.com/thomaswelton/laravel-gravatar.git", + "reference": "b9eeb9c23123cc8547973e0ca33dc5898bb768b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thomaswelton/laravel-gravatar/zipball/b9eeb9c23123cc8547973e0ca33dc5898bb768b8", + "reference": "b9eeb9c23123cc8547973e0ca33dc5898bb768b8", + "shasum": "" + }, + "require": { + "illuminate/support": "~5.0", + "php": ">=5.4.0", + "thomaswelton/gravatarlib": "0.1.x" + }, + "require-dev": { + "mockery/mockery": "0.9.*", + "phpunit/phpunit": "4.8.*" + }, + "time": "2015-12-19 15:44:13", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Thomaswelton\\LaravelGravatar\\": "src/", + "Thomaswelton\\Tests\\LaravelGravatar\\": "tests/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "ThomasWelton", + "email": "thomaswelton@me.com", + "role": "Developer" + }, + { + "name": "Antoine Augusti", + "email": "antoine.augusti@gmail.com", + "role": "Developer" + } + ], + "description": "Laravel 5 Gravatar helper", + "homepage": "https://github.com/thomaswelton/laravel-gravatar", + "keywords": [ + "gravatar", + "laravel", + "laravel5" + ] + }, + { + "name": "php-imap/php-imap", + "version": "2.0.6", + "version_normalized": "2.0.6.0", + "source": { + "type": "git", + "url": "https://github.com/barbushin/php-imap.git", + "reference": "3174b23aaf45cc570972209f366c384f257399a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/barbushin/php-imap/zipball/3174b23aaf45cc570972209f366c384f257399a8", + "reference": "3174b23aaf45cc570972209f366c384f257399a8", + "shasum": "" + }, + "require": { + "ext-imap": "*", + "php": ">=5.3.0" + }, + "time": "2015-12-14 02:46:12", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "PhpImap\\": "src/PhpImap/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD 3-Clause" + ], + "authors": [ + { + "name": "Sergey Barbushin", + "email": "barbushin@gmail.com", + "homepage": "http://linkedin.com/in/barbushin" + } + ], + "description": "PHP class to access mailbox by POP3/IMAP/NNTP using IMAP extension", + "homepage": "https://github.com/barbushin/php-imap", + "keywords": [ + "imap", + "mail", + "php" + ] + }, + { + "name": "nicolaslopezj/searchable", + "version": "1.7.0", + "version_normalized": "1.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/nicolaslopezj/searchable.git", + "reference": "2d264e493a9a93396b9cfed0290802d5aab8f921" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nicolaslopezj/searchable/zipball/2d264e493a9a93396b9cfed0290802d5aab8f921", + "reference": "2d264e493a9a93396b9cfed0290802d5aab8f921", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "illuminate/database": "4.2.x|~5.0", + "php": ">=5.4.0" + }, + "time": "2015-12-01 17:37:59", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Nicolaslopezj\\Searchable\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Lopez", + "email": "nicolaslopezj@me.com" + } + ], + "description": "Eloquent model search trait.", + "keywords": [ + "database", + "eloquent", + "laravel", + "model", + "search", + "searchable" + ] + }, + { + "name": "sebastian/environment", + "version": "1.3.3", + "version_normalized": "1.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "6e7133793a8e5a5714a551a8324337374be209df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6e7133793a8e5a5714a551a8324337374be209df", + "reference": "6e7133793a8e5a5714a551a8324337374be209df", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "~4.4" + }, + "time": "2015-12-02 08:37:27", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.3.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ] + }, + { + "name": "phpunit/phpunit", + "version": "4.8.21", + "version_normalized": "4.8.21.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "ea76b17bced0500a28098626b84eda12dbcf119c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ea76b17bced0500a28098626b84eda12dbcf119c", + "reference": "ea76b17bced0500a28098626b84eda12dbcf119c", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-json": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=5.3.3", + "phpspec/prophecy": "^1.3.1", + "phpunit/php-code-coverage": "~2.1", + "phpunit/php-file-iterator": "~1.4", + "phpunit/php-text-template": "~1.2", + "phpunit/php-timer": ">=1.0.6", + "phpunit/phpunit-mock-objects": "~2.3", + "sebastian/comparator": "~1.1", + "sebastian/diff": "~1.2", + "sebastian/environment": "~1.3", + "sebastian/exporter": "~1.2", + "sebastian/global-state": "~1.0", + "sebastian/version": "~1.0", + "symfony/yaml": "~2.1|~3.0" + }, + "suggest": { + "phpunit/php-invoker": "~1.1" + }, + "time": "2015-12-12 07:45:58", + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.8.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "https://phpunit.de/", + "keywords": [ + "phpunit", + "testing", + "xunit" + ] + }, + { + "name": "dompdf/dompdf", + "version": "v0.6.2", + "version_normalized": "0.6.2.0", + "source": { + "type": "git", + "url": "https://github.com/dompdf/dompdf.git", + "reference": "cc06008f75262510ee135b8cbb14e333a309f651" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/cc06008f75262510ee135b8cbb14e333a309f651", + "reference": "cc06008f75262510ee135b8cbb14e333a309f651", + "shasum": "" + }, + "require": { + "phenx/php-font-lib": "0.2.*" + }, + "time": "2015-12-07 04:07:13", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "include/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL" + ], + "authors": [ + { + "name": "Fabien Ménager", + "email": "fabien.menager@gmail.com" + }, + { + "name": "Brian Sweeney", + "email": "eclecticgeek@gmail.com" + } + ], + "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", + "homepage": "https://github.com/dompdf/dompdf" + }, { "name": "chumper/datatable", "version": "dev-develop", @@ -3599,12 +3725,12 @@ "source": { "type": "git", "url": "https://github.com/Chumper/Datatable.git", - "reference": "b44834db3d4e560d4368c1a04248b9e6a422ccff" + "reference": "546e8768d7987b0d9a8501e67432309349ef5504" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Chumper/Datatable/zipball/b44834db3d4e560d4368c1a04248b9e6a422ccff", - "reference": "b44834db3d4e560d4368c1a04248b9e6a422ccff", + "url": "https://api.github.com/repos/Chumper/Datatable/zipball/546e8768d7987b0d9a8501e67432309349ef5504", + "reference": "546e8768d7987b0d9a8501e67432309349ef5504", "shasum": "" }, "require": { @@ -3618,7 +3744,7 @@ "orchestra/testbench": "3.1.*", "phpunit/phpunit": "3.7.*" }, - "time": "2015-10-26 01:21:31", + "time": "2015-11-23 21:33:41", "type": "library", "installation-source": "dist", "autoload": { @@ -3645,6 +3771,59 @@ "datatables", "jquery", "laravel" + ], + "abandoned": "OpenSkill/Datatable" + }, + { + "name": "chumper/zipper", + "version": "0.6.1", + "version_normalized": "0.6.1.0", + "source": { + "type": "git", + "url": "https://github.com/Chumper/Zipper.git", + "reference": "313e364259398557bdcc2f68e6ff20d71aaea811" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Chumper/Zipper/zipball/313e364259398557bdcc2f68e6ff20d71aaea811", + "reference": "313e364259398557bdcc2f68e6ff20d71aaea811", + "shasum": "" + }, + "require": { + "illuminate/filesystem": "5.x", + "illuminate/support": "5.x", + "php": ">=5.3.0" + }, + "require-dev": { + "mockery/mockery": "dev-master", + "phpunit/phpunit": "3.7.*" + }, + "time": "2015-02-16 11:38:11", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-0": { + "Chumper\\Zipper": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache2" + ], + "authors": [ + { + "name": "Nils Plaschke", + "email": "github@nilsplaschke.de", + "homepage": "http://nilsplaschke.de", + "role": "Developer" + } + ], + "description": "This is a little neat helper for the ZipArchive methods with handy functions", + "homepage": "http://github.com/Chumper/zipper", + "keywords": [ + "archive", + "laravel", + "zip" ] } ] diff --git a/vendor/doctrine/inflector/.travis.yml b/vendor/doctrine/inflector/.travis.yml index 6b1d8ffd8..9ec68f765 100644 --- a/vendor/doctrine/inflector/.travis.yml +++ b/vendor/doctrine/inflector/.travis.yml @@ -1,11 +1,21 @@ language: php +sudo: false + +cache: + directory: + - $HOME/.composer/cache + php: - 5.3 - 5.4 - 5.5 - 5.6 + - 7.0 - hhvm install: - - composer --prefer-source install + - composer install -n + +script: + - phpunit diff --git a/vendor/doctrine/inflector/LICENSE b/vendor/doctrine/inflector/LICENSE index 5e781fce4..8c38cc1bc 100644 --- a/vendor/doctrine/inflector/LICENSE +++ b/vendor/doctrine/inflector/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2006-2013 Doctrine Project +Copyright (c) 2006-2015 Doctrine Project Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/vendor/doctrine/inflector/composer.json b/vendor/doctrine/inflector/composer.json index a29c68cfb..7e5b2efbf 100644 --- a/vendor/doctrine/inflector/composer.json +++ b/vendor/doctrine/inflector/composer.json @@ -23,7 +23,7 @@ }, "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.1.x-dev" } } } diff --git a/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php b/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php index b007b2179..a53828aba 100644 --- a/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php +++ b/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php @@ -56,11 +56,12 @@ class Inflector '/(p)erson$/i' => '\1eople', '/(m)an$/i' => '\1en', '/(c)hild$/i' => '\1hildren', - '/(buffal|tomat)o$/i' => '\1\2oes', + '/(f)oot$/i' => '\1eet', + '/(buffal|her|potat|tomat|volcan)o$/i' => '\1\2oes', '/(alumn|bacill|cact|foc|fung|nucle|radi|stimul|syllab|termin|vir)us$/i' => '\1i', '/us$/i' => 'uses', '/(alias)$/i' => '\1es', - '/(ax|cris|test)is$/i' => '\1es', + '/(analys|ax|cris|test|thes)is$/i' => '\1es', '/s$/' => 's', '/^$/' => '', '/$/' => 's', @@ -70,27 +71,42 @@ class Inflector ), 'irregular' => array( 'atlas' => 'atlases', + 'axe' => 'axes', 'beef' => 'beefs', 'brother' => 'brothers', 'cafe' => 'cafes', + 'chateau' => 'chateaux', 'child' => 'children', 'cookie' => 'cookies', 'corpus' => 'corpuses', 'cow' => 'cows', - 'criteria' => 'criterion', + 'criterion' => 'criteria', + 'curriculum' => 'curricula', + 'demo' => 'demos', + 'domino' => 'dominoes', + 'echo' => 'echoes', + 'foot' => 'feet', + 'fungus' => 'fungi', 'ganglion' => 'ganglions', 'genie' => 'genies', 'genus' => 'genera', 'graffito' => 'graffiti', + 'hippopotamus' => 'hippopotami', 'hoof' => 'hoofs', 'human' => 'humans', + 'iris' => 'irises', + 'leaf' => 'leaves', 'loaf' => 'loaves', 'man' => 'men', + 'medium' => 'media', + 'memorandum' => 'memoranda', 'money' => 'monies', 'mongoose' => 'mongooses', + 'motto' => 'mottoes', 'move' => 'moves', 'mythos' => 'mythoi', 'niche' => 'niches', + 'nucleus' => 'nuclei', 'numen' => 'numina', 'occiput' => 'occiputs', 'octopus' => 'octopuses', @@ -98,11 +114,19 @@ class Inflector 'ox' => 'oxen', 'penis' => 'penises', 'person' => 'people', + 'plateau' => 'plateaux', + 'runner-up' => 'runners-up', 'sex' => 'sexes', 'soliloquy' => 'soliloquies', + 'son-in-law' => 'sons-in-law', + 'syllabus' => 'syllabi', 'testis' => 'testes', + 'thief' => 'thieves', + 'tooth' => 'teeth', + 'tornado' => 'tornadoes', 'trilby' => 'trilbys', 'turf' => 'turfs', + 'volcano' => 'volcanoes', ) ); @@ -120,9 +144,10 @@ class Inflector '/(vert|ind)ices$/i' => '\1ex', '/^(ox)en/i' => '\1', '/(alias)(es)*$/i' => '\1', + '/(buffal|her|potat|tomat|volcan)oes$/i' => '\1o', '/(alumn|bacill|cact|foc|fung|nucle|radi|stimul|syllab|termin|viri?)i$/i' => '\1us', '/([ftw]ax)es/i' => '\1', - '/(cris|ax|test)es$/i' => '\1is', + '/(analys|ax|cris|test|thes)es$/i' => '\1is', '/(shoe|slave)s$/i' => '\1', '/(o)es$/i' => '\1', '/ouses$/' => 'ouse', @@ -143,6 +168,7 @@ class Inflector '/(p)eople$/i' => '\1\2erson', '/(m)en$/i' => '\1an', '/(c)hildren$/i' => '\1\2hild', + '/(f)eet$/i' => '\1oot', '/(n)ews$/i' => '\1\2ews', '/eaus$/' => 'eau', '/^(.*us)$/' => '\\1', @@ -159,10 +185,15 @@ class Inflector '.*ss', ), 'irregular' => array( - 'criterion' => 'criteria', - 'curves' => 'curve', - 'foes' => 'foe', - 'waves' => 'wave', + 'criteria' => 'criterion', + 'curves' => 'curve', + 'emphases' => 'emphasis', + 'foes' => 'foe', + 'hoaxes' => 'hoax', + 'media' => 'medium', + 'neuroses' => 'neurosis', + 'waves' => 'wave', + 'oases' => 'oasis', ) ); @@ -236,6 +267,42 @@ class Inflector return lcfirst(self::classify($word)); } + /** + * Uppercases words with configurable delimeters between words. + * + * Takes a string and capitalizes all of the words, like PHP's built-in + * ucwords function. This extends that behavior, however, by allowing the + * word delimeters to be configured, rather than only separating on + * whitespace. + * + * Here is an example: + * + * + * + * + * @param string $string The string to operate on. + * @param string $delimiters A list of word separators. + * + * @return string The string with all delimeter-separated words capitalized. + */ + public static function ucwords($string, $delimiters = " \n\t\r\0\x0B-") + { + return preg_replace_callback( + '/[^' . preg_quote($delimiters, '/') . ']+/', + function($matches) { + return ucfirst($matches[0]); + }, + $string + ); + } + /** * Clears Inflectors inflected value caches, and resets the inflection * rules to the initial values. diff --git a/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php b/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php index a8a075daa..4198d22c1 100644 --- a/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php +++ b/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php @@ -16,52 +16,131 @@ class InflectorTest extends DoctrineTestCase { Inflector::reset(); - // in the format array('singular', 'plural') + // In the format array('singular', 'plural') return array( - array('categoria', 'categorias'), - array('house', 'houses'), - array('powerhouse', 'powerhouses'), - array('Bus', 'Buses'), - array('bus', 'buses'), - array('menu', 'menus'), - array('news', 'news'), - array('food_menu', 'food_menus'), - array('Menu', 'Menus'), - array('FoodMenu', 'FoodMenus'), - array('quiz', 'quizzes'), - array('matrix_row', 'matrix_rows'), - array('matrix', 'matrices'), - array('vertex', 'vertices'), - array('index', 'indices'), - array('Alias', 'Aliases'), - array('Media', 'Media'), - array('NodeMedia', 'NodeMedia'), - array('alumnus', 'alumni'), - array('bacillus', 'bacilli'), - array('cactus', 'cacti'), - array('focus', 'foci'), - array('fungus', 'fungi'), - array('nucleus', 'nuclei'), - array('octopus', 'octopuses'), - array('radius', 'radii'), - array('stimulus', 'stimuli'), - array('syllabus', 'syllabi'), - array('terminus', 'termini'), - array('virus', 'viri'), - array('person', 'people'), - array('glove', 'gloves'), - array('crisis', 'crises'), - array('tax', 'taxes'), - array('wave', 'waves'), - array('bureau', 'bureaus'), - array('cafe', 'cafes'), - array('roof', 'roofs'), - array('foe', 'foes'), - array('cookie', 'cookies'), - array('identity', 'identities'), - array('criteria', 'criterion'), - array('curve', 'curves'), array('', ''), + array('Alias', 'Aliases'), + array('alumnus', 'alumni'), + array('analysis', 'analyses'), + array('aquarium', 'aquaria'), + array('arch', 'arches'), + array('atlas', 'atlases'), + array('axe', 'axes'), + array('baby', 'babies'), + array('bacillus', 'bacilli'), + array('bacterium', 'bacteria'), + array('bureau', 'bureaus'), + array('bus', 'buses'), + array('Bus', 'Buses'), + array('cactus', 'cacti'), + array('cafe', 'cafes'), + array('calf', 'calves'), + array('categoria', 'categorias'), + array('chateau', 'chateaux'), + array('cherry', 'cherries'), + array('child', 'children'), + array('church', 'churches'), + array('circus', 'circuses'), + array('city', 'cities'), + array('cod', 'cod'), + array('cookie', 'cookies'), + array('copy', 'copies'), + array('crisis', 'crises'), + array('criterion', 'criteria'), + array('curriculum', 'curricula'), + array('curve', 'curves'), + array('deer', 'deer'), + array('demo', 'demos'), + array('dictionary', 'dictionaries'), + array('domino', 'dominoes'), + array('dwarf', 'dwarves'), + array('echo', 'echoes'), + array('elf', 'elves'), + array('emphasis', 'emphases'), + array('family', 'families'), + array('fax', 'faxes'), + array('fish', 'fish'), + array('flush', 'flushes'), + array('fly', 'flies'), + array('focus', 'foci'), + array('foe', 'foes'), + array('food_menu', 'food_menus'), + array('FoodMenu', 'FoodMenus'), + array('foot', 'feet'), + array('fungus', 'fungi'), + array('glove', 'gloves'), + array('half', 'halves'), + array('hero', 'heroes'), + array('hippopotamus', 'hippopotami'), + array('hoax', 'hoaxes'), + array('house', 'houses'), + array('human', 'humans'), + array('identity', 'identities'), + array('index', 'indices'), + array('iris', 'irises'), + array('kiss', 'kisses'), + array('knife', 'knives'), + array('leaf', 'leaves'), + array('life', 'lives'), + array('loaf', 'loaves'), + array('man', 'men'), + array('matrix', 'matrices'), + array('matrix_row', 'matrix_rows'), + array('medium', 'media'), + array('memorandum', 'memoranda'), + array('menu', 'menus'), + array('Menu', 'Menus'), + array('mess', 'messes'), + array('moose', 'moose'), + array('motto', 'mottoes'), + array('mouse', 'mice'), + array('neurosis', 'neuroses'), + array('news', 'news'), + array('NodeMedia', 'NodeMedia'), + array('nucleus', 'nuclei'), + array('oasis', 'oases'), + array('octopus', 'octopuses'), + array('pass', 'passes'), + array('person', 'people'), + array('plateau', 'plateaux'), + array('potato', 'potatoes'), + array('powerhouse', 'powerhouses'), + array('quiz', 'quizzes'), + array('radius', 'radii'), + array('reflex', 'reflexes'), + array('roof', 'roofs'), + array('runner-up', 'runners-up'), + array('scarf', 'scarves'), + array('scratch', 'scratches'), + array('series', 'series'), + array('sheep', 'sheep'), + array('shelf', 'shelves'), + array('shoe', 'shoes'), + array('son-in-law', 'sons-in-law'), + array('species', 'species'), + array('splash', 'splashes'), + array('spy', 'spies'), + array('stimulus', 'stimuli'), + array('stitch', 'stitches'), + array('story', 'stories'), + array('syllabus', 'syllabi'), + array('tax', 'taxes'), + array('terminus', 'termini'), + array('thesis', 'theses'), + array('thief', 'thieves'), + array('tomato', 'tomatoes'), + array('tooth', 'teeth'), + array('tornado', 'tornadoes'), + array('try', 'tries'), + array('vertex', 'vertices'), + array('virus', 'viri'), + array('volcano', 'volcanoes'), + array('wash', 'washes'), + array('watch', 'watches'), + array('wave', 'waves'), + array('wharf', 'wharves'), + array('wife', 'wives'), + array('woman', 'women'), ); } @@ -206,5 +285,25 @@ class InflectorTest extends DoctrineTestCase $this->assertEquals(Inflector::singularize('Alcoois'), 'Alcool'); $this->assertEquals(Inflector::singularize('Atlas'), 'Atlas'); } + + /** + * Test basic ucwords functionality. + * + * @return void + */ + public function testUcwords() + { + $this->assertSame('Top-O-The-Morning To All_of_you!', Inflector::ucwords( 'top-o-the-morning to all_of_you!')); + } + + /** + * Test ucwords functionality with custom delimeters. + * + * @return void + */ + public function testUcwordsWithCustomDelimeters() + { + $this->assertSame('Top-O-The-Morning To All_Of_You!', Inflector::ucwords( 'top-o-the-morning to all_of_you!', '-_ ')); + } } diff --git a/vendor/dompdf/dompdf/README.md b/vendor/dompdf/dompdf/README.md index 68e4af5d6..80e412c75 100644 --- a/vendor/dompdf/dompdf/README.md +++ b/vendor/dompdf/dompdf/README.md @@ -1,3 +1,5 @@ +[![Latest Stable Version](https://poser.pugx.org/dompdf/dompdf/v/stable.png)](https://packagist.org/packages/dompdf/dompdf) [![Total Downloads](https://poser.pugx.org/dompdf/dompdf/downloads.png)](https://packagist.org/packages/dompdf/dompdf) [![Latest Unstable Version](https://poser.pugx.org/dompdf/dompdf/v/unstable.png)](https://packagist.org/packages/dompdf/dompdf) [![License](https://poser.pugx.org/dompdf/dompdf/license.png)](https://packagist.org/packages/dompdf/dompdf) + **dompdf is an HTML to PDF converter**. At its heart, dompdf is (mostly) [CSS 2.1](http://www.w3.org/TR/CSS2/) compliant HTML layout and rendering engine written in PHP. It is a style-driven renderer: @@ -55,7 +57,7 @@ for more information on how to use fonts. The [DejaVu TrueType fonts](http://dejavu-fonts.org) have been pre-installed to give dompdf decent Unicode character coverage by default. To use the DejaVu -fonts reference the font in your stylesheet, e.g. `body { font-family: Deja Vu +fonts reference the font in your stylesheet, e.g. `body { font-family: DejaVu Sans; }` (for DejaVu Sans). Easy Installation @@ -66,7 +68,7 @@ From the command line switch to the directory where dompdf will reside and run the following commands: ```sh -git clone https://github.com/dompdf/dompdf.git +git clone https://github.com/dompdf/dompdf.git . git submodule init git submodule update ``` @@ -125,7 +127,7 @@ Limitations (Known Issues) * large files or large tables can take a while to render * CSS float is not supported (but is in the works, enable it through the `DOMPDF_ENABLE_CSS_FLOAT` configuration constant). - * If you find this project useful, please consider making a donation. - + +If you find this project useful, please consider making a donation. (Any funds donated will be used to help further development on this project.) [![Donate button](https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif)](http://goo.gl/DSvWf) diff --git a/vendor/dompdf/dompdf/dompdf.php b/vendor/dompdf/dompdf/dompdf.php index a9052fa46..dc3551b73 100644 --- a/vendor/dompdf/dompdf/dompdf.php +++ b/vendor/dompdf/dompdf/dompdf.php @@ -129,6 +129,8 @@ global $_dompdf_show_warnings, $_dompdf_debug, $_DOMPDF_DEBUG_TYPES; $sapi = php_sapi_name(); $options = array(); +$dompdf = new DOMPDF(); + switch ( $sapi ) { case "cli": @@ -168,7 +170,7 @@ switch ( $sapi ) { if ( $file === "-" ) $outfile = "dompdf_out.pdf"; else - $outfile = str_ireplace(array(".html", ".htm", ".php"), "", $file) . ".pdf"; + $outfile = str_ireplace(array(".html", ".htm"), "", $file) . ".pdf"; } if ( isset($opts["v"]) ) @@ -193,6 +195,8 @@ switch ( $sapi ) { default: + $dompdf->set_option('enable_php', false); + if ( isset($_GET["input_file"]) ) $file = rawurldecode($_GET["input_file"]); else @@ -219,26 +223,12 @@ switch ( $sapi ) { $file_parts = explode_url($file); - /* Check to see if the input file is local and, if so, that the base path falls within that specified by DOMDPF_CHROOT */ - if(($file_parts['protocol'] == '' || $file_parts['protocol'] === 'file://')) { - $file = realpath($file); - if ( strpos($file, DOMPDF_CHROOT) !== 0 ) { - throw new DOMPDF_Exception("Permission denied on $file. The file could not be found under the directory specified by DOMPDF_CHROOT."); - } - } - - if($file_parts['protocol'] === 'php://') { - throw new DOMPDF_Exception("Permission denied on $file. This script does not allow PHP streams."); - } - $outfile = "dompdf_out.pdf"; # Don't allow them to set the output file $save_file = false; # Don't save the file break; } -$dompdf = new DOMPDF(); - if ( $file === "-" ) { $str = ""; while ( !feof(STDIN) ) diff --git a/vendor/dompdf/dompdf/dompdf_config.custom.inc.php b/vendor/dompdf/dompdf/dompdf_config.custom.inc.php index 4e58b4a92..da5eddaac 100644 --- a/vendor/dompdf/dompdf/dompdf_config.custom.inc.php +++ b/vendor/dompdf/dompdf/dompdf_config.custom.inc.php @@ -1,6 +1,7 @@ - * @author Helmut Tischer * @author Fabien Ménager - * @autho Brian Sweeney + * @author Brian Sweeney * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License */ @@ -246,9 +246,11 @@ def("DOMPDF_DPI", 96); * If this setting is set to true then DOMPDF will automatically evaluate * inline PHP contained within tags. * + * Attention! * Enabling this for documents you do not trust (e.g. arbitrary remote html - * pages) is a security risk. Set this option to false if you wish to process - * untrusted documents. + * pages) is a security risk. Inline scripts are run with the same level of + * system access available to dompdf. Set this option to false (recommended) + * if you wish to process untrusted documents. * * @var bool */ diff --git a/vendor/dompdf/dompdf/include/abstract_renderer.cls.php b/vendor/dompdf/dompdf/include/abstract_renderer.cls.php index fc27aec10..dcd801306 100644 --- a/vendor/dompdf/dompdf/include/abstract_renderer.cls.php +++ b/vendor/dompdf/dompdf/include/abstract_renderer.cls.php @@ -100,7 +100,7 @@ abstract class Abstract_Renderer { //Therefore read dimension directly from file, instead of creating gd object first. //$img_w = imagesx($src); $img_h = imagesy($src); - list($img_w, $img_h) = dompdf_getimagesize($img); + list($img_w, $img_h) = dompdf_getimagesize($img, $this->_dompdf->get_http_context()); if (!isset($img_w) || $img_w == 0 || !isset($img_h) || $img_h == 0) { return; } diff --git a/vendor/dompdf/dompdf/include/cpdf_adapter.cls.php b/vendor/dompdf/dompdf/include/cpdf_adapter.cls.php index 06947b505..041e1f375 100644 --- a/vendor/dompdf/dompdf/include/cpdf_adapter.cls.php +++ b/vendor/dompdf/dompdf/include/cpdf_adapter.cls.php @@ -604,7 +604,7 @@ class CPDF_Adapter implements Canvas { } function image($img, $x, $y, $w, $h, $resolution = "normal") { - list($width, $height, $type) = dompdf_getimagesize($img); + list($width, $height, $type) = dompdf_getimagesize($img, $this->_dompdf->get_http_context()); $debug_png = $this->_dompdf->get_option("debug_png"); diff --git a/vendor/dompdf/dompdf/include/dompdf.cls.php b/vendor/dompdf/dompdf/include/dompdf.cls.php index 1be1f8284..b798d486e 100644 --- a/vendor/dompdf/dompdf/include/dompdf.cls.php +++ b/vendor/dompdf/dompdf/include/dompdf.cls.php @@ -184,6 +184,25 @@ class DOMPDF { * @var bool */ private $_quirksmode = false; + + /** + * Protocol whitelist + * + * Protocols and PHP wrappers allowed in URLs. Full support is not + * guarantee for the protocols/wrappers contained in this array. + * + * @var array + */ + private $_allowed_protocols = array(null, "", "file://", "http://", "https://"); + + /** + * Local file extension whitelist + * + * File extensions supported by dompdf for local files. + * + * @var array + */ + private $_allowed_local_file_extensions = array("htm", "html"); /** * The list of built-in fonts @@ -474,6 +493,10 @@ class DOMPDF { list($this->_protocol, $this->_base_host, $this->_base_path) = explode_url($file); } + if ( !in_array($this->_protocol, $this->_allowed_protocols) ) { + throw new DOMPDF_Exception("Permission denied on $file. The communication protocol is not supported."); + } + if ( !$this->get_option("enable_remote") && ($this->_protocol != "" && $this->_protocol !== "file://" ) ) { throw new DOMPDF_Exception("Remote file requested, but DOMPDF_ENABLE_REMOTE is false."); } @@ -482,23 +505,24 @@ class DOMPDF { // Get the full path to $file, returns false if the file doesn't exist $realfile = realpath($file); - if ( !$realfile ) { - throw new DOMPDF_Exception("File '$file' not found."); - } $chroot = $this->get_option("chroot"); if ( strpos($realfile, $chroot) !== 0 ) { throw new DOMPDF_Exception("Permission denied on $file. The file could not be found under the directory specified by DOMPDF_CHROOT."); } - - // Exclude dot files (e.g. .htaccess) - if ( substr(basename($realfile), 0, 1) === "." ) { + + $ext = pathinfo($realfile, PATHINFO_EXTENSION); + if (!in_array($ext, $this->_allowed_local_file_extensions)) { throw new DOMPDF_Exception("Permission denied on $file."); } - + + if ( !$realfile ) { + throw new DOMPDF_Exception("File '$file' not found."); + } + $file = $realfile; } - + $contents = file_get_contents($file, null, $this->_http_context); $encoding = null; diff --git a/vendor/dompdf/dompdf/include/font_metrics.cls.php b/vendor/dompdf/dompdf/include/font_metrics.cls.php index ad20d9119..2d15d6714 100644 --- a/vendor/dompdf/dompdf/include/font_metrics.cls.php +++ b/vendor/dompdf/dompdf/include/font_metrics.cls.php @@ -217,10 +217,18 @@ class Font_Metrics { */ static function save_font_families() { // replace the path to the DOMPDF font directories with the corresponding constants (allows for more portability) - $cache_data = var_export(self::$_font_lookup, true); - $cache_data = str_replace('\''.DOMPDF_FONT_DIR , 'DOMPDF_FONT_DIR . \'' , $cache_data); - $cache_data = str_replace('\''.DOMPDF_DIR , 'DOMPDF_DIR . \'' , $cache_data); - $cache_data = "<"."?php return $cache_data ?".">"; + $cache_data = sprintf(" $variants) { + $cache_data .= sprintf(" '%s' => array(%s", addslashes($family), PHP_EOL); + foreach ($variants as $variant => $path) { + $path = sprintf("'%s'", $path); + $path = str_replace('\'' . DOMPDF_FONT_DIR , 'DOMPDF_FONT_DIR . \'' , $path); + $path = str_replace('\'' . DOMPDF_DIR , 'DOMPDF_DIR . \'' , $path); + $cache_data .= sprintf(" '%s' => %s,%s", $variant, $path, PHP_EOL); + } + $cache_data .= sprintf(" ),%s", PHP_EOL); + } + $cache_data .= ") ?>"; file_put_contents(self::CACHE_FILE, $cache_data); } @@ -249,13 +257,18 @@ class Font_Metrics { return; } - self::$_font_lookup = require_once self::CACHE_FILE; + $cache_data = require_once self::CACHE_FILE; // If the font family cache is still in the old format if ( self::$_font_lookup === 1 ) { $cache_data = file_get_contents(self::CACHE_FILE); file_put_contents(self::CACHE_FILE, "<"."?php return $cache_data ?".">"); - self::$_font_lookup = require_once self::CACHE_FILE; + $cache_data = require_once self::CACHE_FILE; + } + + self::$_font_lookup = array(); + foreach ($cache_data as $key => $value) { + self::$_font_lookup[stripslashes($key)] = $value; } // Merge provided fonts @@ -318,7 +331,7 @@ class Font_Metrics { self::$_font_lookup[mb_strtolower($fontname)] = $entry; } - static function register_font($style, $remote_file) { + static function register_font($style, $remote_file, $context = null) { $fontname = mb_strtolower($style["family"]); $families = Font_Metrics::get_font_families(); @@ -328,6 +341,7 @@ class Font_Metrics { } $local_file = DOMPDF_FONT_DIR . md5($remote_file); + $local_temp_file = DOMPDF_TEMP_DIR . "/" . md5($remote_file); $cache_entry = $local_file; $local_file .= ".ttf"; @@ -336,23 +350,28 @@ class Font_Metrics { if ( !isset($entry[$style_string]) ) { $entry[$style_string] = $cache_entry; - Font_Metrics::set_font_family($fontname, $entry); - // Download the remote file - if ( !is_file($local_file) ) { - file_put_contents($local_file, file_get_contents($remote_file)); - } + file_put_contents($local_temp_file, file_get_contents($remote_file, null, $context)); - $font = Font::load($local_file); + $font = Font::load($local_temp_file); if (!$font) { + unlink($local_temp_file); return false; } $font->parse(); $font->saveAdobeFontMetrics("$cache_entry.ufm"); + unlink($local_temp_file); + + if ( !file_exists("$cache_entry.ufm") ) { + return false; + } + // Save the changes + file_put_contents($local_file, file_get_contents($remote_file, null, $context)); + Font_Metrics::set_font_family($fontname, $entry); Font_Metrics::save_font_families(); } diff --git a/vendor/dompdf/dompdf/include/functions.inc.php b/vendor/dompdf/dompdf/include/functions.inc.php index 8e0ab02c7..265244aaf 100644 --- a/vendor/dompdf/dompdf/include/functions.inc.php +++ b/vendor/dompdf/dompdf/include/functions.inc.php @@ -128,47 +128,45 @@ function d($mixed) { * is appended (o.k. also for Windows) */ function build_url($protocol, $host, $base_path, $url) { - if ( strlen($url) == 0 ) { + $protocol = mb_strtolower($protocol); + if (strlen($url) == 0) { //return $protocol . $host . rtrim($base_path, "/\\") . "/"; return $protocol . $host . $base_path; } - // Is the url already fully qualified or a Data URI? - if ( mb_strpos($url, "://") !== false || mb_strpos($url, "data:") === 0 ) { + if (mb_strpos($url, "://") !== false || mb_strpos($url, "data:") === 0) { return $url; } - $ret = $protocol; - - if ( !in_array(mb_strtolower($protocol), array("http://", "https://", "ftp://", "ftps://")) ) { + if (!in_array(mb_strtolower($protocol), array("http://", "https://", "ftp://", "ftps://"))) { //On Windows local file, an abs path can begin also with a '\' or a drive letter and colon //drive: followed by a relative path would be a drive specific default folder. //not known in php app code, treat as abs path //($url[1] !== ':' || ($url[2]!=='\\' && $url[2]!=='/')) - if ( $url[0] !== '/' && (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN' || ($url[0] !== '\\' && $url[1] !== ':')) ) { + if ($url[0] !== '/' && (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN' || ($url[0] !== '\\' && $url[1] !== ':'))) { // For rel path and local acess we ignore the host, and run the path through realpath() - $ret .= realpath($base_path).'/'; + $ret .= realpath($base_path) . '/'; } $ret .= $url; $ret = preg_replace('/\?(.*)$/', "", $ret); return $ret; } - - //remote urls with backslash in html/css are not really correct, but lets be genereous - if ( $url[0] === '/' || $url[0] === '\\' ) { + // Protocol relative urls (e.g. "//example.org/style.css") + if (strpos($url, '//') === 0) { + $ret .= substr($url, 2); + //remote urls with backslash in html/css are not really correct, but lets be genereous + } elseif ($url[0] === '/' || $url[0] === '\\') { // Absolute path $ret .= $host . $url; - } - else { + } else { // Relative path //$base_path = $base_path !== "" ? rtrim($base_path, "/\\") . "/" : ""; $ret .= $host . $base_path . $url; } - return $ret; - } + /** * parse a full url or pathname and return an array(protocol, host, path, * file + query + fragment) @@ -183,7 +181,10 @@ function explode_url($url) { $file = ""; $arr = parse_url($url); - + if ( isset($arr["scheme"])) { + $arr["scheme"] == mb_strtolower($arr["scheme"]); + } + // Exclude windows drive letters... if ( isset($arr["scheme"]) && $arr["scheme"] !== "file" && strlen($arr["scheme"]) > 1 ) { $protocol = $arr["scheme"] . "://"; @@ -229,7 +230,7 @@ function explode_url($url) { } else { - $i = mb_strpos($url, "file://"); + $i = mb_stripos($url, "file://"); if ( $i !== false ) { $url = mb_substr($url, $i + 7); } @@ -400,6 +401,12 @@ if (!extension_loaded('mbstring')) { } } + if (!function_exists('mb_stripos')) { + function mb_stripos($haystack, $needle, $offset = 0) { + return stripos($haystack, $needle, $offset); + } + } + if (!function_exists('mb_strrpos')) { function mb_strrpos($haystack, $needle, $offset = 0) { return strrpos($haystack, $needle, $offset); @@ -748,7 +755,7 @@ function imagecreatefrombmp($filename) { * @param string $filename * @return array The same format as getimagesize($filename) */ -function dompdf_getimagesize($filename) { +function dompdf_getimagesize($filename, $context = null) { static $cache = array(); if ( isset($cache[$filename]) ) { @@ -758,7 +765,7 @@ function dompdf_getimagesize($filename) { list($width, $height, $type) = getimagesize($filename); if ( $width == null || $height == null ) { - $data = file_get_contents($filename, null, null, 0, 26); + $data = file_get_contents($filename, null, $context, 0, 26); if ( substr($data, 0, 2) === "BM" ) { $meta = unpack('vtype/Vfilesize/Vreserved/Voffset/Vheadersize/Vwidth/Vheight', $data); @@ -1005,31 +1012,6 @@ else { } } -if ( function_exists("curl_init") ) { - function DOMPDF_fetch_url($url, &$headers = null) { - $ch = curl_init($url); - curl_setopt($ch, CURLOPT_TIMEOUT, 10); - curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - curl_setopt($ch, CURLOPT_HEADER, true); - - $data = curl_exec($ch); - $raw_headers = substr($data, 0, curl_getinfo($ch, CURLINFO_HEADER_SIZE)); - $headers = preg_split("/[\n\r]+/", trim($raw_headers)); - $data = substr($data, curl_getinfo($ch, CURLINFO_HEADER_SIZE)); - curl_close($ch); - - return $data; - } -} -else { - function DOMPDF_fetch_url($url, &$headers = null) { - $data = file_get_contents($url); - $headers = $http_response_header; - - return $data; - } -} /** * Affect null to the unused objects diff --git a/vendor/dompdf/dompdf/include/gd_adapter.cls.php b/vendor/dompdf/dompdf/include/gd_adapter.cls.php index de5c1e452..1eab04cc4 100644 --- a/vendor/dompdf/dompdf/include/gd_adapter.cls.php +++ b/vendor/dompdf/dompdf/include/gd_adapter.cls.php @@ -553,7 +553,7 @@ class GD_Adapter implements Canvas { * @internal param string $img_type the type (e.g. extension) of the image */ function image($img_url, $x, $y, $w, $h, $resolution = "normal") { - $img_type = Image_Cache::detect_type($img_url); + $img_type = Image_Cache::detect_type($img_url, $this->_dompdf->get_http_context()); $img_ext = Image_Cache::type_to_ext($img_type); if ( !$img_ext ) { diff --git a/vendor/dompdf/dompdf/include/image_cache.cls.php b/vendor/dompdf/dompdf/include/image_cache.cls.php index 7d7e5603b..e7175c4dc 100644 --- a/vendor/dompdf/dompdf/include/image_cache.cls.php +++ b/vendor/dompdf/dompdf/include/image_cache.cls.php @@ -45,6 +45,7 @@ class Image_Cache { * @return array An array with two elements: The local path to the image and the image extension */ static function resolve_url($url, $protocol, $host, $base_path, DOMPDF $dompdf) { + $protocol = mb_strtolower($protocol); $parsed_url = explode_url($url); $message = null; @@ -84,7 +85,7 @@ class Image_Cache { } else { set_error_handler("record_warnings"); - $image = file_get_contents($full_url); + $image = file_get_contents($full_url, null, $dompdf->get_http_context()); restore_error_handler(); } @@ -118,7 +119,7 @@ class Image_Cache { // Check is the file is an image else { - list($width, $height, $type) = dompdf_getimagesize($resolved_url); + list($width, $height, $type) = dompdf_getimagesize($resolved_url, $dompdf->get_http_context()); // Known image type if ( $width && $height && in_array($type, array(IMAGETYPE_GIF, IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_BMP)) ) { @@ -138,7 +139,8 @@ class Image_Cache { catch(DOMPDF_Image_Exception $e) { $resolved_url = self::$broken_image; $type = IMAGETYPE_PNG; - $message = $e->getMessage()." \n $url"; + $message = "Image not found or type unknown"; + $_dompdf_warnings[] = $e->getMessage()." :: $url"; } return array($resolved_url, $type, $message); @@ -159,8 +161,8 @@ class Image_Cache { self::$_cache = array(); } - static function detect_type($file) { - list(, , $type) = dompdf_getimagesize($file); + static function detect_type($file, $context = null) { + list(, , $type) = dompdf_getimagesize($file, $context); return $type; } diff --git a/vendor/dompdf/dompdf/include/image_frame_reflower.cls.php b/vendor/dompdf/dompdf/include/image_frame_reflower.cls.php index 5797b8243..c938bd075 100644 --- a/vendor/dompdf/dompdf/include/image_frame_reflower.cls.php +++ b/vendor/dompdf/dompdf/include/image_frame_reflower.cls.php @@ -41,7 +41,7 @@ class Image_Frame_Reflower extends Frame_Reflower { function get_min_max_width() { if (DEBUGPNG) { // Determine the image's size. Time consuming. Only when really needed? - list($img_width, $img_height) = dompdf_getimagesize($this->_frame->get_image_url()); + list($img_width, $img_height) = dompdf_getimagesize($this->_frame->get_image_url(), $this->get_dompdf()->get_http_context()); print "get_min_max_width() ". $this->_frame->get_style()->width.' '. $this->_frame->get_style()->height.';'. @@ -104,7 +104,7 @@ class Image_Frame_Reflower extends Frame_Reflower { if ($width == 0 || $height == 0) { // Determine the image's size. Time consuming. Only when really needed! - list($img_width, $img_height) = dompdf_getimagesize($this->_frame->get_image_url()); + list($img_width, $img_height) = dompdf_getimagesize($this->_frame->get_image_url(), $this->get_dompdf()->get_http_context()); // don't treat 0 as error. Can be downscaled or can be catched elsewhere if image not readable. // Resample according to px per inch diff --git a/vendor/dompdf/dompdf/include/list_bullet_image_frame_decorator.cls.php b/vendor/dompdf/dompdf/include/list_bullet_image_frame_decorator.cls.php index f27ca3d68..6cfb546cb 100644 --- a/vendor/dompdf/dompdf/include/list_bullet_image_frame_decorator.cls.php +++ b/vendor/dompdf/dompdf/include/list_bullet_image_frame_decorator.cls.php @@ -48,7 +48,7 @@ class List_Bullet_Image_Frame_Decorator extends Frame_Decorator { $frame->get_node()->setAttribute("src", $url); $this->_img = new Image_Frame_Decorator($frame, $dompdf); parent::__construct($this->_img, $dompdf); - list($width, $height) = dompdf_getimagesize($this->_img->get_image_url()); + list($width, $height) = dompdf_getimagesize($this->_img->get_image_url(), $dompdf->get_http_context()); // Resample the bullet image to be consistent with 'auto' sized images // See also Image_Frame_Reflower::get_min_max_width diff --git a/vendor/dompdf/dompdf/include/list_bullet_renderer.cls.php b/vendor/dompdf/dompdf/include/list_bullet_renderer.cls.php index 6b984764f..be4cde2bd 100644 --- a/vendor/dompdf/dompdf/include/list_bullet_renderer.cls.php +++ b/vendor/dompdf/dompdf/include/list_bullet_renderer.cls.php @@ -141,7 +141,7 @@ class List_Bullet_Renderer extends Abstract_Renderer { // Tested php ver: value measured in px, suffix "px" not in value: rtrim unnecessary. //$w = $frame->get_width(); //$h = $frame->get_height(); - list($width, $height) = dompdf_getimagesize($img); + list($width, $height) = dompdf_getimagesize($img, $this->_dompdf->get_http_context()); $dpi = $this->_dompdf->get_option("dpi"); $w = ((float)rtrim($width, "px") * 72) / $dpi; $h = ((float)rtrim($height, "px") * 72) / $dpi; diff --git a/vendor/dompdf/dompdf/include/pdflib_adapter.cls.php b/vendor/dompdf/dompdf/include/pdflib_adapter.cls.php index 4bfe1913e..2417d5f52 100644 --- a/vendor/dompdf/dompdf/include/pdflib_adapter.cls.php +++ b/vendor/dompdf/dompdf/include/pdflib_adapter.cls.php @@ -770,7 +770,7 @@ class PDFLib_Adapter implements Canvas { $w = (int)$w; $h = (int)$h; - $img_type = Image_Cache::detect_type($img_url); + $img_type = Image_Cache::detect_type($img_url, $this->_dompdf->get_http_context()); $img_ext = Image_Cache::type_to_ext($img_type); if ( !isset($this->_imgs[$img_url]) ) { diff --git a/vendor/dompdf/dompdf/include/stylesheet.cls.php b/vendor/dompdf/dompdf/include/stylesheet.cls.php index 3b2ba3180..a74956754 100644 --- a/vendor/dompdf/dompdf/include/stylesheet.cls.php +++ b/vendor/dompdf/dompdf/include/stylesheet.cls.php @@ -1250,7 +1250,7 @@ class Stylesheet { "path" => build_url($this->_protocol, $this->_base_host, $this->_base_path, $src[2][$i]), ); - if ( !$source["local"] && in_array($source["format"], array("", "woff", "opentype", "truetype")) ) { + if ( !$source["local"] && in_array($source["format"], array("", "truetype")) ) { $valid_sources[] = $source; } @@ -1268,7 +1268,7 @@ class Stylesheet { "style" => $descriptors->font_style, ); - Font_Metrics::register_font($style, $valid_sources[0]["path"]); + Font_Metrics::register_font($style, $valid_sources[0]["path"], $this->_dompdf->get_http_context()); } /** diff --git a/vendor/dompdf/dompdf/lib/class.pdf.php b/vendor/dompdf/dompdf/lib/class.pdf.php index 3bf1deef9..d8a0ba58c 100644 --- a/vendor/dompdf/dompdf/lib/class.pdf.php +++ b/vendor/dompdf/dompdf/lib/class.pdf.php @@ -749,7 +749,7 @@ end EOT; $res = "<>\n"; - $res .= "stream\n" . $stream . "endstream"; + $res .= "stream\n" . $stream . "\nendstream"; $this->objects[$toUnicodeId]['c'] = $res; @@ -1875,7 +1875,7 @@ EOT; $tmp = 'o_'.$v['t']; $cont = $this->$tmp($k, 'out'); $content.= $cont; - $xref[] = $pos; + $xref[] = $pos+1; //+1 to account for \n at the start of each object $pos+= mb_strlen($cont, '8bit'); } @@ -2426,7 +2426,7 @@ EOT; $flags+= pow(2, 5); // assume non-sybolic $list = array( 'Ascent' => 'Ascender', - 'CapHeight' => 'CapHeight', + 'CapHeight' => 'Ascender', //FIXME: php-font-lib is not grabbing this value, so we'll fake it and use the Ascender value // 'CapHeight' 'MissingWidth' => 'MissingWidth', 'Descent' => 'Descender', 'FontBBox' => 'FontBBox', diff --git a/vendor/dompdf/dompdf/www/debugger.php b/vendor/dompdf/dompdf/www/debugger.php index a3417116d..c68d823b4 100644 --- a/vendor/dompdf/dompdf/www/debugger.php +++ b/vendor/dompdf/dompdf/www/debugger.php @@ -1,4 +1,12 @@ - @@ -6,6 +14,7 @@ $files = glob("test/*.{html,htm,php}", GLOB_BRACE); dompdf debugger + diff --git a/vendor/dompdf/dompdf/www/setup.php b/vendor/dompdf/dompdf/www/setup.php index 27934ff1a..ed0a138ad 100644 --- a/vendor/dompdf/dompdf/www/setup.php +++ b/vendor/dompdf/dompdf/www/setup.php @@ -1,5 +1,9 @@ + +

    Setup

    @@ -296,5 +300,12 @@ $constants = array( + + + \ No newline at end of file diff --git a/vendor/giggsey/libphonenumber-for-php/.travis.yml b/vendor/giggsey/libphonenumber-for-php/.travis.yml index e25af2c33..4809958e4 100644 --- a/vendor/giggsey/libphonenumber-for-php/.travis.yml +++ b/vendor/giggsey/libphonenumber-for-php/.travis.yml @@ -5,7 +5,6 @@ language: php matrix: allow_failures: - php: hhvm - - php: 7 php: - 5.3 diff --git a/vendor/giggsey/libphonenumber-for-php/METADATA-VERSION.txt b/vendor/giggsey/libphonenumber-for-php/METADATA-VERSION.txt index 520513db2..7b5c9730c 100644 --- a/vendor/giggsey/libphonenumber-for-php/METADATA-VERSION.txt +++ b/vendor/giggsey/libphonenumber-for-php/METADATA-VERSION.txt @@ -2,4 +2,4 @@ # It can be a commit, branch or tag of the https://github.com/googlei18n/libphonenumber project # # For more information, look at the phing tasks in build.xml -libphonenumber-7.1.0 +libphonenumber-7.2.2 diff --git a/vendor/giggsey/libphonenumber-for-php/Tests/libphonenumber/Tests/Issues/PHP7Test.php b/vendor/giggsey/libphonenumber-for-php/Tests/libphonenumber/Tests/Issues/PHP7Test.php new file mode 100644 index 000000000..ba7fc6cb5 --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/Tests/libphonenumber/Tests/Issues/PHP7Test.php @@ -0,0 +1,52 @@ +phoneUtil = PhoneNumberUtil::getInstance(); + } + + /** + * @param $number + * @dataProvider validPolishNumbers + */ + public function testValidPolishNumbers($number) + { + $phoneNumber = $this->phoneUtil->parse($number, 'PL'); + + $this->assertTrue($this->phoneUtil->isValidNumber($phoneNumber)); + $this->assertEquals($number, $this->phoneUtil->format($phoneNumber, PhoneNumberFormat::NATIONAL)); + } + + public function validPolishNumbers() + { + return array( + array('22 222 22 22'), + array('33 222 22 22'), + array('46 222 22 22'), + array('61 222 22 22'), + array('62 222 22 22'), + array('642 222 222'), + array('65 222 22 22'), + array('512 345 678'), + array('800 123 456'), + array('700 000 000'), + array('801 234 567'), + array('91 000 00 00'), + ); + } +} diff --git a/vendor/giggsey/libphonenumber-for-php/build.xml b/vendor/giggsey/libphonenumber-for-php/build.xml index 62cde5450..d3655dc12 100644 --- a/vendor/giggsey/libphonenumber-for-php/build.xml +++ b/vendor/giggsey/libphonenumber-for-php/build.xml @@ -85,13 +85,19 @@ - + - + + + + + + + Cloning repository + repository="${git.url}" + targetPath="${git.path}"/> @@ -99,8 +105,20 @@ + repository="${git.path}" + branchname="${metadata.version}" quiet="false" force="true" /> + + + + + + + + + + Applying patch ${filename} + + diff --git a/vendor/giggsey/libphonenumber-for-php/build/data-patches/.gitkeep b/vendor/giggsey/libphonenumber-for-php/build/data-patches/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/vendor/giggsey/libphonenumber-for-php/build/data-patches/001-PHP7-PL.patch b/vendor/giggsey/libphonenumber-for-php/build/data-patches/001-PHP7-PL.patch new file mode 100644 index 000000000..cfaa1307d --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/build/data-patches/001-PHP7-PL.patch @@ -0,0 +1,13 @@ +diff --git a/resources/PhoneNumberMetadata.xml b/resources/PhoneNumberMetadata.xml +index a53b48d..820598c 100644 +--- a/resources/PhoneNumberMetadata.xml ++++ b/resources/PhoneNumberMetadata.xml +@@ -19031,7 +19031,7 @@ + + + [12]\d{6,8}| +- [3-57-9]\d{8}| ++ (?:[3-5]|[7-9])\d{8}| + 6\d{5,8} + + \d{6,9} diff --git a/vendor/giggsey/libphonenumber-for-php/composer.json b/vendor/giggsey/libphonenumber-for-php/composer.json index 36ed20933..673ab6f2f 100644 --- a/vendor/giggsey/libphonenumber-for-php/composer.json +++ b/vendor/giggsey/libphonenumber-for-php/composer.json @@ -38,8 +38,8 @@ "phing/phing": "~2.7", "pear/versioncontrol_git": "dev-master", "pear/pear-core-minimal": "^1.9", - "pear/pear_exception": "*", - "phpunit/phpunit": "~4.0", + "pear/pear_exception": "*", + "phpunit/phpunit": "~4.0", "symfony/console": "~2.4", "satooshi/php-coveralls": "~0.6" }, diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/Map.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/Map.php index f96f2309e..5d6820da4 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/Map.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/Map.php @@ -159,64 +159,65 @@ return array ( 141 => 7, 142 => 84, 143 => 852, - 144 => 855, - 145 => 856, - 146 => 86130, - 147 => 86131, - 148 => 86132, - 149 => 86133, - 150 => 86134, - 151 => 86135, - 152 => 86136, - 153 => 86137, - 154 => 86138, - 155 => 86139, - 156 => 86150, - 157 => 86151, - 158 => 86153, - 159 => 86156, - 160 => 86157, - 161 => 86158, - 162 => 86159, - 163 => 86176, - 164 => 86177, - 165 => 86178, - 166 => 86180, - 167 => 86185, - 168 => 86186, - 169 => 86187, - 170 => 86188, - 171 => 86189, - 172 => 880, - 173 => 90, - 174 => 91, - 175 => 92, - 176 => 93, - 177 => 94, - 178 => 95, - 179 => 960, - 180 => 961, - 181 => 962, - 182 => 964, - 183 => 965, - 184 => 966, - 185 => 967, - 186 => 968, - 187 => 970, - 188 => 971, - 189 => 972, - 190 => 973, - 191 => 974, - 192 => 975, - 193 => 976, - 194 => 977, - 195 => 98, - 196 => 992, - 197 => 993, - 198 => 994, - 199 => 995, - 200 => 996, - 201 => 998, + 144 => 853, + 145 => 855, + 146 => 856, + 147 => 86130, + 148 => 86131, + 149 => 86132, + 150 => 86133, + 151 => 86134, + 152 => 86135, + 153 => 86136, + 154 => 86137, + 155 => 86138, + 156 => 86139, + 157 => 86150, + 158 => 86151, + 159 => 86153, + 160 => 86156, + 161 => 86157, + 162 => 86158, + 163 => 86159, + 164 => 86176, + 165 => 86177, + 166 => 86178, + 167 => 86180, + 168 => 86185, + 169 => 86186, + 170 => 86187, + 171 => 86188, + 172 => 86189, + 173 => 880, + 174 => 90, + 175 => 91, + 176 => 92, + 177 => 93, + 178 => 94, + 179 => 95, + 180 => 960, + 181 => 961, + 182 => 962, + 183 => 964, + 184 => 965, + 185 => 966, + 186 => 967, + 187 => 968, + 188 => 970, + 189 => 971, + 190 => 972, + 191 => 973, + 192 => 974, + 193 => 975, + 194 => 976, + 195 => 977, + 196 => 98, + 197 => 992, + 198 => 993, + 199 => 994, + 200 => 995, + 201 => 996, + 202 => 998, ), 'ru' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/1246.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/1246.php index 652a328f9..116b64789 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/1246.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/1246.php @@ -12,9 +12,17 @@ return array ( 1246252 => 'LIME', 1246253 => 'LIME', 1246254 => 'LIME', + 1246255 => 'LIME', 1246256 => 'Digicel', + 1246257 => 'Digicel', 1246258 => 'Digicel', + 1246259 => 'Digicel', 124626 => 'Digicel', + 124628 => 'LIME', 124645 => 'Sunbeach Communications', 124682 => 'Digicel', + 124683 => 'Digicel', + 124684 => 'Digicel', + 124685 => 'Digicel', + 1246883 => 'Digicel', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/216.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/216.php index 886c593a5..8d2adef90 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/216.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/216.php @@ -9,7 +9,10 @@ return array ( 21640 => 'Tunisie Telecom', 21641 => 'Tunisie Telecom', 21642 => 'Tunisie Telecom', + 21643 => 'Lyca Mobile', 21644 => 'Tunisie Telecom', + 21645 => 'Watany Ettisalat', + 21646 => 'Ooredoo', 2165 => 'Orange', 2169 => 'Tunisie Telecom', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/245.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/245.php index f4ddc6f85..73cf4a877 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/245.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/245.php @@ -5,6 +5,8 @@ */ return array ( - 2455 => 'Orange', - 2456 => 'Areeba', + 245955 => 'Orange', + 245966 => 'Spacetel', + 245969 => 'Spacetel', + 245977 => 'Guinetel', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/252.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/252.php index 0dfd7fa58..428411b3a 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/252.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/252.php @@ -16,4 +16,12 @@ return array ( 25269 => 'Nationlink', 25279 => 'Somtel', 252907 => 'Golis Telecom', + 25292 => 'STG', + 25293 => 'STG', + 25294 => 'STG', + 25295 => 'STG', + 25296 => 'STG', + 25297 => 'STG', + 25298 => 'STG', + 25299 => 'STG', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/257.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/257.php index 566f2846e..786c7ef14 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/257.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/257.php @@ -6,10 +6,13 @@ return array ( 25729 => 'Leo', + 25761 => 'Viettel', + 25768 => 'Viettel', 25769 => 'Viettel', 25771 => 'Leo', + 25772 => 'Leo', 25775 => 'Smart Mobile', - 25776 => 'Econet', + 25776 => 'Leo', 25777 => 'Onatel', 25778 => 'Tempo', 25779 => 'Leo', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/354.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/354.php index 5b69d1a6f..690d6a91d 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/354.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/354.php @@ -8,7 +8,6 @@ return array ( 354385 => 'Síminn', 354388 => 'IMC', 354389 => 'IMC', - 354519 => 'Nova', 354611 => 'Tal', 354612 => 'Tal', 354613 => 'Tal', @@ -17,14 +16,26 @@ return array ( 354616 => 'Vodafone', 354617 => 'Vodafone', 354618 => 'Vodafone', - 354619 => 'Vodafone', + 35462 => 'Vodafone', 354630 => 'IMC', + 354638 => 'Öryggisfjarskipti', + 354639 => 'Öryggisfjarskipti', + 354640 => 'Öryggisfjarskipti', + 354641 => 'Öryggisfjarskipti', 354646 => 'IMC', 354647 => 'IMC', + 354649 => 'Vodafone', + 354650 => 'IMC', + 354651 => 'IMC', + 354655 => 'Vodafone', 354659 => 'Vodafone', 35466 => 'Vodafone', 35467 => 'Vodafone', 35469 => 'Vodafone', + 354750 => 'Síminn', + 354755 => 'Síminn', + 354757 => 'Vodafone', + 35476 => 'Nova', 35477 => 'Nova', 35478 => 'Nova', 35482 => 'Vodafone', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/357.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/357.php index 79c0b6db9..d52c3e90e 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/357.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/357.php @@ -6,6 +6,7 @@ return array ( 357123 => 'Cytamobile-Vodafone', + 35794 => 'Lemontel', 35795 => 'PrimeTel', 35796 => 'MTN', 35797 => 'Cytamobile-Vodafone', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/373.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/373.php index 090ae411a..579c5c5a8 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/373.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/373.php @@ -9,6 +9,7 @@ return array ( 37360 => 'Orange', 373610 => 'Orange', 373611 => 'Orange', + 373620 => 'Orange', 373621 => 'Orange', 373671 => 'Moldtelecom', 373672 => 'Moldtelecom', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/421.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/421.php index 647cdd826..116dd0301 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/421.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/421.php @@ -5,18 +5,26 @@ */ return array ( + 421901 => 'Telekom', + 421902 => 'Telekom', 421903 => 'Telekom', 421904 => 'Telekom', 421905 => 'Orange', 421906 => 'Orange', 421907 => 'Orange', 421908 => 'Orange', + 421910 => 'Telekom', + 421911 => 'Telekom', + 421912 => 'Telekom', + 421914 => 'Telekom', 421915 => 'Orange', 421916 => 'Orange', 421917 => 'Orange', 421918 => 'Orange', + 421919 => 'Orange', 421940 => 'O2', 421944 => 'O2', 421948 => 'O2', 421949 => 'O2', + 421950 => '4ka of SWAN', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/45.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/45.php index d9bfc4a49..334aaf65d 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/45.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/45.php @@ -15,15 +15,7 @@ return array ( 45208 => 'Telenor', 45209 => 'Telenor', 4521 => 'TDC', - 45221 => 'Telenor', - 45222 => 'Telenor', - 45223 => 'Telenor', - 45224 => 'Telenor', - 45225 => 'Telenor', - 45226 => 'Telenor', - 45227 => 'Telenor', - 45228 => 'Telenor', - 45229 => 'Telenor', + 4522 => 'Telenor', 45231 => 'TDC', 45232 => 'TDC', 45233 => 'TDC', @@ -49,12 +41,27 @@ return array ( 45254 => 'Telenor', 45255 => 'Telenor', 45256 => 'Telenor', - 452590 => 'Telenor', - 452591 => 'Telenor', - 452592 => 'Telenor', - 452593 => 'Telenor', - 452594 => 'Telenor', - 452595 => 'Telenor', + 45257 => 'Telenor', + 45258 => 'Telenor', + 452590 => 'MI Carrier Services', + 452591 => 'CoolTEL', + 452592 => 'CoolTEL', + 452593 => 'Compatel Limited', + 452594 => 'Firmafon', + 452595 => 'CoolTEL', + 452596 => 'Viptel', + 452597 => '3', + 4525980 => 'Uni-tel', + 4525981 => 'MobiWeb Limited', + 4525982 => 'Jay.net', + 4525983 => '42 Telecom AB', + 4525984 => 'CoolTEL', + 4525985 => '42 Telecom AB', + 4525986 => '42 Telecom AB', + 4525987 => 'Netfors Unified Messaging', + 4525988 => 'CoolTEL', + 4525989 => 'Ipnordic', + 452599 => 'Danovation', 4526 => 'Telia', 4527 => 'Telia', 4528 => 'Telia', @@ -63,7 +70,16 @@ return array ( 45311 => '3', 45312 => '3', 453130 => '3', - 4531312 => 'Telenor', + 4531310 => '3', + 4531311 => '3', + 4531312 => 'MI Carrier Services', + 4531313 => '3', + 4531314 => '3', + 4531315 => '3', + 4531316 => '3', + 4531317 => '3', + 4531318 => '3', + 4531319 => '3', 453132 => '3', 453133 => '3', 453134 => '3', @@ -71,24 +87,13 @@ return array ( 453136 => '3', 453137 => '3', 453138 => '3', - 453139 => 'Telenor', + 453139 => '3', 45314 => '3', 45315 => '3', 45316 => '3', 45317 => '3', - 45318 => '3', - 45320 => 'Telenor', - 45321 => 'Telenor', - 45322 => 'Telenor', - 45323 => 'Telenor', - 45324 => 'Telenor', - 45325 => 'Telenor', - 45326 => 'Telenor', - 45327 => 'Telenor', - 45328 => 'Telenor', - 45339692 => 'Telenor', - 45339693 => 'Telenor', - 4536874 => 'Telenor', + 45318 => 'Lycamobile Denmark Ltd', + 45319 => 'Telenor', 45401 => 'TDC', 45402 => 'TDC', 45403 => 'TDC', @@ -101,67 +106,78 @@ return array ( 45411 => 'Telenor', 45412 => 'Telenor', 45413 => 'Telenor', + 45414 => 'Telenor', + 45415 => 'Telenor', 45416 => 'Telenor', 45417 => 'Telenor', 45418 => 'Telenor', 45419 => 'Telenor', - 454210 => 'Telia', - 454212 => 'Telia', - 454213 => 'Telia', - 454214 => 'Telia', - 454217 => 'TDC', - 454220 => 'Telia', - 454221 => 'Telia', - 454222 => 'Telia', - 454223 => 'Telia', - 454224 => 'Telia', - 454225 => 'Telia', - 454226 => 'Telia', + 45421 => 'Telia', + 45422 => 'Telia', 45423 => 'Telia', - 45424 => 'Telenor', - 45425 => 'Telenor', - 454260 => 'Telenor', - 454270 => 'Telenor', + 45424 => 'BiBoB', + 45425 => 'BiBoB', + 454260 => 'BiBoB', + 454261 => '3', + 454262 => '3', + 454263 => '3', + 454264 => '3', + 454265 => '3', + 454266 => '3', + 454267 => '3', + 454268 => '3', + 454269 => '3', + 454270 => 'BiBoB', + 454271 => '3', + 454272 => '3', + 454273 => '3', + 454274 => '3', + 454275 => 'YouSee', 454276 => 'Telia', 454277 => 'Telia', 454278 => 'Telia', 454279 => 'Telia', - 45428 => 'Telenor', - 454290 => 'Telenor', - 454291 => 'Telenor', - 454292 => 'Telenor', - 454294 => 'Telenor', - 454295 => 'Telenor', + 454280 => 'BiBoB', + 454281 => 'CBB Mobil', + 454282 => 'Telia', + 454283 => '3', + 454284 => 'CBB Mobil', + 454285 => 'CBB Mobil', + 454286 => 'Telia', + 454287 => 'CBB Mobil', + 454288 => 'CBB Mobil', + 454289 => 'CBB Mobil', + 454290 => 'Mundio Mobile', + 454291 => '3', + 454292 => '3', + 454293 => 'CBB Mobil', + 454294 => '3', + 454295 => '3', 454296 => 'Telia', 454297 => 'Telia', 454298 => 'Telia', 454299 => 'Telia', - 455010 => 'Telenor', - 455011 => 'Telenor', - 455012 => 'Telenor', - 455013 => 'Telenor', - 455014 => 'Telenor', - 45502 => 'Telenor', - 455030 => 'Telenor', - 455032 => 'Telenor', - 455035 => 'Telenor', - 455037 => 'Telenor', - 455046 => 'Telenor', - 45505 => 'Telenor', - 455060 => 'TDC', - 455061000 => 'TDC', - 455062 => 'Telenor', - 455063 => 'Telenor', - 455064 => 'Telenor', - 455065 => 'Telenor', - 455066 => 'Telenor', - 455067 => 'Telenor', - 455068 => 'Telenor', - 455069 => 'Telenor', + 455015 => 'Lebara Limited', + 455016 => 'Lebara Limited', + 455017 => 'Lebara Limited', + 455018 => 'Lebara Limited', + 455019 => 'Lebara Limited', + 45502 => 'Lebara Limited', + 45503 => 'Lebara Limited', + 45504 => 'CBB Mobil', + 45505 => 'CBB Mobil', + 455060 => 'ipvision', + 455061 => 'Mach Connectivity', + 455062 => 'CBB Mobil', + 455063 => 'Mundio Mobile', + 455064 => 'Lycamobile Denmark Ltd', + 455065 => 'Lebara Limited', + 455066 => 'CBB Mobil', + 455067 => 'CBB Mobil', + 455068 => 'CBB Mobil', 45507 => 'Telenor', 45508 => 'Telenor', 45509 => 'Telenor', - 45510 => 'TDC', 45511 => 'TDC', 45512 => 'TDC', 45513 => 'TDC', @@ -180,8 +196,9 @@ return array ( 455188 => 'Telia', 455189 => 'Telia', 45519 => 'TDC', - 455210 => 'Telenor', - 455212 => 'Telenor', + 455210 => 'Firstcom', + 455211 => '3', + 455212 => '3', 455213 => 'Telia', 455214 => 'Telia', 455215 => 'Telia', @@ -189,76 +206,101 @@ return array ( 455217 => 'Telia', 455218 => 'Telia', 455219 => 'Telia', + 455220 => 'CoolTEL', 455221 => 'Telia', - 455222 => 'Telenor', + 455222 => 'Lebara Limited', 455223 => 'Telia', 455224 => 'Telia', - 455225 => 'Telenor', + 455225 => 'CBB Mobil', 455226 => 'Telia', 455227 => 'Telia', 455228 => 'Telia', 455229 => 'Telia', + 455230 => 'YouSee', 455231 => 'Telia', 455232 => 'Telia', - 455233 => 'Telenor', + 455233 => 'CBB Mobil', 455234 => 'Telia', 455235 => 'Telia', 455236 => 'Telia', 455237 => 'Telia', 455238 => 'Telia', 455239 => 'Telia', + 455240 => 'YouSee', 455241 => 'Telia', - 455242 => 'Telenor', + 455242 => 'CBB Mobil', 455243 => 'Telia', - 455244 => 'Telenor', + 455244 => 'CBB Mobil', 455245 => 'Telia', 455246 => 'Telia', 455247 => 'Telia', 455248 => 'Telia', 455249 => 'Telia', - 455251 => 'Telenor', - 455252 => 'Telenor', - 455253 => 'Telenor', - 455254 => 'Telenor', - 455255 => 'Telenor', - 455256 => 'Telenor', - 455257 => 'Telenor', - 455258 => 'Telenor', - 455259 => 'Telenor', - 45526 => 'Telenor', - 45527 => 'Telenor', - 455280 => 'Telenor', - 455281 => 'Telenor', - 455282 => 'Telenor', - 455283 => 'Telenor', - 455284 => 'Telenor', - 455285 => 'Telenor', - 455286 => 'Telenor', - 455287 => 'Telenor', - 455288 => 'Telenor', - 455290 => 'Telenor', - 455291 => 'Telenor', - 455292 => 'Telenor', - 455293 => 'Telenor', - 455294 => 'Telenor', - 455295 => 'Telenor', - 455296 => 'Telenor', - 455297 => 'Telenor', - 455298 => 'Telenor', - 455310 => 'Telenor', - 455312 => 'Telenor', - 455313 => 'Telenor', - 455314 => 'Telenor', - 455315 => 'Telenor', - 455316 => 'Telenor', - 455317 => 'Telenor', - 455318 => 'Telenor', + 455250 => 'YouSee', + 455251 => 'Jay.net', + 455252 => 'Lebara Limited', + 455253 => 'CBB Mobil', + 455254 => 'SimService', + 455255 => 'CBB Mobil', + 455256 => 'SimService', + 455257 => 'SimService', + 455258 => 'YouSee', + 455259 => '42 Telecom AB', + 455260 => 'Lebara Limited', + 455261 => 'Lebara Limited', + 455262 => 'CBB Mobil', + 455263 => 'Lebara Limited', + 455264 => 'Lebara Limited', + 455265 => 'Lebara Limited', + 455266 => 'CBB Mobil', + 455267 => 'Lebara Limited', + 455268 => 'Lebara Limited', + 455269 => 'Lebara Limited', + 455270 => 'Lebara Limited', + 455271 => 'Lebara Limited', + 455272 => 'Lebara Limited', + 455273 => 'Lebara Limited', + 455274 => 'Lebara Limited', + 455275 => 'Lebara Limited', + 455276 => 'Lebara Limited', + 455277 => 'CBB Mobil', + 455278 => 'Lebara Limited', + 455279 => 'Lebara Limited', + 455280 => 'Lebara Limited', + 455281 => 'Lebara Limited', + 455282 => 'Lebara Limited', + 455283 => 'CBB Mobil', + 455284 => 'CBB Mobil', + 455285 => 'CBB Mobil', + 455286 => 'CBB Mobil', + 455287 => 'CBB Mobil', + 455288 => 'CBB Mobil', + 455289 => 'CBB Mobil', + 455290 => 'Lebara Limited', + 455291 => 'CBB Mobil', + 455292 => 'CBB Mobil', + 455293 => 'CBB Mobil', + 455294 => 'CBB Mobil', + 455295 => 'CBB Mobil', + 455296 => 'CBB Mobil', + 455297 => 'CBB Mobil', + 455298 => 'CBB Mobil', + 455299 => 'CBB Mobil', + 455310 => 'CBB Mobil', + 455311 => 'CBB Mobil', + 455312 => 'CBB Mobil', + 455313 => 'CBB Mobil', + 455314 => 'CBB Mobil', + 455315 => 'CBB Mobil', + 455316 => 'CBB Mobil', + 455317 => 'CBB Mobil', + 455318 => 'CBB Mobil', 455319 => 'Telia', - 455322 => 'Telia', - 455323 => 'Telia', + 45532 => 'Telia', 455330 => 'Telia', 455331 => 'Telia', - 455333 => 'TDC', + 455332 => 'Telia', + 455333 => 'Lebara Limited', 455334 => 'Telia', 455335 => 'Telia', 455336 => 'Telia', @@ -268,40 +310,45 @@ return array ( 45534 => 'Telia', 45535 => '3', 45536 => '3', - 455370 => '3', - 455371 => '3', - 455372 => '3', - 455373 => '3', - 455374 => '3', - 455375 => '3', - 455390 => 'Telenor', - 455391 => 'Telenor', - 455392 => 'Telenor', - 455393 => 'Telenor', - 455394 => 'Telenor', - 455395 => 'Telenor', - 455396 => 'Telenor', - 455397 => 'Telenor', - 455399 => 'Telenor', + 45537 => '3', + 45538 => '3', + 455390 => 'CBB Mobil', + 455391 => 'CBB Mobil', + 455392 => 'CBB Mobil', + 455393 => 'CBB Mobil', + 455394 => 'CBB Mobil', + 455395 => 'CBB Mobil', + 455396 => 'CBB Mobil', + 455397 => 'CBB Mobil', + 455398 => 'NextGen Mobile Ldt T/A CardBoardFish', + 455399 => 'CBB Mobil', 45601 => 'Telia', 45602 => 'Telia', 45603 => 'Telia', 45604 => 'Telia', - 45605 => 'Telenor', - 45606 => 'Telenor', - 45607 => 'Telenor', - 45608 => 'Telenor', - 456090 => 'Telenor', + 456050 => 'Telenor', + 456051 => '3', + 456052 => '3', + 456053 => '3', + 456054 => '3', + 456055 => '3', + 456056 => '3', + 456057 => '3', + 456058 => '3', + 456059 => '3', + 45606 => 'CBB Mobil', + 45607 => 'CBB Mobil', + 45608 => 'CBB Mobil', + 456090 => 'Lebara Limited', 456091 => 'Telenor', 456092 => 'Telenor', 456093 => 'Telenor', 456094 => 'Telenor', 456095 => 'Telenor', - 456096 => 'Telenor', - 456097 => 'Telenor', - 456098 => 'Telenor', - 456099 => 'TDC', - 45610 => 'TDC', + 456096 => 'Tripple Track Europe', + 456097 => 'Tripple Track Europe', + 456098 => 'Telavox', + 456099 => 'Mach Connectivity', 45611 => 'TDC', 45612 => 'TDC', 45613 => 'TDC', @@ -313,46 +360,234 @@ return array ( 456145 => 'TDC', 456146 => 'Telia', 456147 => 'TDC', + 456148 => 'TDC', + 456149 => 'TDC', 45615 => 'TDC', 45616 => 'TDC', 45617 => 'TDC', - 45631 => 'Telenor', - 4570304 => 'Telenor', - 4570343 => 'Telenor', - 457110 => 'Telenor', - 457111 => 'Telenor', - 457112 => 'Telenor', - 457113 => 'Telenor', - 457114 => 'Telenor', - 457115 => 'Telenor', + 45618 => 'Telenor', + 45619 => 'Telenor', + 45711 => 'CBB Mobil', + 45712 => 'CBB Mobil', 45713 => 'Lycamobile Denmark Ltd', + 45714 => 'Lycamobile Denmark Ltd', + 45715 => 'Lycamobile Denmark Ltd', + 45716 => 'Lycamobile Denmark Ltd', + 457170 => 'YouSee', + 457171 => 'Maxtel.dk', + 457172 => 'YouSee', + 457173 => 'CBB Mobil', + 457175 => 'Telenor', + 457176 => 'Telenor', + 457177 => 'TDC', + 457178 => 'Telenor', + 457179 => 'Telenor', 45718 => 'Lycamobile Denmark Ltd', - 45721 => 'Telenor', - 45722 => 'Telenor', - 45723 => 'Telenor', - 45724 => 'Telenor', - 45725 => 'Telenor', - 45726 => 'Telenor', - 457810 => 'Telenor', - 457811 => 'Telenor', - 4580103 => 'Telenor', - 4580104 => 'Telenor', + 457190 => 'Phone-IT', + 457191 => 'Telecom X', + 457192 => 'Justfone', + 457193 => 'CBB Mobil', + 457194 => 'Telenor', + 457195 => 'Telenor', + 457196 => 'Mundio Mobile', + 457197 => 'Mundio Mobile', + 457198 => 'Mundio Mobile', + 457199 => 'Firmafon', + 458110 => 'ipvision', + 458111 => 'Evercall', + 458112 => 'CBB Mobil', + 458113 => 'CBB Mobil', + 458114 => 'CBB Mobil', + 458115 => 'CBB Mobil', + 458116 => 'CBB Mobil', + 458117 => 'CBB Mobil', + 458118 => 'CBB Mobil', + 458119 => 'CBB Mobil', + 45812 => 'CBB Mobil', + 458130 => 'CBB Mobil', + 458131 => 'CBB Mobil', + 458132 => 'CBB Mobil', + 458133 => 'CBB Mobil', + 458134 => 'CBB Mobil', + 458135 => 'CBB Mobil', + 458136 => 'CBB Mobil', + 4581370 => 'Flexonet', + 4581371 => 'CLX Networks AB', + 4581372 => 'Interfone International', + 4581373 => 'M Mobility', + 458138 => 'Mundio Mobile', + 458139 => 'Mundio Mobile', + 458141 => 'Simpl Telecom', + 458145 => 'Telavox', + 458146 => 'Mundio Mobile', + 458147 => 'Mundio Mobile', + 458148 => 'Mundio Mobile', + 458149 => 'Mundio Mobile', + 45815 => 'CBB Mobil', + 458160 => 'CBB Mobil', + 458161 => 'YouSee', + 458162 => 'CBB Mobil', + 458163 => 'CBB Mobil', + 458164 => 'CBB Mobil', + 458165 => 'CBB Mobil', + 458166 => 'CBB Mobil', + 458167 => 'CBB Mobil', + 458168 => 'CBB Mobil', + 458169 => 'CBB Mobil', + 458170 => 'CBB Mobil', + 458171 => 'YouSee', + 458172 => 'Fullrate', + 458173 => 'YouSee', + 458174 => 'YouSee', + 458175 => 'YouSee', + 458176 => 'CBB Mobil', + 458177 => 'ipvision', + 458178 => 'CBB Mobil', + 458179 => 'CBB Mobil', + 458180 => 'ipvision', + 458181 => 'Maxtel.dk', + 458182 => 'Polperro', + 458183 => 'CBB Mobil', + 458184 => 'CBB Mobil', + 458185 => 'CBB Mobil', + 458186 => 'CBB Mobil', + 458187 => 'CBB Mobil', + 458188 => 'ipvision', + 458189 => 'CBB Mobil', + 458190 => 'Lebara Limited', + 458191 => 'Lebara Limited', + 458192 => 'Lebara Limited', + 458193 => 'Lebara Limited', + 458194 => 'Lebara Limited', + 458195 => 'CBB Mobil', + 458196 => 'CBB Mobil', + 458197 => 'CBB Mobil', + 458198 => 'CBB Mobil', + 458199 => 'Banedanmark', + 459110 => 'Lebara Limited', + 459111 => 'Lebara Limited', + 459112 => 'SimService', + 459113 => 'SimService', + 459114 => 'SimService', + 459115 => 'Companymobile', + 459116 => 'Companymobile', + 459117 => 'Companymobile', + 459118 => 'Companymobile', + 459119 => 'Lebara Limited', + 459120 => 'Tismi BV', + 459121 => 'SimService', + 459122 => 'Companymobile', + 459123 => 'Companymobile', + 459124 => 'Companymobile', + 459125 => 'Companymobile', + 459126 => 'Mundio Mobile', + 459127 => 'Mundio Mobile', + 459128 => 'Mundio Mobile', + 459129 => 'Mundio Mobile', + 459130 => 'MobiWeb Limited', + 459131 => 'Telenor', + 459132 => 'Telenor', + 459133 => 'Telenor', + 459134 => 'Telenor', + 459135 => 'Telenor', + 459136 => 'Telenor', + 459137 => 'Telenor', + 459138 => 'Telenor', + 459139 => 'Telenor', 45914 => 'Lycamobile Denmark Ltd', + 459150 => 'Telenor Connexion AB', + 459151 => 'Telenor Connexion AB', + 459152 => 'TDC', + 459153 => 'TDC', + 459154 => 'TDC', + 459155 => 'TDC', + 459156 => 'TDC', + 459157 => 'Mundio Mobile', + 459158 => 'NextGen Mobile Ldt T/A CardBoardFish', + 459159 => 'SimService', 45916 => 'Lycamobile Denmark Ltd', 45917 => 'Lycamobile Denmark Ltd', - 459694485 => 'Telenor', - 459694486 => 'Telenor', - 459694487 => 'Telenor', - 459694488 => 'Telenor', - 459694489 => 'Telenor', - 45969449 => 'Telenor', - 45969450 => 'Telenor', - 45969451 => 'Telenor', - 45969452 => 'Telenor', - 45969453 => 'Telenor', - 45969454 => 'Telenor', - 45969455 => 'Telenor', - 45969456 => 'Telenor', - 459951 => 'Telenor', - 459955 => 'Telenor', + 459180 => 'Lebara Limited', + 459181 => 'Lebara Limited', + 459182 => 'Lebara Limited', + 459183 => 'Lebara Limited', + 459184 => 'Lebara Limited', + 459185 => 'Lebara Limited', + 459186 => 'Lebara Limited', + 459187 => 'Lebara Limited', + 459188 => 'Lebara Limited', + 459189 => 'Uni-tel', + 459190 => 'Interactive digital media GmbH', + 459191 => 'Maxtel.dk', + 459192 => 'Lebara Limited', + 459193 => 'Lebara Limited', + 459194 => 'Lebara Limited', + 459195 => 'Lebara Limited', + 459196 => 'Lebara Limited', + 459197 => 'Lebara Limited', + 459198 => 'Lebara Limited', + 459199 => 'Lebara Limited', + 459210 => 'Companymobile', + 459211 => 'Companymobile', + 459212 => 'Companymobile', + 459213 => 'Companymobile', + 459214 => 'Companymobile', + 459215 => 'Companymobile', + 459216 => 'Companymobile', + 459217 => 'Interactive digital media GmbH', + 459218 => 'Telenor Connexion AB', + 459219 => 'Telenor Connexion AB', + 459220 => 'Telenor Connexion AB', + 459221 => 'SimService', + 459222 => 'Bolignet-Aarhus F.M.B.A.', + 459223 => '42 Telecom AB', + 459224 => 'SimService', + 459225 => 'Mundio Mobile', + 459226 => 'Mundio Mobile', + 459227 => 'Mundio Mobile', + 459228 => 'Mundio Mobile', + 459229 => 'Beepsend AB', + 459243 => 'Companymobile', + 459244 => 'Ipnordic', + 459245 => 'Compatel Limited', + 459246 => 'Telenor Connexion AB', + 459247 => 'Telenor Connexion AB', + 459248 => 'Telenor Connexion AB', + 459249 => 'Telenor Connexion AB', + 45925 => 'Telenor Connexion AB', + 45926 => 'Telenor Connexion AB', + 459270 => 'Ice Danmark', + 459271 => 'Naka AG', + 459272 => 'Thyfon', + 459273 => 'Telenor Connexion AB', + 459274 => 'Telenor Connexion AB', + 459275 => 'Telenor Connexion AB', + 459276 => 'Telenor Connexion AB', + 459277 => 'Telenor Connexion AB', + 459278 => 'Telenor Connexion AB', + 459279 => 'Telenor Connexion AB', + 459280 => 'Voxbone', + 459282 => 'Flexfone', + 459290 => 'Justfone', + 459292 => 'Mobil Data', + 459293 => 'SimService', + 459294 => 'SimService', + 459295 => 'SimService', + 459296 => 'SimService', + 459297 => 'SimService', + 459298 => 'SimService', + 459299 => 'ipvision', + 459310 => 'Justfone', + 459311 => 'MobiWeb Limited', + 459312 => 'SimService', + 459313 => 'SimService', + 459314 => 'SimService', + 459315 => 'SimService', + 459320 => 'Justfone', + 459330 => 'Justfone', + 459333 => 'Onoffapp', + 459339 => 'Uni-tel', + 459340 => 'Justfone', + 45935 => 'Telenor', + 45939 => '3', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/62.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/62.php index 9437a4ce9..f2e589ede 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/62.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/62.php @@ -673,6 +673,7 @@ return array ( 62887 => 'Smartfren', 62888 => 'Smartfren', 62889 => 'Smartfren', + 62895 => 'Hutchison', 62896 => '3', 62897 => '3', 62898 => '3', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/686.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/686.php index 5f57626d5..3504362d9 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/686.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/686.php @@ -6,6 +6,6 @@ return array ( 6866 => 'TSKL', - 6867 => 'TSKL', + 6867 => 'ATHKL', 6869 => 'TSKL', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/853.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/853.php new file mode 100644 index 000000000..58dd685ce --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/853.php @@ -0,0 +1,310 @@ + 'SmarTone', + 8536201 => 'CTM', + 8536202 => 'CTM', + 8536203 => 'CTM', + 8536204 => 'CTM', + 8536205 => 'CTM', + 8536206 => 'CTM', + 8536207 => 'CTM', + 8536208 => 'CTM', + 8536209 => 'CTM', + 853621 => 'China Telecom', + 853622 => '3', + 853623 => 'CTM', + 8536240 => '3', + 8536241 => '3', + 8536242 => 'CTM', + 8536243 => 'CTM', + 8536244 => 'SmarTone', + 8536245 => 'SmarTone', + 8536246 => '3', + 8536247 => '3', + 8536248 => '3', + 8536249 => '3', + 8536250 => 'CTM', + 8536251 => 'CTM', + 8536252 => 'CTM', + 8536253 => 'CTM', + 8536254 => 'SmarTone', + 8536255 => 'SmarTone', + 8536256 => 'SmarTone', + 8536257 => 'SmarTone', + 8536258 => 'SmarTone', + 8536259 => 'SmarTone', + 8536260 => 'SmarTone', + 8536261 => 'SmarTone', + 8536262 => 'SmarTone', + 8536263 => 'SmarTone', + 8536264 => 'CTM', + 8536265 => 'CTM', + 8536266 => 'CTM', + 8536267 => 'CTM', + 8536268 => 'SmarTone', + 8536269 => 'SmarTone', + 8536270 => 'SmarTone', + 8536271 => 'SmarTone', + 8536272 => 'CTM', + 8536273 => 'CTM', + 8536274 => 'CTM', + 8536275 => 'CTM', + 8536276 => '3', + 8536277 => '3', + 8536278 => '3', + 8536279 => '3', + 853628 => 'CTM', + 8536290 => 'CTM', + 8536291 => 'CTM', + 8536292 => '3', + 8536293 => '3', + 8536294 => '3', + 8536295 => '3', + 8536296 => 'CTM', + 8536297 => 'CTM', + 8536298 => 'CTM', + 8536299 => 'CTM', + 8536300 => 'CTM', + 8536301 => 'CTM', + 8536302 => 'CTM', + 8536303 => '3', + 8536304 => '3', + 8536305 => '3', + 8536306 => '3', + 8536307 => '3', + 8536308 => '3', + 8536309 => 'CTM', + 853631 => '3', + 8536320 => '3', + 8536321 => '3', + 8536322 => 'China Telecom', + 8536323 => 'China Telecom', + 8536324 => 'CTM', + 8536325 => 'CTM', + 8536326 => 'CTM', + 8536327 => 'CTM', + 8536328 => 'CTM', + 8536329 => 'CTM', + 8536330 => 'CTM', + 8536331 => 'CTM', + 8536332 => 'CTM', + 8536333 => 'CTM', + 8536334 => 'CTM', + 8536335 => 'CTM', + 8536336 => '3', + 8536337 => '3', + 8536338 => '3', + 8536339 => '3', + 8536340 => 'China Telecom', + 8536341 => 'China Telecom', + 8536342 => 'China Telecom', + 8536343 => 'China Telecom', + 8536344 => '3', + 8536345 => 'CTM', + 8536346 => 'CTM', + 8536347 => 'CTM', + 8536348 => 'CTM', + 8536349 => 'CTM', + 853635 => 'China Telecom', + 853636 => 'SmarTone', + 8536370 => 'China Telecom', + 8536371 => 'China Telecom', + 8536372 => 'China Telecom', + 8536373 => 'China Telecom', + 8536374 => 'China Telecom', + 8536375 => 'China Telecom', + 8536376 => 'China Telecom', + 8536377 => 'China Telecom', + 8536378 => '3', + 8536379 => '3', + 8536380 => '3', + 8536381 => '3', + 8536382 => '3', + 8536383 => '3', + 8536384 => '3', + 8536385 => '3', + 8536386 => 'China Telecom', + 8536387 => 'China Telecom', + 8536388 => 'China Telecom', + 8536389 => 'China Telecom', + 8536390 => 'China Telecom', + 8536391 => 'China Telecom', + 8536392 => 'CTM', + 8536393 => 'CTM', + 8536394 => 'CTM', + 8536395 => 'CTM', + 8536396 => 'CTM', + 8536397 => 'CTM', + 8536398 => '3', + 8536399 => '3', + 8536500 => '3', + 8536501 => '3', + 8536502 => '3', + 8536503 => '3', + 8536504 => '3', + 8536515 => 'CTM', + 8536516 => 'CTM', + 8536517 => 'CTM', + 8536518 => 'CTM', + 8536519 => 'CTM', + 8536520 => 'China Telecom', + 8536521 => 'China Telecom', + 8536522 => 'China Telecom', + 8536523 => 'China Telecom', + 8536524 => 'CTM', + 8536525 => 'CTM', + 8536526 => 'CTM', + 8536527 => 'CTM', + 8536528 => 'CTM', + 8536529 => 'CTM', + 8536530 => 'CTM', + 8536531 => 'CTM', + 8536532 => '3', + 8536533 => '3', + 8536534 => '3', + 8536535 => '3', + 8536536 => 'CTM', + 8536537 => 'CTM', + 8536538 => 'CTM', + 8536539 => 'CTM', + 8536540 => '3', + 8536541 => '3', + 85365421 => '3', + 85365422 => '3', + 85365423 => '3', + 85365424 => '3', + 85365425 => 'China Telecom', + 85365426 => 'China Telecom', + 85365427 => 'China Telecom', + 85365428 => 'China Telecom', + 85365429 => 'China Telecom', + 8536543 => 'China Telecom', + 8536544 => 'China Telecom', + 8536545 => 'CTM', + 8536546 => 'CTM', + 85365470 => 'CTM', + 85365471 => 'CTM', + 85365472 => 'CTM', + 85365473 => 'CTM', + 85365474 => 'CTM', + 85365475 => 'SmarTone', + 85365476 => 'SmarTone', + 85365477 => 'SmarTone', + 85365478 => 'SmarTone', + 85365479 => 'SmarTone', + 8536548 => 'SmarTone', + 8536549 => 'SmarTone', + 8536550 => 'CTM', + 8536551 => 'CTM', + 8536552 => 'CTM', + 8536553 => 'CTM', + 8536554 => 'CTM', + 8536555 => 'CTM', + 8536556 => 'China Telecom', + 8536557 => 'China Telecom', + 8536558 => 'China Telecom', + 8536559 => 'China Telecom', + 8536560 => 'China Telecom', + 8536561 => 'China Telecom', + 8536568 => 'China Telecom', + 8536569 => 'China Telecom', + 8536570 => 'China Telecom', + 8536571 => 'China Telecom', + 8536572 => 'China Telecom', + 8536573 => 'China Telecom', + 8536574 => '3', + 8536575 => '3', + 8536576 => '3', + 8536577 => '3', + 8536578 => '3', + 8536579 => '3', + 8536580 => 'China Telecom', + 8536581 => 'China Telecom', + 8536582 => 'China Telecom', + 8536583 => 'China Telecom', + 8536584 => 'China Telecom', + 8536585 => 'China Telecom', + 8536586 => 'CTM', + 8536587 => 'CTM', + 8536588 => 'CTM', + 8536589 => 'CTM', + 8536590 => 'CTM', + 8536591 => 'CTM', + 8536598 => 'China Telecom', + 8536599 => 'China Telecom', + 85366001 => 'CTM', + 8536601 => 'CTM', + 8536602 => 'SmarTone', + 8536603 => '3', + 85366046 => 'SmarTone', + 8536605 => 'China Telecom', + 8536610 => '3', + 8536611 => '3', + 8536612 => 'CTM', + 8536613 => 'CTM', + 8536614 => 'SmarTone', + 8536615 => 'SmarTone', + 8536616 => '3', + 8536617 => '3', + 8536618 => 'CTM', + 8536619 => 'CTM', + 853662 => 'SmarTone', + 853663 => '3', + 8536640 => 'SmarTone', + 8536641 => 'SmarTone', + 8536642 => '3', + 8536643 => '3', + 8536644 => '3', + 8536645 => '3', + 8536646 => '3', + 8536647 => 'CTM', + 8536648 => '3', + 8536649 => 'China Telecom', + 8536650 => 'CTM', + 8536651 => 'CTM', + 8536652 => 'CTM', + 8536653 => 'CTM', + 8536654 => 'CTM', + 8536655 => 'CTM', + 8536656 => '3', + 8536657 => '3', + 8536658 => 'CTM', + 8536659 => 'CTM', + 853666 => 'CTM', + 8536670 => 'China Telecom', + 8536671 => 'China Telecom', + 8536672 => 'CTM', + 8536673 => 'SmarTone', + 8536674 => '3', + 8536675 => 'CTM', + 8536676 => '3', + 8536677 => 'CTM', + 8536678 => 'SmarTone', + 8536679 => 'CTM', + 853668 => 'CTM', + 8536690 => 'Kong Seng', + 8536691 => 'Kong Seng', + 8536692 => 'CTM', + 8536693 => 'CTM', + 8536694 => '3', + 8536695 => '3', + 8536696 => 'CTM', + 8536697 => '3', + 8536698 => 'CTM', + 8536699 => 'China Telecom', + 8536810 => 'CTM', + 8536811 => 'CTM', + 8536812 => 'CTM', + 8536813 => 'CTM', + 8536814 => 'CTM', + 8536880 => 'CTM', + 8536881 => 'CTM', + 8536882 => 'CTM', + 8536883 => 'CTM', + 8536884 => 'CTM', +); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/964.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/964.php index 72e51df93..50d83a98f 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/964.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/964.php @@ -5,9 +5,17 @@ */ return array ( + 9647400 => 'Itisaluna', + 9647401 => 'Itisaluna', + 9647435 => 'Kalimat', + 9647444 => 'Mobitel', + 9647480 => 'ITC Fanoos', + 9647481 => 'ITC Fanoos', + 9647491 => 'ITPC', + 9647494 => 'Imam Hussien Holy Shrine', 96475 => 'Korek', 96476 => 'Omnnea', - 96477 => 'Asia Cell', + 96477 => 'Asiacell', 96478 => 'Zain', 96479 => 'Zain', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/968.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/968.php index e2c9ceb0b..b9902d3fd 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/968.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/968.php @@ -5,8 +5,14 @@ */ return array ( - 96894 => 'Nawras', - 96895 => 'Nawras', - 96896 => 'Nawras', - 96897 => 'Nawras', + 96890 => 'Omantel/Ooredoo', + 96891 => 'Omantel', + 96892 => 'Omantel', + 96893 => 'Omantel', + 96894 => 'Ooredoo', + 96895 => 'Ooredoo', + 96896 => 'Ooredoo', + 96897 => 'Ooredoo', + 96898 => 'Omantel', + 96899 => 'Omantel', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/972.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/972.php index 9bb661b50..bc1ed4ef4 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/972.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/972.php @@ -7,11 +7,13 @@ return array ( 97250 => 'Pelephone', 97252 => 'Cellcom', - 97253 => 'Mirs - Hot Mobile', + 97253 => 'Hot Mobile', 97254 => 'Orange', 9725501 => 'Beezz', 9725522 => 'Home Cellular', 9725523 => 'Home Cellular', + 9725532 => 'Free Telecom', + 9725533 => 'Free Telecom', 9725566 => 'Rami Levy', 9725567 => 'Rami Levy', 9725570 => 'Cellact', @@ -19,12 +21,12 @@ return array ( 9725587 => 'Alon', 9725588 => 'Alon', 9725589 => 'Alon', - 9725596 => 'Azi Communications', - 9725597 => 'Azi Communications', - 9725598 => 'Azi Communications', - 9725599 => 'Azi Communications', + 9725596 => 'Telzar', + 9725597 => 'Telzar', + 9725598 => 'Telzar', + 9725599 => 'Telzar', 97256 => 'Wataniya', - 97257 => 'Mirs - Hot Mobile', + 97257 => 'Hot Mobile', 97258 => 'Golan Telecom', 97259 => 'Jawwal', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/975.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/975.php index bf0fce5b0..60537f2c0 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/975.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/975.php @@ -5,5 +5,7 @@ */ return array ( + 97516 => 'B-Mobile of Bhutan Telecom', 97517 => 'B-Mobile of Bhutan Telecom', + 97577 => 'TashiCell of Tashi InfoComm', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/976.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/976.php index cf4894f39..f409e1f00 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/976.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/carrier/data/en/976.php @@ -6,6 +6,9 @@ return array ( 97680 => 'Unitel', + 976830 => 'G-Mobile', + 976831 => 'G-Mobile', + 97685 => 'Mobicom', 97686 => 'Unitel', 97688 => 'Unitel', 97689 => 'Unitel', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_AT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_AT.php index e7d26ba96..be287c2cc 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_AT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_AT.php @@ -73,18 +73,17 @@ return array ( array ( 'NationalNumberPattern' => ' 6(?: - 44| 5[0-3579]| 6[013-9]| [7-9]\\d )\\d{4,10} ', 'PossibleNumberPattern' => '\\d{7,13}', - 'ExampleNumber' => '644123456', + 'ExampleNumber' => '664123456', ), 'tollFree' => array ( - 'NationalNumberPattern' => '80[02]\\d{6,10}', + 'NationalNumberPattern' => '800\\d{6,10}', 'PossibleNumberPattern' => '\\d{9,13}', 'ExampleNumber' => '800123456', ), @@ -92,7 +91,6 @@ return array ( array ( 'NationalNumberPattern' => ' (?: - 711| 9(?: 0[01]| 3[019] @@ -106,11 +104,14 @@ return array ( array ( 'NationalNumberPattern' => ' 8(?: - 10| - 2[018] - )\\d{6,10} + 10\\d| + 2(?: + [01]\\d| + 8\\d? + ) + )\\d{5,9} ', - 'PossibleNumberPattern' => '\\d{9,13}', + 'PossibleNumberPattern' => '\\d{8,13}', 'ExampleNumber' => '810123456', ), 'personalNumber' => @@ -183,6 +184,17 @@ return array ( 'numberFormat' => array ( 0 => + array ( + 'pattern' => '(116\\d{3})', + 'format' => '$1', + 'leadingDigitsPatterns' => + array ( + 0 => '116', + ), + 'nationalPrefixFormattingRule' => '$1', + 'domesticCarrierCodeFormattingRule' => '', + ), + 1 => array ( 'pattern' => '(1)(\\d{3,12})', 'format' => '$1 $2', @@ -193,7 +205,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 1 => + 2 => array ( 'pattern' => '(5\\d)(\\d{3,5})', 'format' => '$1 $2', @@ -204,7 +216,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 2 => + 3 => array ( 'pattern' => '(5\\d)(\\d{3})(\\d{3,4})', 'format' => '$1 $2 $3', @@ -215,7 +227,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 3 => + 4 => array ( 'pattern' => '(5\\d)(\\d{4})(\\d{4,7})', 'format' => '$1 $2 $3', @@ -226,7 +238,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 4 => + 5 => array ( 'pattern' => '(\\d{3})(\\d{3,10})', 'format' => '$1 $2', @@ -238,12 +250,10 @@ return array ( 51| 732| 6(?: - 44| 5[0-3579]| [6-9] )| 7(?: - 1| [28]0 )| [89] @@ -252,7 +262,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 5 => + 6 => array ( 'pattern' => '(\\d{4})(\\d{3,9})', 'format' => '$1 $2', @@ -268,7 +278,7 @@ return array ( 5[2-6]| 6(?: [12]| - 4[1-35-9]| + 4[1-9]| 5[468] )| 7(?: diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BB.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BB.php index 609edf42c..66105ab61 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BB.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BB.php @@ -13,20 +13,54 @@ return array ( ), 'fixedLine' => array ( - 'NationalNumberPattern' => '246[2-9]\\d{6}', + 'NationalNumberPattern' => ' + 246(?: + 2(?: + 2[78]| + 7[0-4] + )| + 4(?: + 1[024-6]| + 2\\d| + 3[2-9] + )| + 5(?: + 20| + [34]\\d| + 54| + 7[1-3] + )| + 6(?: + 2\\d| + 38 + )| + 7(?: + 37| + 57 + )| + 9(?: + 1[89]| + 63 + ) + )\\d{4} + ', 'PossibleNumberPattern' => '\\d{7}(?:\\d{3})?', - 'ExampleNumber' => '2462345678', + 'ExampleNumber' => '2464123456', ), 'mobile' => array ( 'NationalNumberPattern' => ' 246(?: - (?: - 2[346]| - 45| - 82 - )\\d| - 25[0-46] + 2(?: + [356]\\d| + 4[0-57-9]| + 8[0-79] + )| + 45\\d| + 8(?: + [2-5]\\d| + 83 + ) )\\d{4} ', 'PossibleNumberPattern' => '\\d{10}', @@ -49,7 +83,10 @@ return array ( ), 'premiumRate' => array ( - 'NationalNumberPattern' => '900[2-9]\\d{6}', + 'NationalNumberPattern' => ' + 900\\d{7}| + 246976\\d{4} + ', 'PossibleNumberPattern' => '\\d{10}', 'ExampleNumber' => '9002123456', ), @@ -67,15 +104,16 @@ return array ( 44| 66| 77 - )[2-9]\\d{6} + )[2-9]\\d{3} ', 'PossibleNumberPattern' => '\\d{10}', 'ExampleNumber' => '5002345678', ), 'voip' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '24631\\d{5}', + 'PossibleNumberPattern' => '\\d{10}', + 'ExampleNumber' => '2463101234', ), 'pager' => array ( @@ -84,8 +122,15 @@ return array ( ), 'uan' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 246(?: + 292| + 41[7-9]| + 43[01] + )\\d{4} + ', + 'PossibleNumberPattern' => '\\d{10}', + 'ExampleNumber' => '2464301234', ), 'emergency' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BD.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BD.php index fcf7161c6..55812ca66 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BD.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BD.php @@ -19,6 +19,7 @@ return array ( array ( 'NationalNumberPattern' => ' 2(?: + 550\\d| 7(?: 1[0-267]| 2[0-289]| @@ -34,7 +35,8 @@ return array ( 2[0157-9]| 6[1-35]| 7[1-5]| - 8[1-8] + 8[1-8]| + 90 )| 9(?: 0[0-2]| @@ -396,7 +398,7 @@ return array ( array ( 0 => array ( - 'pattern' => '(2)(\\d{7})', + 'pattern' => '(2)(\\d{7,8})', 'format' => '$1-$2', 'leadingDigitsPatterns' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BI.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BI.php index 8e1517016..651e76730 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BI.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BI.php @@ -13,12 +13,7 @@ return array ( ), 'fixedLine' => array ( - 'NationalNumberPattern' => ' - 22(?: - 2[0-7]| - [3-5]0 - )\\d{4} - ', + 'NationalNumberPattern' => '22\\d{6}', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '22201234', ), @@ -26,8 +21,9 @@ return array ( array ( 'NationalNumberPattern' => ' (?: - [26]9| - 7[14-9] + 29| + 6[189]| + 7[124-9] )\\d{6} ', 'PossibleNumberPattern' => '\\d{8}', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BR.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BR.php index 6c429502f..29711f48c 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BR.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BR.php @@ -32,17 +32,15 @@ return array ( 'mobile' => array ( 'NationalNumberPattern' => ' - (?: - 1[1-9]| - 2[12478]| - [89][1-9] - )(?: + 1[1-9](?: 7| 9\\d )\\d{7}| (?: + 2[12478]| 3[1-578]| - 7[13-579] + 7[13-579]| + [89][1-9] )9?[6-9]\\d{7}| (?: [46][1-9]| @@ -66,7 +64,15 @@ return array ( ), 'sharedCost' => array ( - 'NationalNumberPattern' => '[34]00\\d{5}', + 'NationalNumberPattern' => ' + (?: + 300\\d| + 40(?: + 0\\d| + 20 + ) + )\\d{4} + ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '40041234', ), @@ -117,7 +123,15 @@ return array ( ), 'noInternationalDialling' => array ( - 'NationalNumberPattern' => '[34]00\\d{5}', + 'NationalNumberPattern' => ' + (?: + 300\\d| + 40(?: + 0\\d| + 20 + ) + )\\d{4} + ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '40041234', ), @@ -204,11 +218,19 @@ return array ( ), 5 => array ( - 'pattern' => '([34]00\\d)(\\d{4})', + 'pattern' => '(\\d{4})(\\d{4})', 'format' => '$1-$2', 'leadingDigitsPatterns' => array ( - 0 => '[34]00', + 0 => ' + (?: + 300| + 40(?: + 0| + 20 + ) + ) + ', ), 'nationalPrefixFormattingRule' => '', 'domesticCarrierCodeFormattingRule' => '', @@ -258,11 +280,19 @@ return array ( ), 2 => array ( - 'pattern' => '([34]00\\d)(\\d{4})', + 'pattern' => '(\\d{4})(\\d{4})', 'format' => '$1-$2', 'leadingDigitsPatterns' => array ( - 0 => '[34]00', + 0 => ' + (?: + 300| + 40(?: + 0| + 20 + ) + ) + ', ), 'nationalPrefixFormattingRule' => '', 'domesticCarrierCodeFormattingRule' => '', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BT.php index dd1a44cb0..146656760 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_BT.php @@ -28,7 +28,12 @@ return array ( ), 'mobile' => array ( - 'NationalNumberPattern' => '[17]7\\d{6}', + 'NationalNumberPattern' => ' + (?: + 1[67]| + 77 + )\\d{6} + ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '17123456', ), @@ -105,7 +110,7 @@ return array ( array ( 0 => array ( - 'pattern' => '([17]7)(\\d{2})(\\d{2})(\\d{2})', + 'pattern' => '(\\d{2})(\\d{2})(\\d{2})(\\d{2})', 'format' => '$1 $2 $3 $4', 'leadingDigitsPatterns' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CC.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CC.php index 6935fe682..83ee5c870 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CC.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CC.php @@ -31,7 +31,7 @@ return array ( 5[0-25-9]| 6[6-9]| 7[03-9]| - 8[17-9]| + 8[147-9]| 9[017-9] )\\d{6} ', @@ -41,16 +41,12 @@ return array ( 'tollFree' => array ( 'NationalNumberPattern' => ' - 1(?: - 80(?: - 0\\d{2} - )?| - 3(?: - 00\\d{2} - )? - )\\d{4} + 180(?: + 0\\d{3}| + 2 + )\\d{3} ', - 'PossibleNumberPattern' => '\\d{6,10}', + 'PossibleNumberPattern' => '\\d{7,10}', 'ExampleNumber' => '1800123456', ), 'premiumRate' => @@ -61,8 +57,13 @@ return array ( ), 'sharedCost' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 13(?: + 00\\d{2} + )?\\d{4} + ', + 'PossibleNumberPattern' => '\\d{6,10}', + 'ExampleNumber' => '1300123456', ), 'personalNumber' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CX.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CX.php index 0f0e75910..b8fd76349 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CX.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CX.php @@ -31,7 +31,7 @@ return array ( 5[0-25-9]| 6[6-9]| 7[03-9]| - 8[17-9]| + 8[147-9]| 9[017-9] )\\d{6} ', @@ -41,16 +41,12 @@ return array ( 'tollFree' => array ( 'NationalNumberPattern' => ' - 1(?: - 80(?: - 0\\d{2} - )?| - 3(?: - 00\\d{2} - )? - )\\d{4} + 180(?: + 0\\d{3}| + 2 + )\\d{3} ', - 'PossibleNumberPattern' => '\\d{6,10}', + 'PossibleNumberPattern' => '\\d{7,10}', 'ExampleNumber' => '1800123456', ), 'premiumRate' => @@ -61,8 +57,13 @@ return array ( ), 'sharedCost' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 13(?: + 00\\d{2} + )?\\d{4} + ', + 'PossibleNumberPattern' => '\\d{6,10}', + 'ExampleNumber' => '1300123456', ), 'personalNumber' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CY.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CY.php index 2e3b340fd..36ea49cfb 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CY.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_CY.php @@ -19,7 +19,7 @@ return array ( ), 'mobile' => array ( - 'NationalNumberPattern' => '9[5-79]\\d{6}', + 'NationalNumberPattern' => '9[4-79]\\d{6}', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '96123456', ), diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_FI.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_FI.php index 4565b11bc..3ce8e2c20 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_FI.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_FI.php @@ -170,6 +170,17 @@ return array ( 'domesticCarrierCodeFormattingRule' => '', ), 1 => + array ( + 'pattern' => '(116\\d{3})', + 'format' => '$1', + 'leadingDigitsPatterns' => + array ( + 0 => '116', + ), + 'nationalPrefixFormattingRule' => '$1', + 'domesticCarrierCodeFormattingRule' => '', + ), + 2 => array ( 'pattern' => '(\\d{2})(\\d{4,10})', 'format' => '$1 $2', @@ -185,7 +196,7 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 2 => + 3 => array ( 'pattern' => '(\\d)(\\d{4,11})', 'format' => '$1 $2', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_GW.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_GW.php index ea6cd9b43..06585f9ee 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_GW.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_GW.php @@ -8,34 +8,46 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[3-79]\\d{6}', - 'PossibleNumberPattern' => '\\d{7}', + 'NationalNumberPattern' => ' + (?: + 4(?: + 0\\d{5}| + 4\\d{7} + )| + 9\\d{8} + ) + ', + 'PossibleNumberPattern' => '\\d{7,9}', ), 'fixedLine' => array ( 'NationalNumberPattern' => ' - 3(?: - 2[0125]| - 3[1245]| - 4[12]| - 5[1-4]| - 70| - 9[1-467] - )\\d{4} + 443(?: + 2[0125]| + 3[1245]| + 4[12]| + 5[1-4]| + 70| + 9[1-467] + )\\d{4} ', - 'PossibleNumberPattern' => '\\d{7}', - 'ExampleNumber' => '3201234', + 'PossibleNumberPattern' => '\\d{7,9}', + 'ExampleNumber' => '443201234', ), 'mobile' => array ( 'NationalNumberPattern' => ' - (?: - [5-7]\\d| - 9[012] + 9(?: + 55\\d| + 6(?: + 6\\d| + 9[012] + )| + 77\\d )\\d{5} ', - 'PossibleNumberPattern' => '\\d{7}', - 'ExampleNumber' => '5012345', + 'PossibleNumberPattern' => '\\d{7,9}', + 'ExampleNumber' => '955012345', ), 'tollFree' => array ( @@ -60,7 +72,7 @@ return array ( 'voip' => array ( 'NationalNumberPattern' => '40\\d{5}', - 'PossibleNumberPattern' => '\\d{7}', + 'PossibleNumberPattern' => '\\d{7,9}', 'ExampleNumber' => '4012345', ), 'pager' => @@ -110,11 +122,26 @@ return array ( 'numberFormat' => array ( 0 => + array ( + 'pattern' => '(\\d{3})(\\d{3})(\\d{3})', + 'format' => '$1 $2 $3', + 'leadingDigitsPatterns' => + array ( + 0 => ' + 44| + 9[567] + ', + ), + 'nationalPrefixFormattingRule' => '', + 'domesticCarrierCodeFormattingRule' => '', + ), + 1 => array ( 'pattern' => '(\\d{3})(\\d{4})', 'format' => '$1 $2', 'leadingDigitsPatterns' => array ( + 0 => '40', ), 'nationalPrefixFormattingRule' => '', 'domesticCarrierCodeFormattingRule' => '', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_ID.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_ID.php index ad955b3b4..308b7c26b 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_ID.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_ID.php @@ -8,8 +8,13 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[1-9]\\d{6,10}', - 'PossibleNumberPattern' => '\\d{5,11}', + 'NationalNumberPattern' => ' + (?: + [1-79]\\d{6,10}| + 8\\d{7,11} + ) + ', + 'PossibleNumberPattern' => '\\d{5,12}', ), 'fixedLine' => array ( @@ -164,9 +169,9 @@ return array ( 7[178]9 ) )\\d{5,6}| - 8[1-35-9]\\d{7,9} + 8[1-35-9]\\d{7,10} ', - 'PossibleNumberPattern' => '\\d{9,11}', + 'PossibleNumberPattern' => '\\d{9,12}', 'ExampleNumber' => '812345678', ), 'tollFree' => @@ -186,8 +191,9 @@ return array ( ), 'sharedCost' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '804\\d{7}', + 'PossibleNumberPattern' => '\\d{10}', + 'ExampleNumber' => '8041234567', ), 'personalNumber' => array ( @@ -206,8 +212,11 @@ return array ( ), 'uan' => array ( - 'NationalNumberPattern' => '8071\\d{6}', - 'PossibleNumberPattern' => '\\d{10}', + 'NationalNumberPattern' => ' + 1500\\d{3}| + 8071\\d{6} + ', + 'PossibleNumberPattern' => '\\d{7,10}', 'ExampleNumber' => '8071123456', ), 'emergency' => @@ -280,7 +289,7 @@ return array ( ), 2 => array ( - 'pattern' => '(8\\d{2})(\\d{3,4})(\\d{3,4})', + 'pattern' => '(8\\d{2})(\\d{3,4})(\\d{3,5})', 'format' => '$1-$2-$3', 'leadingDigitsPatterns' => array ( @@ -290,17 +299,28 @@ return array ( 'domesticCarrierCodeFormattingRule' => '', ), 3 => + array ( + 'pattern' => '(1)(500)(\\d{3})', + 'format' => '$1 $2 $3', + 'leadingDigitsPatterns' => + array ( + 0 => '15', + ), + 'nationalPrefixFormattingRule' => '$1', + 'domesticCarrierCodeFormattingRule' => '', + ), + 4 => array ( 'pattern' => '(177)(\\d{6,8})', 'format' => '$1 $2', 'leadingDigitsPatterns' => array ( - 0 => '1', + 0 => '17', ), 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 4 => + 5 => array ( 'pattern' => '(800)(\\d{5,7})', 'format' => '$1 $2', @@ -311,7 +331,18 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), - 5 => + 6 => + array ( + 'pattern' => '(804)(\\d{3})(\\d{4})', + 'format' => '$1 $2 $3', + 'leadingDigitsPatterns' => + array ( + 0 => '804', + ), + 'nationalPrefixFormattingRule' => '0$1', + 'domesticCarrierCodeFormattingRule' => '', + ), + 7 => array ( 'pattern' => '(80\\d)(\\d)(\\d{3})(\\d{3})', 'format' => '$1 $2 $3 $4', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IL.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IL.php index eab9c27a8..e3bb185df 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IL.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IL.php @@ -29,7 +29,7 @@ return array ( 5(?: 01| 2[23]| - 3[34]| + 3[2-4]| 4[45]| 5[5689]| 6[67]| @@ -101,7 +101,7 @@ return array ( 77| 81 )| - 99\\d + 9[29]\\d )\\d{5} ', 'PossibleNumberPattern' => '\\d{9}', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IS.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IS.php index 40f85e289..e2b7a69c2 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IS.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_IS.php @@ -23,7 +23,7 @@ return array ( 2[0-7]| [37][0-8]| 4[0-245]| - 5[0-3568]| + 5[0-68]| 6\\d| 8[0-36-8] )| @@ -31,7 +31,7 @@ return array ( 05| [156]\\d| 2[02578]| - 3[013-7]| + 3[013-79]| 4[03-7]| 7[0-2578]| 8[0-35-9]| @@ -50,19 +50,20 @@ return array ( (?: 6(?: 1[1-8]| + 2[056]| 3[089]| 4[0167]| - 5[019]| + 5[0159]| [67][0-69]| 9\\d )| 7(?: 5[057]| - 7\\d| - 8[0-36-8] + 6[0-2]| + [78]\\d )| 8(?: - 2[0-5]| + 2[0-59]| 3[0-4]| [469]\\d| 5[1-9] @@ -107,8 +108,9 @@ return array ( ), 'uan' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '809\\d{4}', + 'PossibleNumberPattern' => '\\d{7}', + 'ExampleNumber' => '8091234', ), 'emergency' => array ( @@ -120,16 +122,19 @@ return array ( 'NationalNumberPattern' => ' (?: 6(?: - 2[0-8]| + 2[1-478]| 49| 8\\d )| - 87[0189]| + 8(?: + 7[0189]| + 80 + )| 95[48] )\\d{4} ', 'PossibleNumberPattern' => '\\d{7}', - 'ExampleNumber' => '6201234', + 'ExampleNumber' => '6211234', ), 'shortCode' => array ( @@ -153,7 +158,8 @@ return array ( ), 'id' => 'IS', 'countryCode' => 354, - 'internationalPrefix' => '00', + 'internationalPrefix' => '1(?:0(?:01|10|20)|100)|00', + 'preferredInternationalPrefix' => '00', 'sameMobileAndFixedLinePattern' => false, 'numberFormat' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_KI.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_KI.php index c67018262..7d60348ac 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_KI.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_KI.php @@ -30,13 +30,7 @@ return array ( ), 'mobile' => array ( - 'NationalNumberPattern' => ' - 7(?: - [24]\\d| - 3[1-9]| - 8[0-5] - )\\d{5} - ', + 'NationalNumberPattern' => '7\\d{7}', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '72012345', ), diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MD.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MD.php index 51d5c5006..4444e6223 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MD.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MD.php @@ -41,8 +41,7 @@ return array ( 562\\d| 6(?: [089]\\d{2}| - 1[01]\\d| - 21\\d| + [12][01]\\d| 7(?: [1-6]\\d| 7[0-4] diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MM.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MM.php index b4287ffc8..ab6b6463d 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MM.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MM.php @@ -32,7 +32,11 @@ return array ( [89][0-6]\\d )\\d{4}| 2(?: - [236-9]\\d{4}| + 2(?: + 000\\d{3}| + \\d{4} + )| + 3\\d{4}| 4(?: 0\\d{5}| \\d{4} @@ -40,7 +44,8 @@ return array ( 5(?: 1\\d{3,6}| [02-9]\\d{3,5} - ) + )| + [6-9]\\d{4} )| 4(?: 2[245-8]| @@ -87,15 +92,22 @@ return array ( )\\d{4}| 8(?: 1(?: - 2\\d?| - [3-689] + 2\\d{1,2}| + [3-689]\\d )| - 2[2-8]| - 3[24]| - 4[24-7]| - 5[245]| - 6[23] - )\\d{4} + 2(?: + 2\\d| + 3(?: + \\d| + 20 + )| + [4-8]\\d + )| + 3[24]\\d| + 4[24-7]\\d| + 5[245]\\d| + 6[23]\\d + )\\d{3} ', 'PossibleNumberPattern' => '\\d{5,9}', 'ExampleNumber' => '1234567', @@ -218,7 +230,7 @@ return array ( array ( 0 => ' 1| - 2[45] + 2[245] ', ), 'nationalPrefixFormattingRule' => '0$1', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MN.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MN.php index bb78498c8..1d40cceb5 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MN.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MN.php @@ -36,9 +36,12 @@ return array ( array ( 'NationalNumberPattern' => ' (?: - 8[0689]| - 9[013-9] - )\\d{6} + 8(?: + [05689]\\d| + 3[01] + )| + 9[013-9]\\d + )\\d{5} ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '88123456', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MO.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MO.php index 256a86f76..dff9770ac 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MO.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_MO.php @@ -24,7 +24,12 @@ return array ( ), 'mobile' => array ( - 'NationalNumberPattern' => '6[236]\\d{6}', + 'NationalNumberPattern' => ' + 6(?: + [2356]\\d| + 8[18] + )\\d{5} + ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '66123456', ), diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_NP.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_NP.php index 2f1a63852..40f685752 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_NP.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_NP.php @@ -164,7 +164,7 @@ return array ( ) ', ), - 'nationalPrefixFormattingRule' => '0$1', + 'nationalPrefixFormattingRule' => '$1', 'domesticCarrierCodeFormattingRule' => '', ), ), diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_OM.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_OM.php index 1ad003cce..6b8f4e4e1 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_OM.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_OM.php @@ -12,7 +12,7 @@ return array ( (?: 2[2-6]| 5| - 9[1-9] + 9\\d )\\d{6}| 800\\d{5,6} ', @@ -26,7 +26,12 @@ return array ( ), 'mobile' => array ( - 'NationalNumberPattern' => '9[1-9]\\d{6}', + 'NationalNumberPattern' => ' + 9(?: + 0[1-9]| + [1-9]\\d + )\\d{5} + ', 'PossibleNumberPattern' => '\\d{8}', 'ExampleNumber' => '92123456', ), @@ -41,8 +46,13 @@ return array ( ), 'premiumRate' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + (?: + 900 + )\\d{5} + ', + 'PossibleNumberPattern' => '\\d{8}', + 'ExampleNumber' => '90012345', ), 'sharedCost' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_PL.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_PL.php index 755231cc8..96971f5b1 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_PL.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_PL.php @@ -10,7 +10,7 @@ return array ( array ( 'NationalNumberPattern' => ' [12]\\d{6,8}| - [3-57-9]\\d{8}| + (?:[3-5]|[7-9])\\d{8}| 6\\d{5,8} ', 'PossibleNumberPattern' => '\\d{6,9}', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_RU.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_RU.php index f291d2a5b..855b75d88 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_RU.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_RU.php @@ -19,6 +19,7 @@ return array ( 0[12]| 4[1-35-79]| 5[1-3]| + 65| 8[1-58]| 9[0145] )| @@ -36,7 +37,7 @@ return array ( 3[13-6]| 4[0-8]| 5[15]| - 6[1-35-7]| + 6[1-35-79]| 7[1-37-9] ) )\\d{7} diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SK.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SK.php index 63ce6270e..8cdc09eef 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SK.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SK.php @@ -8,8 +8,13 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[2-689]\\d{8}', - 'PossibleNumberPattern' => '\\d{9}', + 'NationalNumberPattern' => ' + (?: + [2-68]\\d{8}| + 9\\d{6,8} + ) + ', + 'PossibleNumberPattern' => '\\d{7,9}', ), 'fixedLine' => array ( @@ -23,7 +28,8 @@ return array ( 9(?: 0[1-8]| 1[0-24-9]| - 4[0489] + 4[0489]| + 50 )\\d{6} ', 'PossibleNumberPattern' => '\\d{9}', @@ -61,6 +67,7 @@ return array ( array ( 'NationalNumberPattern' => ' 6(?: + 02| 5[0-4]| 9[0-6] )\\d{6} @@ -70,8 +77,9 @@ return array ( ), 'pager' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '9090\\d{3}', + 'PossibleNumberPattern' => '\\d{7}', + 'ExampleNumber' => '9090123', ), 'uan' => array ( @@ -108,6 +116,7 @@ return array ( array ( 'NationalNumberPattern' => ' (?: + 602| 8(?: 00| [5-9]\\d @@ -116,9 +125,10 @@ return array ( 00| [78]\\d ) - )\\d{6} + )\\d{6}| + 9090\\d{3} ', - 'PossibleNumberPattern' => '\\d{9}', + 'PossibleNumberPattern' => '\\d{7,9}', 'ExampleNumber' => '800123456', ), 'id' => 'SK', @@ -162,6 +172,17 @@ return array ( 'nationalPrefixFormattingRule' => '0$1', 'domesticCarrierCodeFormattingRule' => '', ), + 3 => + array ( + 'pattern' => '(9090)(\\d{3})', + 'format' => '$1 $2', + 'leadingDigitsPatterns' => + array ( + 0 => '9090', + ), + 'nationalPrefixFormattingRule' => '0$1', + 'domesticCarrierCodeFormattingRule' => '', + ), ), 'intlNumberFormat' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SO.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SO.php index 8c699dd52..55efc11ac 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SO.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_SO.php @@ -39,7 +39,10 @@ return array ( [1-8]\\d| 99?\\d )| - 907\\d + 9(?: + 07| + [2-9] + )\\d )\\d{5} ', 'PossibleNumberPattern' => '\\d{7,9}', @@ -156,7 +159,8 @@ return array ( 15| 28| 6[1-35-9]| - 799 + 799| + 9[2-9] ', ), 'nationalPrefixFormattingRule' => '', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TN.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TN.php index 945970ada..7e61fddab 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TN.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TN.php @@ -14,7 +14,11 @@ return array ( 'fixedLine' => array ( 'NationalNumberPattern' => ' - 3[012]\\d{6}| + 3(?: + [012]\\d| + 6[0-4]| + 91 + )\\d{5}| 7\\d{7}| 81200\\d{3} ', @@ -26,7 +30,7 @@ return array ( 'NationalNumberPattern' => ' (?: [259]\\d| - 4[0-24] + 4[0-6] )\\d{6} ', 'PossibleNumberPattern' => '\\d{8}', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TT.php index 322b52c3a..c521e0e4e 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_TT.php @@ -17,7 +17,7 @@ return array ( 868(?: 2(?: 01| - 2[1-5]| + 2[1-6]| 3[1-5] )| 6(?: diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VC.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VC.php index 5e72f7d35..cfd7091fe 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VC.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VC.php @@ -46,7 +46,7 @@ return array ( 3[0-4]| 5[45]| 89| - 9[0-5] + 9[0-58] )| 5(?: 2[6-9]| diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VG.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VG.php index 0b8f28268..4d7c31fd5 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VG.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/PhoneNumberMetadata_VG.php @@ -40,7 +40,8 @@ return array ( (?: 3(?: 0[0-3]| - 4[0-367] + 4[0-367]| + 94 )| 4(?: 4[0-6]| diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_AT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_AT.php index 8bd85acdd..aa77c0b48 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_AT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_AT.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 1(?: + 17| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -65,7 +74,7 @@ return array ( 44 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -77,12 +86,22 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - [12]2| + 1(?: + 2| + 6(?: + 00[06]| + 1(?: + 17| + 23 + ) + ) + )| + 22| 33| 44 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BB.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BB.php index 0b4e382dd..92a199fea 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BB.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BB.php @@ -8,17 +8,17 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[235]\\d{2}', + 'NationalNumberPattern' => '[2-689]\\d{2}', 'PossibleNumberPattern' => '\\d{3}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '[235]\\d{2}', + 'NationalNumberPattern' => '[2-689]\\d{2}', 'PossibleNumberPattern' => '\\d{3}', ), 'mobile' => array ( - 'NationalNumberPattern' => '[235]\\d{2}', + 'NationalNumberPattern' => '[2-689]\\d{2}', 'PossibleNumberPattern' => '\\d{3}', ), 'tollFree' => @@ -58,7 +58,7 @@ return array ( ), 'emergency' => array ( - 'NationalNumberPattern' => '[235]11', + 'NationalNumberPattern' => '[2359]11', 'PossibleNumberPattern' => '\\d{3}', 'ExampleNumber' => '211', ), @@ -69,7 +69,7 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '[235]11', + 'NationalNumberPattern' => '[2-689]11', 'PossibleNumberPattern' => '\\d{3}', 'ExampleNumber' => '211', ), diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BG.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BG.php index 68aed32f5..77f0c6a98 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BG.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BG.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -65,7 +71,7 @@ return array ( 6[06] ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -77,12 +83,18 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - 12| + 1(?: + 2| + 6(?: + 000| + 111 + ) + )| 50| 6[06] ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BT.php index ef9a42785..9a3e5e064 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_BT.php @@ -70,7 +70,7 @@ return array ( 'shortCode' => array ( 'NationalNumberPattern' => ' - 11[023]| + 11[0-6]| 40404 ', 'PossibleNumberPattern' => '\\d{3,5}', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CY.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CY.php index 25c551d96..802aff2e8 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CY.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CY.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -64,7 +70,7 @@ return array ( 99 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -76,11 +82,17 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - 12| + 1(?: + 2| + 6(?: + 000| + 111 + ) + )| 99 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CZ.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CZ.php index cfd3c94ec..bf5b5c887 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CZ.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_CZ.php @@ -23,8 +23,15 @@ return array ( ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 111| + 123 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DE.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DE.php index 678ad9d77..b17ab59ca 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DE.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DE.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 1(?: + 1[17]| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -59,7 +68,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '11[02]', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +78,19 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '11[025]', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 11(?: + [025]| + 6(?: + 00[06]| + 1(?: + 1[17]| + 23 + ) + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '115', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DK.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DK.php index 6a790f0c3..8c797dba3 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DK.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_DK.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -58,8 +64,8 @@ return array ( ), 'emergency' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '11[24]', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +75,26 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 1(?: + 1(?: + [2-48]| + 6(?: + 00[06]| + 111 + ) + )| + 8(?: + 01| + 1[0238]| + 28| + 30| + 5[13]| + 81 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_EE.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_EE.php index f7c1a51c2..aaa2f617c 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_EE.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_EE.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -59,7 +65,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '11[02]', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +75,16 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 1(?: + \\d{2}| + 16(?: + 000| + 111 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '116', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_FI.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_FI.php index 309176abf..61c0c0374 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_FI.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_FI.php @@ -8,23 +8,24 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '116111', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116111', ), 'premiumRate' => array ( @@ -59,7 +60,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +70,13 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 11(?: + 2| + 6111 + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GB.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GB.php index 4b5d12d83..5b78cdfd3 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GB.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GB.php @@ -23,8 +23,17 @@ return array ( ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GR.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GR.php index b40561888..79e84bac7 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GR.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_GR.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -66,7 +75,7 @@ return array ( 99 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -79,12 +88,21 @@ return array ( 'NationalNumberPattern' => ' 1(?: 00| - 12| + 1(?: + 2| + 6(?: + 000| + 1(?: + 11| + 23 + ) + ) + )| 66| 99 ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_ID.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_ID.php index ccfcb82d1..65adc769e 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_ID.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_ID.php @@ -70,7 +70,10 @@ return array ( 'shortCode' => array ( 'NationalNumberPattern' => ' - 11[02389]| + 1(?: + 1[02389]| + 40\\d{2} + )| 71400| 89887 ', diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IE.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IE.php index d2bcc0407..046780826 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IE.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IE.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[159]\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '[159]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '[159]\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '[159]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '[159]\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '[159]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -73,11 +82,20 @@ return array ( 'shortCode' => array ( 'NationalNumberPattern' => ' - 112| + 11(?: + 2| + 6(?: + 00[06]| + 1(?: + 11| + 23 + ) + ) + )| 51210| 999 ', - 'PossibleNumberPattern' => '\\d{3,5}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IS.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IS.php index a9ff1cfb1..d3dab8879 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IS.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_IS.php @@ -8,28 +8,30 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '1717', + 'PossibleNumberPattern' => '\\d{4}', + 'ExampleNumber' => '1717', ), 'premiumRate' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '1848', + 'PossibleNumberPattern' => '\\d{4}', + 'ExampleNumber' => '1848', ), 'sharedCost' => array ( @@ -59,7 +61,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +71,39 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 1(?: + 1(?: + [28]| + 6(?: + 1(?: + 23| + 16 + ) + ) + )| + 4(?: + 00| + 1[145]| + 4[0146] + )| + 55| + 7(?: + 00| + 17| + 7[07-9] + )| + 8(?: + 0[08]| + 1[016-9]| + 20| + 48| + 8[018] + )| + 900 + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => @@ -80,8 +113,9 @@ return array ( ), 'carrierSpecific' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '1441', + 'PossibleNumberPattern' => '\\d{4}', + 'ExampleNumber' => '1441', ), 'noInternationalDialling' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LT.php index 6d408fc3c..e470aecee 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LT.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[01]\\d{1,2}', - 'PossibleNumberPattern' => '\\d{2,3}', + 'NationalNumberPattern' => '[01]\\d{1,5}', + 'PossibleNumberPattern' => '\\d{2,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '[01]\\d{1,2}', - 'PossibleNumberPattern' => '\\d{2,3}', + 'NationalNumberPattern' => '[01]\\d{1,5}', + 'PossibleNumberPattern' => '\\d{2,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '[01]\\d{1,2}', - 'PossibleNumberPattern' => '\\d{2,3}', + 'NationalNumberPattern' => '[01]\\d{1,5}', + 'PossibleNumberPattern' => '\\d{2,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -69,7 +78,7 @@ return array ( 12 ) ', - 'PossibleNumberPattern' => '\\d{2,3}', + 'PossibleNumberPattern' => '\\d{2,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -87,10 +96,19 @@ return array ( )| 1(?: 0[123]| - 12 + 1(?: + 2| + 6(?: + 000| + 1(?: + 11| + 23 + ) + ) + ) ) ', - 'PossibleNumberPattern' => '\\d{2,3}', + 'PossibleNumberPattern' => '\\d{2,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LU.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LU.php index 769c34fd1..1d1ecdad3 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LU.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_LU.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2,4}', - 'PossibleNumberPattern' => '\\d{3,5}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -71,11 +77,17 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - 1[23]| + 1(?: + [23]| + 6(?: + 000| + 111 + ) + )| 2\\d{3} ) ', - 'PossibleNumberPattern' => '\\d{3,5}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '12123', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_MT.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_MT.php index 69d02d58d..8e60f3a3f 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_MT.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_MT.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -59,7 +68,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +78,19 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 11(?: + 2| + 6(?: + 000| + 1(?: + 11| + 23 + ) + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NL.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NL.php index 579aeea15..74d119e88 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NL.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NL.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '[19]\\d{2,3}', - 'PossibleNumberPattern' => '\\d{3,4}', + 'NationalNumberPattern' => '[19]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '[19]\\d{2,3}', - 'PossibleNumberPattern' => '\\d{3,4}', + 'NationalNumberPattern' => '[19]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '[19]\\d{2,3}', - 'PossibleNumberPattern' => '\\d{3,4}', + 'NationalNumberPattern' => '[19]\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 00[06]| + 123 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -74,12 +80,18 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - 12| + 1(?: + 2| + 6(?: + 00[06]| + 123 + ) + )| 833 )| 911 ', - 'PossibleNumberPattern' => '\\d{3,4}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '1833', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NO.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NO.php index 3cc9033d3..4c65a3e7c 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NO.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_NO.php @@ -23,8 +23,9 @@ return array ( ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => '116117', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116117', ), 'premiumRate' => array ( @@ -58,13 +59,8 @@ return array ( ), 'emergency' => array ( - 'NationalNumberPattern' => ' - 11(?: - [023]| - 6117 - ) - ', - 'PossibleNumberPattern' => '\\d{3,6}', + 'NationalNumberPattern' => '11[023]', + 'PossibleNumberPattern' => '\\d{3}', 'ExampleNumber' => '112', ), 'voicemail' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_PL.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_PL.php index fbe396705..0f887c809 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_PL.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_PL.php @@ -32,8 +32,17 @@ return array ( ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_RO.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_RO.php index b38a1f031..39da1b10c 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_RO.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_RO.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -59,7 +65,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +75,16 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '112', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 11(?: + 2| + 6(?: + 000| + 111 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SI.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SI.php index 974442ee0..1a6ba86cb 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SI.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SI.php @@ -8,23 +8,32 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 1(?: + 11| + 23 + ) + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -59,7 +68,7 @@ return array ( 'emergency' => array ( 'NationalNumberPattern' => '11[23]', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -69,8 +78,19 @@ return array ( ), 'shortCode' => array ( - 'NationalNumberPattern' => '11[23]', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => ' + 11(?: + [23]| + 6(?: + 000| + 1(?: + 11| + 23 + ) + ) + ) + ', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SK.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SK.php index d06fbf772..66fa834cc 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SK.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/data/ShortNumberMetadata_SK.php @@ -8,23 +8,29 @@ return array ( 'generalDesc' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'fixedLine' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'mobile' => array ( - 'NationalNumberPattern' => '1\\d{2}', - 'PossibleNumberPattern' => '\\d{3}', + 'NationalNumberPattern' => '1\\d{2,5}', + 'PossibleNumberPattern' => '\\d{3,6}', ), 'tollFree' => array ( - 'NationalNumberPattern' => 'NA', - 'PossibleNumberPattern' => 'NA', + 'NationalNumberPattern' => ' + 116(?: + 000| + 111 + ) + ', + 'PossibleNumberPattern' => '\\d{6}', + 'ExampleNumber' => '116000', ), 'premiumRate' => array ( @@ -64,7 +70,7 @@ return array ( 5[058] ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'voicemail' => @@ -76,11 +82,17 @@ return array ( array ( 'NationalNumberPattern' => ' 1(?: - 12| + 1(?: + 2| + 6(?: + 000| + 111 + ) + )| 5[058] ) ', - 'PossibleNumberPattern' => '\\d{3}', + 'PossibleNumberPattern' => '\\d{3,6}', 'ExampleNumber' => '112', ), 'standardRate' => diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/Map.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/Map.php index 458f0fbea..e067138a6 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/Map.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/Map.php @@ -829,9 +829,13 @@ return array ( 786 => 90, 787 => 91, 788 => 94, - 789 => 962, - 790 => 966, - 791 => 98, + 789 => 95, + 790 => 962, + 791 => 966, + 792 => 968, + 793 => 972, + 794 => 975, + 795 => 98, ), 'es' => array ( diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/245.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/245.php index d4916c70c..132ce8b3f 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/245.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/245.php @@ -5,24 +5,25 @@ */ return array ( - 245320 => 'Bissau', - 245321 => 'Bissau', - 245322 => 'St. Luzia', - 245325 => 'Brá', - 245331 => 'Mansôa', - 245332 => 'Bigene/Bissora', - 245334 => 'Mansaba', - 245335 => 'Farim', - 245341 => 'Bafatá', - 245342 => 'Bambadinca', - 245351 => 'Gabu', - 245352 => 'Sonaco', - 245353 => 'Pirada', - 245354 => 'Pitche', - 245370 => 'Buba', - 245391 => 'Canchungo', - 245392 => 'Cacheu', - 245393 => 'S. Domingos', - 245394 => 'Bula', - 245396 => 'Ingoré', + 24544320 => 'Bissau', + 24544321 => 'Bissau', + 24544322 => 'St. Luzia', + 24544325 => 'Brá', + 24544331 => 'Mansôa', + 24544332 => 'Bissora', + 24544334 => 'Mansaba', + 24544335 => 'Farim', + 24544341 => 'Bafatá', + 24544342 => 'Bambadinca', + 24544351 => 'Gabu', + 24544352 => 'Sonaco', + 24544353 => 'Pirada', + 24544354 => 'Pitche', + 24544370 => 'Buba', + 24544391 => 'Canchungo', + 24544392 => 'Cacheu', + 24544393 => 'S. Domingos', + 24544394 => 'Bula', + 24544396 => 'Ingoré', + 24544397 => 'Bigene', ); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/95.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/95.php new file mode 100644 index 000000000..4c9b8beee --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/95.php @@ -0,0 +1,11 @@ + 'Mingalar Mandalay', + 955645 => 'Tandar', + 9582320 => 'Manton', +); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/968.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/968.php new file mode 100644 index 000000000..88f9ccc6a --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/968.php @@ -0,0 +1,12 @@ + 'Dhofar & Al Wusta', + 96824 => 'Muscat', + 96825 => 'A’Dakhliyah, Al Sharqiya & A’Dhahira', + 96826 => 'Al Batinah & Musandam', +); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/972.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/972.php new file mode 100644 index 000000000..7f141aef9 --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/972.php @@ -0,0 +1,13 @@ + 'Jerusalem', + 9723 => 'Tel Aviv', + 9724 => 'Haifa and North Regions', + 9728 => 'Hashfela and South Regions', + 9729 => 'Hasharon', +); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/975.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/975.php new file mode 100644 index 000000000..3c254f83c --- /dev/null +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/geocoding/data/en/975.php @@ -0,0 +1,15 @@ + 'Thimphu', + 9753 => 'Trongsa', + 9754 => 'Trashigang', + 9755 => 'Phuentsholing', + 9756 => 'Gelephu', + 9757 => 'Samdrup Jongkhar', + 9758 => 'Paro', +); diff --git a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/timezone/data/map_data.php b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/timezone/data/map_data.php index 591079d6e..961c8e6f4 100644 --- a/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/timezone/data/map_data.php +++ b/vendor/giggsey/libphonenumber-for-php/src/libphonenumber/timezone/data/map_data.php @@ -1446,7 +1446,6 @@ return array ( 376 => 'Europe/Andorra', 377 => 'Europe/Monaco', 378 => 'Europe/San_Marino', - 379 => 'Europe/Vatican', 380 => 'Europe/Bucharest', 381 => 'Europe/Belgrade', 382 => 'Europe/Podgorica', @@ -1454,7 +1453,7 @@ return array ( 386 => 'Europe/Ljubljana', 387 => 'Europe/Sarajevo', 389 => 'Europe/Skopje', - 39 => 'Europe/Rome', + 39 => 'Europe/Rome&Europe/Vatican', 40 => 'Europe/Bucharest', 41 => 'Europe/Zurich', 420 => 'Europe/Prague', @@ -1743,8 +1742,15 @@ return array ( 5568 => 'America/Rio_Branco', 5569 => 'America/Manaus', 557 => 'America/Sao_Paulo', - 558 => 'America/Sao_Paulo', 5581 => 'America/Noronha', + 5582 => 'America/Sao_Paulo', + 5583 => 'America/Sao_Paulo', + 5584 => 'America/Sao_Paulo', + 5585 => 'America/Sao_Paulo', + 5586 => 'America/Sao_Paulo', + 5587 => 'America/Sao_Paulo', + 5588 => 'America/Sao_Paulo', + 5589 => 'America/Sao_Paulo', 5591 => 'America/Manaus', 5592 => 'America/Manaus', 5593 => 'America/Manaus', @@ -1756,8 +1762,10 @@ return array ( 5599 => 'America/Sao_Paulo', 56 => 'America/Santiago&Pacific/Easter', 562 => 'America/Santiago', - 563 => 'America/Santiago', 5632 => 'Pacific/Easter', + 5633 => 'America/Santiago', + 5634 => 'America/Santiago', + 5635 => 'America/Santiago', 564 => 'America/Santiago', 565 => 'America/Santiago', 566 => 'America/Santiago', diff --git a/vendor/jeremeamia/SuperClosure/composer.json b/vendor/jeremeamia/SuperClosure/composer.json index 9dafbf304..784085cfd 100644 --- a/vendor/jeremeamia/SuperClosure/composer.json +++ b/vendor/jeremeamia/SuperClosure/composer.json @@ -15,11 +15,11 @@ ], "require": { "php": ">=5.4", - "nikic/php-parser": "~1.0" + "nikic/php-parser": "^1.2|^2.0", + "symfony/polyfill-php56": "^1.0" }, "require-dev": { - "phpunit/phpunit": "~4.0", - "codeclimate/php-test-reporter": "~0.1.2" + "phpunit/phpunit": "^4.0|^5.0" }, "autoload": { "psr-4": { @@ -33,7 +33,7 @@ }, "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" } } } diff --git a/vendor/jeremeamia/SuperClosure/src/Analyzer/AstAnalyzer.php b/vendor/jeremeamia/SuperClosure/src/Analyzer/AstAnalyzer.php index a9fbdef0a..37e54c0aa 100644 --- a/vendor/jeremeamia/SuperClosure/src/Analyzer/AstAnalyzer.php +++ b/vendor/jeremeamia/SuperClosure/src/Analyzer/AstAnalyzer.php @@ -9,6 +9,7 @@ use PhpParser\PrettyPrinter\Standard as NodePrinter; use PhpParser\Error as ParserError; use PhpParser\NodeVisitor\NameResolver; use PhpParser\Parser as CodeParser; +use PhpParser\ParserFactory; use PhpParser\Lexer\Emulative as EmulativeLexer; /** @@ -122,8 +123,19 @@ class AstAnalyzer extends ClosureAnalyzer ); } - $parser = new CodeParser(new EmulativeLexer); - return $parser->parse(file_get_contents($fileName)); + return $this->getParser()->parse(file_get_contents($fileName)); + } + + /** + * @return CodeParser + */ + private function getParser() + { + if (class_exists('PhpParser\ParserFactory')) { + return (new ParserFactory)->create(ParserFactory::PREFER_PHP7); + } + + return new CodeParser(new EmulativeLexer); } } diff --git a/vendor/jeremeamia/SuperClosure/src/Analyzer/ClosureAnalyzer.php b/vendor/jeremeamia/SuperClosure/src/Analyzer/ClosureAnalyzer.php index d1568e9c2..6ba92a302 100644 --- a/vendor/jeremeamia/SuperClosure/src/Analyzer/ClosureAnalyzer.php +++ b/vendor/jeremeamia/SuperClosure/src/Analyzer/ClosureAnalyzer.php @@ -55,7 +55,13 @@ abstract class ClosureAnalyzer private function isClosureStatic(\Closure $closure) { - $rebound = new \ReflectionFunction(@$closure->bindTo(new \stdClass)); + $closure = @$closure->bindTo(new \stdClass); + + if ($closure === null) { + return true; + } + + $rebound = new \ReflectionFunction($closure); return $rebound->getClosureThis() === null; } diff --git a/vendor/jeremeamia/SuperClosure/src/Analyzer/TokenAnalyzer.php b/vendor/jeremeamia/SuperClosure/src/Analyzer/TokenAnalyzer.php index 18364439f..2928ba0f9 100644 --- a/vendor/jeremeamia/SuperClosure/src/Analyzer/TokenAnalyzer.php +++ b/vendor/jeremeamia/SuperClosure/src/Analyzer/TokenAnalyzer.php @@ -68,7 +68,7 @@ class TokenAnalyzer extends ClosureAnalyzer case 3: if ($token->is(T_FUNCTION)) { throw new ClosureAnalysisException('Multiple closures ' - . 'were declared on the same line of code. Could ' + . 'were declared on the same line of code. Could not ' . 'determine which closure was the intended target.' ); } diff --git a/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/ClosureLocatorVisitor.php b/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/ClosureLocatorVisitor.php index 2dd9d4eda..758ce6a1a 100644 --- a/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/ClosureLocatorVisitor.php +++ b/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/ClosureLocatorVisitor.php @@ -106,12 +106,15 @@ final class ClosureLocatorVisitor extends NodeVisitor } elseif ($this->location['trait']) { $this->location['trait'] = $this->location['namespace'] . '\\' . $this->location['trait']; $this->location['method'] = "{$this->location['trait']}::{$this->location['function']}"; - } - if (!$this->location['class']) { - /** @var \ReflectionClass $closureScopeClass */ - $closureScopeClass = $this->reflection->getClosureScopeClass(); - $this->location['class'] = $closureScopeClass ? $closureScopeClass->getName() : null; + // If the closure was declared in a trait, then we will do a best + // effort guess on the name of the class that used the trait. It's + // actually impossible at this point to know for sure what it is. + if ($closureScope = $this->reflection->getClosureScopeClass()) { + $this->location['class'] = $closureScope ? $closureScope->getName() : null; + } elseif ($closureThis = $this->reflection->getClosureThis()) { + $this->location['class'] = get_class($closureThis); + } } } } diff --git a/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/MagicConstantVisitor.php b/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/MagicConstantVisitor.php index 922d4a680..d9d227db4 100644 --- a/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/MagicConstantVisitor.php +++ b/vendor/jeremeamia/SuperClosure/src/Analyzer/Visitor/MagicConstantVisitor.php @@ -1,7 +1,7 @@ closure, func_get_args()); } + /** + * Clones the SerializableClosure with a new bound object and class scope. + * + * The method is essentially a wrapped proxy to the Closure::bindTo method. + * + * @param mixed $newthis The object to which the closure should be bound, + * or NULL for the closure to be unbound. + * @param mixed $newscope The class scope to which the closure is to be + * associated, or 'static' to keep the current one. + * If an object is given, the type of the object will + * be used instead. This determines the visibility of + * protected and private methods of the bound object. + * + * @return SerializableClosure + * @link http://www.php.net/manual/en/closure.bindto.php + */ + public function bindTo($newthis, $newscope = 'static') + { + return new self( + $this->closure->bindTo($newthis, $newscope), + $this->serializer + ); + } + /** * Serializes the code, context, and binding of the closure. * - * @see http://php.net/manual/en/serializable.serialize.php - * * @return string|null + * @link http://php.net/manual/en/serializable.serialize.php */ public function serialize() { @@ -105,25 +129,26 @@ class SerializableClosure implements \Serializable * extracted into a fresh scope prior to redefining the closure. The * closure is also rebound to its former object and scope. * - * @see http://php.net/manual/en/serializable.unserialize.php - * * @param string $serialized * * @throws ClosureUnserializationException + * @link http://php.net/manual/en/serializable.unserialize.php */ public function unserialize($serialized) { - // Unserialize the data and reconstruct the SuperClosure. + // Unserialize the closure data and reconstruct the closure object. $this->data = unserialize($serialized); - $this->reconstructClosure(); - if (!$this->closure instanceof \Closure) { + $this->closure = __reconstruct_closure($this->data); + + // Throw an exception if the closure could not be reconstructed. + if (!$this->closure instanceof Closure) { throw new ClosureUnserializationException( 'The closure is corrupted and cannot be unserialized.' ); } - // Rebind the closure to its former binding, if it's not static. - if (!$this->data['isStatic']) { + // Rebind the closure to its former binding and scope. + if ($this->data['binding'] || $this->data['isStatic']) { $this->closure = $this->closure->bindTo( $this->data['binding'], $this->data['scope'] @@ -131,29 +156,6 @@ class SerializableClosure implements \Serializable } } - /** - * Reconstruct the closure. - * - * HERE BE DRAGONS! - * - * The infamous `eval()` is used in this method, along with `extract()`, - * the error suppression operator, and variable variables (i.e., double - * dollar signs) to perform the unserialization work. I'm sorry, world! - */ - private function reconstructClosure() - { - // Simulate the original context the closure was created in. - extract($this->data['context'], EXTR_OVERWRITE); - - // Evaluate the code to recreate the closure. - if ($_fn = array_search(Serializer::RECURSION, $this->data['context'], true)) { - @eval("\${$_fn} = {$this->data['code']};"); - $this->closure = $$_fn; - } else { - @eval("\$this->closure = {$this->data['code']};"); - } - } - /** * Returns closure data for `var_dump()`. * @@ -164,3 +166,52 @@ class SerializableClosure implements \Serializable return $this->data ?: $this->serializer->getData($this->closure, true); } } + +/** + * Reconstruct a closure. + * + * HERE BE DRAGONS! + * + * The infamous `eval()` is used in this method, along with the error + * suppression operator, and variable variables (i.e., double dollar signs) to + * perform the unserialization logic. I'm sorry, world! + * + * This is also done inside a plain function instead of a method so that the + * binding and scope of the closure are null. + * + * @param array $__data Unserialized closure data. + * + * @return Closure|null + * @internal + */ +function __reconstruct_closure(array $__data) +{ + // Simulate the original context the closure was created in. + foreach ($__data['context'] as $__var_name => &$__value) { + if ($__value instanceof SerializableClosure) { + // Unbox any SerializableClosures in the context. + $__value = $__value->getClosure(); + } elseif ($__value === Serializer::RECURSION) { + // Track recursive references (there should only be one). + $__recursive_reference = $__var_name; + } + + // Import the variable into this scope. + ${$__var_name} = $__value; + } + + // Evaluate the code to recreate the closure. + try { + if (isset($__recursive_reference)) { + // Special handling for recursive closures. + @eval("\${$__recursive_reference} = {$__data['code']};"); + $__closure = ${$__recursive_reference}; + } else { + @eval("\$__closure = {$__data['code']};"); + } + } catch (\ParseError $e) { + // Discard the parse error. + } + + return isset($__closure) ? $__closure : null; +} diff --git a/vendor/jeremeamia/SuperClosure/src/Serializer.php b/vendor/jeremeamia/SuperClosure/src/Serializer.php index eb32a96e2..04b793cdd 100644 --- a/vendor/jeremeamia/SuperClosure/src/Serializer.php +++ b/vendor/jeremeamia/SuperClosure/src/Serializer.php @@ -92,8 +92,18 @@ class Serializer implements SerializerInterface $this->verifySignature($signature, $serialized); } - /** @var SerializableClosure $unserialized */ + set_error_handler(function () {}); $unserialized = unserialize($serialized); + restore_error_handler(); + if ($unserialized === false) { + throw new ClosureUnserializationException( + 'The closure could not be unserialized.' + ); + } elseif (!$unserialized instanceof SerializableClosure) { + throw new ClosureUnserializationException( + 'The closure did not unserialize to a SuperClosure.' + ); + } return $unserialized->getClosure(); } @@ -193,13 +203,6 @@ class Serializer implements SerializerInterface */ private function verifySignature($signature, $data) { - // Ensure that hash_equals() is available. - static $hashEqualsFnExists = false; - if (!$hashEqualsFnExists) { - require __DIR__ . '/hash_equals.php'; - $hashEqualsFnExists = true; - } - // Verify that the provided signature matches the calculated signature. if (!hash_equals($signature, $this->calculateSignature($data))) { throw new ClosureUnserializationException('The signature of the' diff --git a/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php b/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php index bd751ce65..6c2365e8c 100644 --- a/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php +++ b/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php @@ -53,6 +53,10 @@ class MySqlConnector extends Connector implements ConnectorInterface { { $connection->prepare("set session sql_mode='STRICT_ALL_TABLES'")->execute(); } + else + { + $connection->prepare("set session sql_mode=''")->execute(); + } return $connection; } diff --git a/vendor/laravel/framework/src/Illuminate/Foundation/Application.php b/vendor/laravel/framework/src/Illuminate/Foundation/Application.php index 7ba000cc5..502a73f8d 100644 --- a/vendor/laravel/framework/src/Illuminate/Foundation/Application.php +++ b/vendor/laravel/framework/src/Illuminate/Foundation/Application.php @@ -20,7 +20,7 @@ class Application extends Container implements ApplicationContract, HttpKernelIn * * @var string */ - const VERSION = '5.0.33'; + const VERSION = '5.0.34'; /** * The base path for the Laravel installation. diff --git a/vendor/league/flysystem/composer.json b/vendor/league/flysystem/composer.json index dab5d14c8..0b6721f17 100644 --- a/vendor/league/flysystem/composer.json +++ b/vendor/league/flysystem/composer.json @@ -18,7 +18,7 @@ }, "require-dev": { "ext-fileinfo": "*", - "phpunit/phpunit": "~4.1", + "phpunit/phpunit": "~4.8", "mockery/mockery": "~0.9", "phpspec/phpspec": "^2.2", "phpspec/prophecy-phpunit": "~1.0" diff --git a/vendor/league/flysystem/src/Adapter/AbstractAdapter.php b/vendor/league/flysystem/src/Adapter/AbstractAdapter.php index 4617c9535..e2cbebea3 100644 --- a/vendor/league/flysystem/src/Adapter/AbstractAdapter.php +++ b/vendor/league/flysystem/src/Adapter/AbstractAdapter.php @@ -27,8 +27,8 @@ abstract class AbstractAdapter implements AdapterInterface { $is_empty = empty($prefix); - if (! $is_empty) { - $prefix = rtrim($prefix, $this->pathSeparator).$this->pathSeparator; + if ( ! $is_empty) { + $prefix = rtrim($prefix, $this->pathSeparator) . $this->pathSeparator; } $this->pathPrefix = $is_empty ? null : $prefix; @@ -60,7 +60,7 @@ abstract class AbstractAdapter implements AdapterInterface } if ($prefix = $this->getPathPrefix()) { - $path = $prefix.$path; + $path = $prefix . $path; } return $path; diff --git a/vendor/league/flysystem/src/Adapter/AbstractFtpAdapter.php b/vendor/league/flysystem/src/Adapter/AbstractFtpAdapter.php index 102eab46c..4701f5f37 100644 --- a/vendor/league/flysystem/src/Adapter/AbstractFtpAdapter.php +++ b/vendor/league/flysystem/src/Adapter/AbstractFtpAdapter.php @@ -99,11 +99,11 @@ abstract class AbstractFtpAdapter extends AbstractAdapter public function setConfig(array $config) { foreach ($this->configurable as $setting) { - if (! isset($config[$setting])) { + if ( ! isset($config[$setting])) { continue; } - $method = 'set'.ucfirst($setting); + $method = 'set' . ucfirst($setting); if (method_exists($this, $method)) { $this->$method($config[$setting]); @@ -208,7 +208,7 @@ abstract class AbstractFtpAdapter extends AbstractAdapter */ public function setRoot($root) { - $this->root = rtrim($root, '\\/').$this->separator; + $this->root = rtrim($root, '\\/') . $this->separator; return $this; } @@ -397,7 +397,7 @@ abstract class AbstractFtpAdapter extends AbstractAdapter $item = preg_replace('#\s+#', ' ', trim($item), 7); list($permissions, /* $number */, /* $owner */, /* $group */, $size, /* $month */, /* $day */, /* $time*/, $name) = explode(' ', $item, 9); $type = $this->detectType($permissions); - $path = empty($base) ? $name : $base.$this->separator.$name; + $path = empty($base) ? $name : $base . $this->separator . $name; if ($type === 'dir') { return compact('type', 'path'); @@ -422,11 +422,11 @@ abstract class AbstractFtpAdapter extends AbstractAdapter { $item = preg_replace('#\s+#', ' ', trim($item), 3); list($date, $time, $size, $name) = explode(' ', $item, 4); - $path = empty($base) ? $name : $base.$this->separator.$name; + $path = empty($base) ? $name : $base . $this->separator . $name; // Check for the correct date/time format $format = strlen($date) === 8 ? 'm-d-yH:iA' : 'Y-m-dH:i'; - $timestamp = DateTime::createFromFormat($format, $date.$time)->getTimestamp(); + $timestamp = DateTime::createFromFormat($format, $date . $time)->getTimestamp(); if ($size === '') { $type = 'dir'; @@ -507,7 +507,7 @@ abstract class AbstractFtpAdapter extends AbstractAdapter public function removeDotDirectories(array $list) { $filter = function ($line) { - if (! empty($line) && !preg_match('#.* \.(\.)?$|^total#', $line)) { + if ( ! empty($line) && ! preg_match('#.* \.(\.)?$|^total#', $line)) { return true; } @@ -548,7 +548,7 @@ abstract class AbstractFtpAdapter extends AbstractAdapter */ public function ensureDirectory($dirname) { - if (! empty($dirname) && !$this->has($dirname)) { + if ( ! empty($dirname) && ! $this->has($dirname)) { $this->createDir($dirname, new Config()); } } @@ -558,7 +558,7 @@ abstract class AbstractFtpAdapter extends AbstractAdapter */ public function getConnection() { - if (! $this->isConnected()) { + if ( ! $this->isConnected()) { $this->disconnect(); $this->connect(); } diff --git a/vendor/league/flysystem/src/Adapter/Ftp.php b/vendor/league/flysystem/src/Adapter/Ftp.php index ea161bd7e..bb9e5321a 100644 --- a/vendor/league/flysystem/src/Adapter/Ftp.php +++ b/vendor/league/flysystem/src/Adapter/Ftp.php @@ -17,6 +17,11 @@ class Ftp extends AbstractFtpAdapter */ protected $transferMode = FTP_BINARY; + /** + * @var null|bool + */ + protected $ignorePassiveAddress = null; + /** * @var array */ @@ -33,6 +38,7 @@ class Ftp extends AbstractFtpAdapter 'passive', 'transferMode', 'systemType', + 'ignorePassiveAddress', ]; /** @@ -73,6 +79,14 @@ class Ftp extends AbstractFtpAdapter $this->passive = $passive; } + /** + * @param bool $ignorePassiveAddress + */ + public function setIgnorePassiveAddress($ignorePassiveAddress) + { + $this->ignorePassiveAddress = $ignorePassiveAddress; + } + /** * Connect to the FTP server. */ @@ -84,7 +98,7 @@ class Ftp extends AbstractFtpAdapter $this->connection = ftp_connect($this->getHost(), $this->getPort(), $this->getTimeout()); } - if (! $this->connection) { + if ( ! $this->connection) { throw new RuntimeException('Could not connect to host: ' . $this->getHost() . ', port:' . $this->getPort()); } @@ -100,7 +114,11 @@ class Ftp extends AbstractFtpAdapter */ protected function setConnectionPassiveMode() { - if (! ftp_pasv($this->connection, $this->passive)) { + if (is_bool($this->ignorePassiveAddress) && defined('FTP_USEPASVADDRESS')) { + ftp_set_option($this->connection, FTP_USEPASVADDRESS, ! $this->ignorePassiveAddress); + } + + if ( ! ftp_pasv($this->connection, $this->passive)) { throw new RuntimeException( 'Could not set passive mode for connection: ' . $this->getHost() . '::' . $this->getPort() ); @@ -140,7 +158,7 @@ class Ftp extends AbstractFtpAdapter $isLoggedIn = ftp_login($this->connection, $this->getUsername(), $this->getPassword()); restore_error_handler(); - if (! $isLoggedIn) { + if ( ! $isLoggedIn) { $this->disconnect(); throw new RuntimeException( 'Could not login with connection: ' . $this->getHost() . '::' . $this->getPort( @@ -189,7 +207,7 @@ class Ftp extends AbstractFtpAdapter { $this->ensureDirectory(Util::dirname($path)); - if (! ftp_fput($this->getConnection(), $path, $resource, $this->transferMode)) { + if ( ! ftp_fput($this->getConnection(), $path, $resource, $this->transferMode)) { return false; } @@ -242,10 +260,10 @@ class Ftp extends AbstractFtpAdapter foreach ($contents as $object) { if ($object['type'] === 'file') { - if (! ftp_delete($connection, $object['path'])) { + if ( ! ftp_delete($connection, $object['path'])) { return false; } - } elseif (! ftp_rmdir($connection, $object['path'])) { + } elseif ( ! ftp_rmdir($connection, $object['path'])) { return false; } } @@ -319,12 +337,16 @@ class Ftp extends AbstractFtpAdapter return ['type' => 'dir', 'path' => $path]; } - $listing = ftp_rawlist($connection, $path); + $listing = ftp_rawlist($connection, str_replace('*', '\\*', $path)); if (empty($listing)) { return false; } + if (preg_match('/.* not found/', $listing[0])) { + return false; + } + return $this->normalizeObject($listing[0], ''); } @@ -333,7 +355,7 @@ class Ftp extends AbstractFtpAdapter */ public function getMimetype($path) { - if (! $metadata = $this->read($path)) { + if ( ! $metadata = $this->read($path)) { return false; } @@ -357,7 +379,7 @@ class Ftp extends AbstractFtpAdapter */ public function read($path) { - if (! $object = $this->readStream($path)) { + if ( ! $object = $this->readStream($path)) { return false; } @@ -377,7 +399,7 @@ class Ftp extends AbstractFtpAdapter $result = ftp_fget($this->getConnection(), $stream, $path, $this->transferMode); rewind($stream); - if (! $result) { + if ( ! $result) { fclose($stream); return false; @@ -393,7 +415,7 @@ class Ftp extends AbstractFtpAdapter { $mode = $visibility === AdapterInterface::VISIBILITY_PUBLIC ? $this->getPermPublic() : $this->getPermPrivate(); - if (! ftp_chmod($this->getConnection(), $mode, $path)) { + if ( ! ftp_chmod($this->getConnection(), $mode, $path)) { return false; } @@ -407,7 +429,9 @@ class Ftp extends AbstractFtpAdapter */ protected function listDirectoryContents($directory, $recursive = true) { - $listing = ftp_rawlist($this->getConnection(), '-lna ' . $directory, $recursive); + $directory = str_replace('*', '\\*', $directory); + $options = $recursive ? '-alnR' : '-aln'; + $listing = ftp_rawlist($this->getConnection(), $options . ' ' . $directory); return $listing ? $this->normalizeListing($listing, $directory) : []; } @@ -419,6 +443,6 @@ class Ftp extends AbstractFtpAdapter */ public function isConnected() { - return ! is_null($this->connection) && ftp_systype($this->connection) !== false; + return is_resource($this->connection) && ftp_systype($this->connection) !== false; } } diff --git a/vendor/league/flysystem/src/Adapter/Ftpd.php b/vendor/league/flysystem/src/Adapter/Ftpd.php index b7ac88d2c..91d0cd8a5 100644 --- a/vendor/league/flysystem/src/Adapter/Ftpd.php +++ b/vendor/league/flysystem/src/Adapter/Ftpd.php @@ -9,7 +9,7 @@ class Ftpd extends Ftp */ public function getMetadata($path) { - if (empty($path) || !($object = ftp_raw($this->getConnection(), 'STAT '.$path)) || count($object) < 3) { + if (empty($path) || ! ($object = ftp_raw($this->getConnection(), 'STAT ' . $path)) || count($object) < 3) { return false; } @@ -27,7 +27,7 @@ class Ftpd extends Ftp { $listing = ftp_rawlist($this->getConnection(), $directory, $recursive); - if ($listing === false || (!empty($listing) && substr($listing[0], 0, 5) === "ftpd:")) { + if ($listing === false || ( ! empty($listing) && substr($listing[0], 0, 5) === "ftpd:")) { return []; } diff --git a/vendor/league/flysystem/src/Adapter/Local.php b/vendor/league/flysystem/src/Adapter/Local.php index f5ed5d434..d42b62139 100644 --- a/vendor/league/flysystem/src/Adapter/Local.php +++ b/vendor/league/flysystem/src/Adapter/Local.php @@ -4,10 +4,11 @@ namespace League\Flysystem\Adapter; use DirectoryIterator; use FilesystemIterator; -use Finfo; +use finfo as Finfo; use League\Flysystem\AdapterInterface; use League\Flysystem\Config; use League\Flysystem\NotSupportedException; +use League\Flysystem\UnreadableFileException; use League\Flysystem\Util; use RecursiveDirectoryIterator; use RecursiveIteratorIterator; @@ -72,8 +73,8 @@ class Local extends AbstractAdapter $this->permissionMap = array_replace_recursive(static::$permissions, $permissions); $realRoot = $this->ensureDirectory($root); - if (! is_dir($realRoot) || !is_readable($realRoot)) { - throw new \LogicException('The root path '.$root.' is not readable.'); + if ( ! is_dir($realRoot) || ! is_readable($realRoot)) { + throw new \LogicException('The root path ' . $root . ' is not readable.'); } $this->setPathPrefix($realRoot); @@ -90,7 +91,7 @@ class Local extends AbstractAdapter */ protected function ensureDirectory($root) { - if (! is_dir($root)) { + if ( ! is_dir($root)) { $umask = umask(0); mkdir($root, $this->permissionMap['dir']['public'], true); umask($umask); @@ -141,13 +142,13 @@ class Local extends AbstractAdapter $this->ensureDirectory(dirname($location)); $stream = fopen($location, 'w+'); - if (! $stream) { + if ( ! $stream) { return false; } stream_copy_to_stream($resource, $stream); - if (! fclose($stream)) { + if ( ! fclose($stream)) { return false; } @@ -249,9 +250,9 @@ class Local extends AbstractAdapter public function listContents($directory = '', $recursive = false) { $result = []; - $location = $this->applyPathPrefix($directory).$this->pathSeparator; + $location = $this->applyPathPrefix($directory) . $this->pathSeparator; - if (! is_dir($location)) { + if ( ! is_dir($location)) { return []; } @@ -328,7 +329,11 @@ class Local extends AbstractAdapter { $location = $this->applyPathPrefix($path); $type = is_dir($location) ? 'dir' : 'file'; - chmod($location, $this->permissionMap[$type][$visibility]); + $success = chmod($location, $this->permissionMap[$type][$visibility]); + + if ($success === false) { + return false; + } return compact('visibility'); } @@ -342,7 +347,7 @@ class Local extends AbstractAdapter $umask = umask(0); $visibility = $config->get('visibility', 'public'); - if (! is_dir($location) && !mkdir($location, $this->permissionMap['dir'][$visibility], true)) { + if ( ! is_dir($location) && ! mkdir($location, $this->permissionMap['dir'][$visibility], true)) { $return = false; } else { $return = ['path' => $dirname, 'type' => 'dir']; @@ -360,32 +365,38 @@ class Local extends AbstractAdapter { $location = $this->applyPathPrefix($dirname); - if (! is_dir($location)) { + if ( ! is_dir($location)) { return false; } - $contents = new RecursiveIteratorIterator( - new RecursiveDirectoryIterator($location, FilesystemIterator::SKIP_DOTS), - RecursiveIteratorIterator::CHILD_FIRST - ); + $contents = $this->getRecursiveDirectoryIterator($location, RecursiveIteratorIterator::CHILD_FIRST); /** @var SplFileInfo $file */ foreach ($contents as $file) { - switch ($file->getType()) { - case 'dir': - rmdir($file->getRealPath()); - break; - case 'link': - unlink($file->getPathname()); - break; - default: - unlink($file->getRealPath()); - } + $this->guardAgainstUnreadableFileInfo($file); + $this->deleteFileInfoObject($file); } return rmdir($location); } + /** + * @param $file + */ + protected function deleteFileInfoObject($file) + { + switch ($file->getType()) { + case 'dir': + rmdir($file->getRealPath()); + break; + case 'link': + unlink($file->getPathname()); + break; + default: + unlink($file->getRealPath()); + } + } + /** * Normalize the file info. * @@ -395,7 +406,7 @@ class Local extends AbstractAdapter */ protected function normalizeFileInfo(SplFileInfo $file) { - if (! $file->isLink()) { + if ( ! $file->isLink()) { return $this->mapFileInfo($file); } @@ -421,15 +432,16 @@ class Local extends AbstractAdapter /** * @param string $path + * @param int $mode * * @return RecursiveIteratorIterator */ - protected function getRecursiveDirectoryIterator($path) + protected function getRecursiveDirectoryIterator($path, $mode = RecursiveIteratorIterator::SELF_FIRST) { - $directory = new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS); - $iterator = new RecursiveIteratorIterator($directory, RecursiveIteratorIterator::SELF_FIRST); - - return $iterator; + return new RecursiveIteratorIterator( + new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS), + $mode + ); } /** @@ -474,4 +486,16 @@ class Local extends AbstractAdapter return str_replace('/', DIRECTORY_SEPARATOR, $prefixedPath); } + + /** + * @param SplFileInfo $file + * + * @throws UnreadableFileException + */ + protected function guardAgainstUnreadableFileInfo(SplFileInfo $file) + { + if ( ! $file->isReadable()) { + throw UnreadableFileException::forFileInfo($file); + } + } } diff --git a/vendor/league/flysystem/src/Adapter/Polyfill/NotSupportingVisibilityTrait.php b/vendor/league/flysystem/src/Adapter/Polyfill/NotSupportingVisibilityTrait.php index 64de4438e..fc0a747ac 100644 --- a/vendor/league/flysystem/src/Adapter/Polyfill/NotSupportingVisibilityTrait.php +++ b/vendor/league/flysystem/src/Adapter/Polyfill/NotSupportingVisibilityTrait.php @@ -15,7 +15,7 @@ trait NotSupportingVisibilityTrait */ public function getVisibility($path) { - throw new LogicException(get_class($this).' does not support visibility. Path: '.$path); + throw new LogicException(get_class($this) . ' does not support visibility. Path: ' . $path); } /** @@ -28,6 +28,6 @@ trait NotSupportingVisibilityTrait */ public function setVisibility($path, $visibility) { - throw new LogicException(get_class($this).' does not support visibility. Path: '.$path.', visibility: '.$visibility); + throw new LogicException(get_class($this) . ' does not support visibility. Path: ' . $path . ', visibility: ' . $visibility); } } diff --git a/vendor/league/flysystem/src/Adapter/Polyfill/StreamedCopyTrait.php b/vendor/league/flysystem/src/Adapter/Polyfill/StreamedCopyTrait.php index 44ed2e095..b296bced1 100644 --- a/vendor/league/flysystem/src/Adapter/Polyfill/StreamedCopyTrait.php +++ b/vendor/league/flysystem/src/Adapter/Polyfill/StreamedCopyTrait.php @@ -18,7 +18,7 @@ trait StreamedCopyTrait { $response = $this->readStream($path); - if ($response === false || !is_resource($response['stream'])) { + if ($response === false || ! is_resource($response['stream'])) { return false; } diff --git a/vendor/league/flysystem/src/Adapter/Polyfill/StreamedReadingTrait.php b/vendor/league/flysystem/src/Adapter/Polyfill/StreamedReadingTrait.php index 3cd6ab401..c85f19dc7 100644 --- a/vendor/league/flysystem/src/Adapter/Polyfill/StreamedReadingTrait.php +++ b/vendor/league/flysystem/src/Adapter/Polyfill/StreamedReadingTrait.php @@ -13,7 +13,7 @@ trait StreamedReadingTrait */ public function readStream($path) { - if (! $data = $this->read($path)) { + if ( ! $data = $this->read($path)) { return false; } diff --git a/vendor/league/flysystem/src/Config.php b/vendor/league/flysystem/src/Config.php index 00cf752a0..e50794a87 100644 --- a/vendor/league/flysystem/src/Config.php +++ b/vendor/league/flysystem/src/Config.php @@ -34,7 +34,7 @@ class Config */ public function get($key, $default = null) { - if (! array_key_exists($key, $this->settings)) { + if ( ! array_key_exists($key, $this->settings)) { return $this->getDefault($key, $default); } @@ -63,7 +63,7 @@ class Config */ protected function getDefault($key, $default) { - if (! $this->fallback) { + if ( ! $this->fallback) { return $default; } diff --git a/vendor/league/flysystem/src/FileExistsException.php b/vendor/league/flysystem/src/FileExistsException.php index c0b63daa5..b771c5480 100644 --- a/vendor/league/flysystem/src/FileExistsException.php +++ b/vendor/league/flysystem/src/FileExistsException.php @@ -22,7 +22,7 @@ class FileExistsException extends Exception { $this->path = $path; - parent::__construct('File already exists at path: '.$this->getPath(), $code, $previous); + parent::__construct('File already exists at path: ' . $this->getPath(), $code, $previous); } /** diff --git a/vendor/league/flysystem/src/FileNotFoundException.php b/vendor/league/flysystem/src/FileNotFoundException.php index b66a4cc52..989df69bb 100644 --- a/vendor/league/flysystem/src/FileNotFoundException.php +++ b/vendor/league/flysystem/src/FileNotFoundException.php @@ -22,7 +22,7 @@ class FileNotFoundException extends Exception { $this->path = $path; - parent::__construct('File not found at path: '.$this->getPath(), $code, $previous); + parent::__construct('File not found at path: ' . $this->getPath(), $code, $previous); } /** diff --git a/vendor/league/flysystem/src/Filesystem.php b/vendor/league/flysystem/src/Filesystem.php index 84e204bf1..b23104139 100644 --- a/vendor/league/flysystem/src/Filesystem.php +++ b/vendor/league/flysystem/src/Filesystem.php @@ -71,7 +71,7 @@ class Filesystem implements FilesystemInterface */ public function writeStream($path, $resource, array $config = []) { - if (! is_resource($resource)) { + if ( ! is_resource($resource)) { throw new InvalidArgumentException(__METHOD__ . ' expects argument #2 to be a valid resource.'); } @@ -104,7 +104,7 @@ class Filesystem implements FilesystemInterface */ public function putStream($path, $resource, array $config = []) { - if (! is_resource($resource)) { + if ( ! is_resource($resource)) { throw new InvalidArgumentException(__METHOD__ . ' expects argument #2 to be a valid resource.'); } @@ -155,7 +155,7 @@ class Filesystem implements FilesystemInterface */ public function updateStream($path, $resource, array $config = []) { - if (! is_resource($resource)) { + if ( ! is_resource($resource)) { throw new InvalidArgumentException(__METHOD__ . ' expects argument #2 to be a valid resource.'); } @@ -175,7 +175,7 @@ class Filesystem implements FilesystemInterface $path = Util::normalizePath($path); $this->assertPresent($path); - if (! ($object = $this->getAdapter()->read($path))) { + if ( ! ($object = $this->getAdapter()->read($path))) { return false; } @@ -190,7 +190,7 @@ class Filesystem implements FilesystemInterface $path = Util::normalizePath($path); $this->assertPresent($path); - if (! $object = $this->getAdapter()->readStream($path)) { + if ( ! $object = $this->getAdapter()->readStream($path)) { return false; } @@ -278,7 +278,7 @@ class Filesystem implements FilesystemInterface $path = Util::normalizePath($path); $this->assertPresent($path); - if (! $object = $this->getAdapter()->getMimetype($path)) { + if ( ! $object = $this->getAdapter()->getMimetype($path)) { return false; } @@ -293,7 +293,7 @@ class Filesystem implements FilesystemInterface $path = Util::normalizePath($path); $this->assertPresent($path); - if (! $object = $this->getAdapter()->getTimestamp($path)) { + if ( ! $object = $this->getAdapter()->getTimestamp($path)) { return false; } @@ -322,7 +322,7 @@ class Filesystem implements FilesystemInterface { $path = Util::normalizePath($path); - if (($object = $this->getAdapter()->getSize($path)) === false || !isset($object['size'])) { + if (($object = $this->getAdapter()->getSize($path)) === false || ! isset($object['size'])) { return false; } @@ -357,7 +357,7 @@ class Filesystem implements FilesystemInterface { $path = Util::normalizePath($path); - if (! $handler) { + if ( ! $handler) { $metadata = $this->getMetadata($path); $handler = $metadata['type'] === 'file' ? new File($this, $path) : new Directory($this, $path); } @@ -377,7 +377,7 @@ class Filesystem implements FilesystemInterface */ public function assertPresent($path) { - if (! $this->has($path)) { + if ( ! $this->has($path)) { throw new FileNotFoundException($path); } } diff --git a/vendor/league/flysystem/src/Handler.php b/vendor/league/flysystem/src/Handler.php index 8747666cf..021dd26a3 100644 --- a/vendor/league/flysystem/src/Handler.php +++ b/vendor/league/flysystem/src/Handler.php @@ -126,8 +126,8 @@ abstract class Handler } catch (BadMethodCallException $e) { throw new BadMethodCallException( 'Call to undefined method ' - .get_called_class() - .'::'.$method + . get_called_class() + . '::' . $method ); } } diff --git a/vendor/league/flysystem/src/MountManager.php b/vendor/league/flysystem/src/MountManager.php index f82c6f82d..0c9fb695b 100644 --- a/vendor/league/flysystem/src/MountManager.php +++ b/vendor/league/flysystem/src/MountManager.php @@ -88,8 +88,8 @@ class MountManager */ public function mountFilesystem($prefix, FilesystemInterface $filesystem) { - if (! is_string($prefix)) { - throw new InvalidArgumentException(__METHOD__.' expects argument #1 to be a string.'); + if ( ! is_string($prefix)) { + throw new InvalidArgumentException(__METHOD__ . ' expects argument #1 to be a string.'); } $this->filesystems[$prefix] = $filesystem; @@ -108,8 +108,8 @@ class MountManager */ public function getFilesystem($prefix) { - if (! isset($this->filesystems[$prefix])) { - throw new LogicException('No filesystem mounted with prefix '.$prefix); + if ( ! isset($this->filesystems[$prefix])) { + throw new LogicException('No filesystem mounted with prefix ' . $prefix); } return $this->filesystems[$prefix]; @@ -130,12 +130,12 @@ class MountManager $path = array_shift($arguments); - if (! is_string($path)) { + if ( ! is_string($path)) { throw new InvalidArgumentException('First argument should be a string'); } - if (! preg_match('#^.+\:\/\/.*#', $path)) { - throw new InvalidArgumentException('No prefix detected in path: '.$path); + if ( ! preg_match('#^.+\:\/\/.*#', $path)) { + throw new InvalidArgumentException('No prefix detected in path: ' . $path); } list($prefix, $path) = explode('://', $path, 2); diff --git a/vendor/league/flysystem/src/NotSupportedException.php b/vendor/league/flysystem/src/NotSupportedException.php index 5d208393f..08f47f749 100644 --- a/vendor/league/flysystem/src/NotSupportedException.php +++ b/vendor/league/flysystem/src/NotSupportedException.php @@ -18,7 +18,7 @@ class NotSupportedException extends RuntimeException { $message = 'Links are not supported, encountered link at '; - return new static($message.$file->getPathname()); + return new static($message . $file->getPathname()); } /** diff --git a/vendor/league/flysystem/src/Plugin/GetWithMetadata.php b/vendor/league/flysystem/src/Plugin/GetWithMetadata.php index b88fd68c8..781dd2461 100644 --- a/vendor/league/flysystem/src/Plugin/GetWithMetadata.php +++ b/vendor/league/flysystem/src/Plugin/GetWithMetadata.php @@ -30,15 +30,15 @@ class GetWithMetadata extends AbstractPlugin { $object = $this->filesystem->getMetadata($path); - if (! $object) { + if ( ! $object) { return false; } $keys = array_diff($metadata, array_keys($object)); foreach ($keys as $key) { - if (! method_exists($this->filesystem, $method = 'get'.ucfirst($key))) { - throw new InvalidArgumentException('Could not fetch metadata: '.$key); + if ( ! method_exists($this->filesystem, $method = 'get' . ucfirst($key))) { + throw new InvalidArgumentException('Could not fetch metadata: ' . $key); } $object[$key] = $this->filesystem->{$method}($path); diff --git a/vendor/league/flysystem/src/Plugin/ListWith.php b/vendor/league/flysystem/src/Plugin/ListWith.php index 341a219eb..7d773e6f7 100644 --- a/vendor/league/flysystem/src/Plugin/ListWith.php +++ b/vendor/league/flysystem/src/Plugin/ListWith.php @@ -47,10 +47,10 @@ class ListWith extends AbstractPlugin */ protected function getMetadataByName(array $object, $key) { - $method = 'get'.ucfirst($key); + $method = 'get' . ucfirst($key); - if (! method_exists($this->filesystem, $method)) { - throw new \InvalidArgumentException('Could not get meta-data for key: '.$key); + if ( ! method_exists($this->filesystem, $method)) { + throw new \InvalidArgumentException('Could not get meta-data for key: ' . $key); } $object[$key] = $this->filesystem->{$method}($object['path']); diff --git a/vendor/league/flysystem/src/Plugin/PluggableTrait.php b/vendor/league/flysystem/src/Plugin/PluggableTrait.php index 4f39a16fe..a63734f29 100644 --- a/vendor/league/flysystem/src/Plugin/PluggableTrait.php +++ b/vendor/league/flysystem/src/Plugin/PluggableTrait.php @@ -39,12 +39,12 @@ trait PluggableTrait */ protected function findPlugin($method) { - if (! isset($this->plugins[$method])) { - throw new PluginNotFoundException('Plugin not found for method: '.$method); + if ( ! isset($this->plugins[$method])) { + throw new PluginNotFoundException('Plugin not found for method: ' . $method); } - if (! method_exists($this->plugins[$method], 'handle')) { - throw new LogicException(get_class($this->plugins[$method]).' does not have a handle method.'); + if ( ! method_exists($this->plugins[$method], 'handle')) { + throw new LogicException(get_class($this->plugins[$method]) . ' does not have a handle method.'); } return $this->plugins[$method]; @@ -84,8 +84,8 @@ trait PluggableTrait } catch (PluginNotFoundException $e) { throw new BadMethodCallException( 'Call to undefined method ' - .get_class($this) - .'::'.$method + . get_class($this) + . '::' . $method ); } } diff --git a/vendor/league/flysystem/src/UnreadableFileException.php b/vendor/league/flysystem/src/UnreadableFileException.php new file mode 100644 index 000000000..e66803383 --- /dev/null +++ b/vendor/league/flysystem/src/UnreadableFileException.php @@ -0,0 +1,18 @@ +getRealPath() + ) + ); + } +} diff --git a/vendor/league/flysystem/src/Util.php b/vendor/league/flysystem/src/Util.php index 57348564e..28e4c0614 100644 --- a/vendor/league/flysystem/src/Util.php +++ b/vendor/league/flysystem/src/Util.php @@ -17,9 +17,7 @@ class Util public static function pathinfo($path) { $pathinfo = pathinfo($path) + compact('path'); - $pathinfo['dirname'] = array_key_exists('dirname', $pathinfo) - ? static::normalizeDirname($pathinfo['dirname']) - : ''; + $pathinfo['dirname'] = static::normalizeDirname($pathinfo['dirname']); return $pathinfo; } @@ -65,7 +63,7 @@ class Util $result = []; foreach ($map as $from => $to) { - if (! isset($object[$from])) { + if ( ! isset($object[$from])) { continue; } @@ -161,7 +159,7 @@ class Util { $mimeType = MimeType::detectByContent($content); - if (empty($mimeType) || $mimeType === 'text/plain') { + if (empty($mimeType) || in_array($mimeType, ['text/plain', 'application/x-empty'])) { $extension = pathinfo($path, PATHINFO_EXTENSION); if ($extension) { @@ -281,7 +279,7 @@ class Util $parent = $object['dirname']; - while (! empty($parent) && ! in_array($parent, $directories)) { + while ( ! empty($parent) && ! in_array($parent, $directories)) { $directories[] = $parent; $parent = static::dirname($parent); } diff --git a/vendor/league/flysystem/src/Util/MimeType.php b/vendor/league/flysystem/src/Util/MimeType.php index d44d013cf..dbaef673f 100644 --- a/vendor/league/flysystem/src/Util/MimeType.php +++ b/vendor/league/flysystem/src/Util/MimeType.php @@ -18,7 +18,7 @@ class MimeType */ public static function detectByContent($content) { - if (! class_exists('Finfo')) { + if ( ! class_exists('Finfo')) { return; } @@ -39,7 +39,7 @@ class MimeType { static $extensionToMimeTypeMap; - if (! $extensionToMimeTypeMap) { + if ( ! $extensionToMimeTypeMap) { $extensionToMimeTypeMap = static::getExtensionToMimeTypeMap(); } diff --git a/vendor/nesbot/carbon/composer.json b/vendor/nesbot/carbon/composer.json index e44aa8db0..a31043ff8 100644 --- a/vendor/nesbot/carbon/composer.json +++ b/vendor/nesbot/carbon/composer.json @@ -8,6 +8,10 @@ "DateTime" ], "homepage": "http://carbon.nesbot.com", + "support": { + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, "license": "MIT", "authors": [ { @@ -21,11 +25,16 @@ "symfony/translation": "~2.6|~3.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "~4.0|~5.0" }, "autoload": { - "psr-0": { - "Carbon": "src" + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" } } } diff --git a/vendor/nesbot/carbon/readme.md b/vendor/nesbot/carbon/readme.md index e7059368d..545bed32c 100644 --- a/vendor/nesbot/carbon/readme.md +++ b/vendor/nesbot/carbon/readme.md @@ -1,6 +1,9 @@ # Carbon -[![Latest Stable Version](https://poser.pugx.org/nesbot/carbon/v/stable.png)](https://packagist.org/packages/nesbot/carbon) [![Total Downloads](https://poser.pugx.org/nesbot/carbon/downloads.png)](https://packagist.org/packages/nesbot/carbon) [![Build Status](https://travis-ci.org/briannesbitt/Carbon.svg?branch=master)](https://travis-ci.org/briannesbitt/Carbon) +[![Latest Stable Version](https://poser.pugx.org/nesbot/carbon/v/stable.png)](https://packagist.org/packages/nesbot/carbon) +[![Total Downloads](https://poser.pugx.org/nesbot/carbon/downloads.png)](https://packagist.org/packages/nesbot/carbon) +[![Build Status](https://travis-ci.org/briannesbitt/Carbon.svg?branch=master)](https://travis-ci.org/briannesbitt/Carbon) +[![StyleCI](https://styleci.io/repos/5724990/shield?style=flat)](https://styleci.io/repos/5724990) A simple PHP API extension for DateTime. [http://carbon.nesbot.com](http://carbon.nesbot.com) @@ -24,21 +27,21 @@ Carbon::setTestNow(Carbon::createFromDate(2000, 1, 1)); // comparisons are always done in UTC if (Carbon::now()->gte($worldWillEnd)) { - die(); + die(); } // Phew! Return to normal behaviour Carbon::setTestNow(); if (Carbon::now()->isWeekend()) { - echo 'Party!'; + echo 'Party!'; } echo Carbon::now()->subMinutes(2)->diffForHumans(); // '2 minutes ago' // ... but also does 'from now', 'after' and 'before' // rolling up to seconds, minutes, hours, days, months, years -$daysSinceEpoch = Carbon::createFromTimeStamp(0)->diffInDays(); +$daysSinceEpoch = Carbon::createFromTimestamp(0)->diffInDays(); ``` ## Installation diff --git a/vendor/nesbot/carbon/src/Carbon/Carbon.php b/vendor/nesbot/carbon/src/Carbon/Carbon.php index 4af5b4188..2d27616da 100644 --- a/vendor/nesbot/carbon/src/Carbon/Carbon.php +++ b/vendor/nesbot/carbon/src/Carbon/Carbon.php @@ -23,14 +23,14 @@ use Symfony\Component\Translation\Loader\ArrayLoader; /** * A simple API extension for DateTime * - * @property integer $year - * @property integer $yearIso - * @property integer $month - * @property integer $day - * @property integer $hour - * @property integer $minute - * @property integer $second - * @property integer $timestamp seconds since the Unix Epoch + * @property int $year + * @property int $yearIso + * @property int $month + * @property int $day + * @property int $hour + * @property int $minute + * @property int $second + * @property int $timestamp seconds since the Unix Epoch * @property DateTimeZone $timezone the current timezone * @property DateTimeZone $tz alias of timezone * @property-read integer $micro @@ -121,7 +121,6 @@ class Carbon extends DateTime */ protected static $toStringFormat = self::DEFAULT_TO_STRING_FORMAT; - /** * First day of week * @@ -162,9 +161,9 @@ class Carbon extends DateTime * * @param DateTimeZone|string|null $object * - * @return DateTimeZone - * * @throws InvalidArgumentException + * + * @return DateTimeZone */ protected static function safeCreateDateTimeZone($object) { @@ -196,8 +195,8 @@ class Carbon extends DateTime * Please see the testing aids section (specifically static::setTestNow()) * for more on the possibility of this constructor returning a test instance. * - * @param string $time - * @param DateTimeZone|string $tz + * @param string|null $time + * @param DateTimeZone|string|null $tz */ public function __construct($time = null, $tz = null) { @@ -210,7 +209,7 @@ class Carbon extends DateTime } //shift the time according to the given time zone - if ($tz !== NULL && $tz != static::getTestNow()->tz) { + if ($tz !== null && $tz !== static::getTestNow()->tz) { $testInstance->setTimezone($tz); } else { $tz = $testInstance->tz; @@ -240,8 +239,8 @@ class Carbon extends DateTime * Carbon::parse('Monday next week')->fn() rather than * (new Carbon('Monday next week'))->fn() * - * @param string $time - * @param DateTimeZone|string $tz + * @param string|null $time + * @param DateTimeZone|string|null $tz * * @return static */ @@ -253,7 +252,7 @@ class Carbon extends DateTime /** * Get a Carbon instance for the current date and time * - * @param DateTimeZone|string $tz + * @param DateTimeZone|string|null $tz * * @return static */ @@ -265,7 +264,7 @@ class Carbon extends DateTime /** * Create a Carbon instance for today * - * @param DateTimeZone|string $tz + * @param DateTimeZone|string|null $tz * * @return static */ @@ -277,7 +276,7 @@ class Carbon extends DateTime /** * Create a Carbon instance for tomorrow * - * @param DateTimeZone|string $tz + * @param DateTimeZone|string|null $tz * * @return static */ @@ -289,7 +288,7 @@ class Carbon extends DateTime /** * Create a Carbon instance for yesterday * - * @param DateTimeZone|string $tz + * @param DateTimeZone|string|null $tz * * @return static */ @@ -305,7 +304,13 @@ class Carbon extends DateTime */ public static function maxValue() { - return static::createFromTimestamp(PHP_INT_MAX); + if (PHP_INT_SIZE === 4) { + // 32 bit (and additionally Windows 64 bit) + return static::createFromTimestamp(PHP_INT_MAX); + } + + // 64 bit + return static::create(9999, 12, 31, 23, 59, 59); } /** @@ -315,7 +320,13 @@ class Carbon extends DateTime */ public static function minValue() { - return static::createFromTimestamp(~PHP_INT_MAX); + if (PHP_INT_SIZE === 4) { + // 32 bit (and additionally Windows 64 bit) + return static::createFromTimestamp(~PHP_INT_MAX); + } + + // 64 bit + return static::create(1, 1, 1, 0, 0, 0); } /** @@ -329,29 +340,29 @@ class Carbon extends DateTime * If $hour is not null then the default values for $minute and $second * will be 0. * - * @param integer $year - * @param integer $month - * @param integer $day - * @param integer $hour - * @param integer $minute - * @param integer $second - * @param DateTimeZone|string $tz + * @param int|null $year + * @param int|null $month + * @param int|null $day + * @param int|null $hour + * @param int|null $minute + * @param int|null $second + * @param DateTimeZone|string|null $tz * * @return static */ public static function create($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $tz = null) { - $year = ($year === null) ? date('Y') : $year; - $month = ($month === null) ? date('n') : $month; - $day = ($day === null) ? date('j') : $day; + $year = $year === null ? date('Y') : $year; + $month = $month === null ? date('n') : $month; + $day = $day === null ? date('j') : $day; if ($hour === null) { $hour = date('G'); - $minute = ($minute === null) ? date('i') : $minute; - $second = ($second === null) ? date('s') : $second; + $minute = $minute === null ? date('i') : $minute; + $second = $second === null ? date('s') : $second; } else { - $minute = ($minute === null) ? 0 : $minute; - $second = ($second === null) ? 0 : $second; + $minute = $minute === null ? 0 : $minute; + $second = $second === null ? 0 : $second; } return static::createFromFormat('Y-n-j G:i:s', sprintf('%s-%s-%s %s:%02s:%02s', $year, $month, $day, $hour, $minute, $second), $tz); @@ -360,10 +371,10 @@ class Carbon extends DateTime /** * Create a Carbon instance from just a date. The time portion is set to now. * - * @param integer $year - * @param integer $month - * @param integer $day - * @param DateTimeZone|string $tz + * @param int|null $year + * @param int|null $month + * @param int|null $day + * @param DateTimeZone|string|null $tz * * @return static */ @@ -375,10 +386,10 @@ class Carbon extends DateTime /** * Create a Carbon instance from just a time. The date portion is set to today. * - * @param integer $hour - * @param integer $minute - * @param integer $second - * @param DateTimeZone|string $tz + * @param int|null $hour + * @param int|null $minute + * @param int|null $second + * @param DateTimeZone|string|null $tz * * @return static */ @@ -390,13 +401,13 @@ class Carbon extends DateTime /** * Create a Carbon instance from a specific format * - * @param string $format - * @param string $time - * @param DateTimeZone|string $tz - * - * @return static + * @param string $format + * @param string $time + * @param DateTimeZone|string|null $tz * * @throws InvalidArgumentException + * + * @return static */ public static function createFromFormat($format, $time, $tz = null) { @@ -417,8 +428,8 @@ class Carbon extends DateTime /** * Create a Carbon instance from a timestamp * - * @param integer $timestamp - * @param DateTimeZone|string $tz + * @param int $timestamp + * @param DateTimeZone|string|null $tz * * @return static */ @@ -430,7 +441,7 @@ class Carbon extends DateTime /** * Create a Carbon instance from an UTC timestamp * - * @param integer $timestamp + * @param int $timestamp * * @return static */ @@ -460,7 +471,7 @@ class Carbon extends DateTime * * @throws InvalidArgumentException * - * @return string|integer|DateTimeZone + * @return string|int|DateTimeZone */ public function __get($name) { @@ -498,13 +509,13 @@ class Carbon extends DateTime return $this->getOffset() / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR; case $name === 'dst': - return $this->format('I') == '1'; + return $this->format('I') === '1'; case $name === 'local': - return $this->offset == $this->copy()->setTimezone(date_default_timezone_get())->offset; + return $this->offset === $this->copy()->setTimezone(date_default_timezone_get())->offset; case $name === 'utc': - return $this->offset == 0; + return $this->offset === 0; case $name === 'timezone' || $name === 'tz': return $this->getTimezone(); @@ -522,7 +533,7 @@ class Carbon extends DateTime * * @param string $name * - * @return boolean + * @return bool */ public function __isset($name) { @@ -538,8 +549,8 @@ class Carbon extends DateTime /** * Set a part of the Carbon object * - * @param string $name - * @param string|integer|DateTimeZone $value + * @param string $name + * @param string|int|DateTimeZone $value * * @throws InvalidArgumentException */ @@ -587,7 +598,7 @@ class Carbon extends DateTime /** * Set the instance's year * - * @param integer $value + * @param int $value * * @return static */ @@ -601,7 +612,7 @@ class Carbon extends DateTime /** * Set the instance's month * - * @param integer $value + * @param int $value * * @return static */ @@ -615,7 +626,7 @@ class Carbon extends DateTime /** * Set the instance's day * - * @param integer $value + * @param int $value * * @return static */ @@ -629,7 +640,7 @@ class Carbon extends DateTime /** * Set the instance's hour * - * @param integer $value + * @param int $value * * @return static */ @@ -643,7 +654,7 @@ class Carbon extends DateTime /** * Set the instance's minute * - * @param integer $value + * @param int $value * * @return static */ @@ -657,7 +668,7 @@ class Carbon extends DateTime /** * Set the instance's second * - * @param integer $value + * @param int $value * * @return static */ @@ -671,12 +682,12 @@ class Carbon extends DateTime /** * Set the date and time all together * - * @param integer $year - * @param integer $month - * @param integer $day - * @param integer $hour - * @param integer $minute - * @param integer $second + * @param int $year + * @param int $month + * @param int $day + * @param int $hour + * @param int $minute + * @param int $second * * @return static */ @@ -685,10 +696,28 @@ class Carbon extends DateTime return $this->setDate($year, $month, $day)->setTime($hour, $minute, $second); } + /** + * Set the time by time string + * + * @param string $time + * + * @return static + */ + public function setTimeFromTimeString($time) + { + $time = explode(":", $time); + + $hour = $time[0]; + $minute = isset($time[1]) ? $time[1] : 0; + $second = isset($time[2]) ? $time[2] : 0; + + return $this->setTime($hour, $minute, $second); + } + /** * Set the instance's timestamp * - * @param integer $value + * @param int $value * * @return static */ @@ -737,8 +766,6 @@ class Carbon extends DateTime return $this; } - - /////////////////////////////////////////////////////////////////// /////////////////////// WEEK SPECIAL DAYS ///////////////////////// /////////////////////////////////////////////////////////////////// @@ -803,7 +830,6 @@ class Carbon extends DateTime static::$weekendDays = $days; } - /////////////////////////////////////////////////////////////////// ///////////////////////// TESTING AIDS //////////////////////////// /////////////////////////////////////////////////////////////////// @@ -822,7 +848,7 @@ class Carbon extends DateTime * To clear the test instance call this method using the default * parameter of null. * - * @param Carbon $testNow + * @param Carbon|null $testNow */ public static function setTestNow(Carbon $testNow = null) { @@ -844,7 +870,7 @@ class Carbon extends DateTime * Determine if there is a valid test instance set. A valid test instance * is anything that is not null. * - * @return boolean true if there is a test instance, otherwise false + * @return bool true if there is a test instance, otherwise false */ public static function hasTestNow() { @@ -857,7 +883,7 @@ class Carbon extends DateTime * * @param string $time * - * @return boolean true if there is a keyword, otherwise false + * @return bool true if there is a keyword, otherwise false */ public static function hasRelativeKeywords($time) { @@ -884,7 +910,7 @@ class Carbon extends DateTime */ protected static function translator() { - if (static::$translator == null) { + if (static::$translator === null) { static::$translator = new Translator('en'); static::$translator->addLoader('array', new ArrayLoader()); static::setLocale('en'); @@ -952,7 +978,7 @@ class Carbon extends DateTime { // Check for Windows to find and replace the %e // modifier correctly - if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { + if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { $format = preg_replace('#(? and < comparison should be used or <= or >= + * @param Carbon $dt1 + * @param Carbon $dt2 + * @param bool $equal Indicates if a > and < comparison should be used or <= or >= * - * @return boolean + * @return bool */ public function between(Carbon $dt1, Carbon $dt2, $equal = true) { @@ -1243,21 +1268,47 @@ class Carbon extends DateTime if ($equal) { return $this->gte($dt1) && $this->lte($dt2); - } else { - return $this->gt($dt1) && $this->lt($dt2); } + + return $this->gt($dt1) && $this->lt($dt2); + } + + /** + * Get the closest date from the instance. + * + * @param Carbon $dt1 + * @param Carbon $dt2 + * + * @return static + */ + public function closest(Carbon $dt1, Carbon $dt2) + { + return $this->diffInSeconds($dt1) < $this->diffInSeconds($dt2) ? $dt1 : $dt2; + } + + /** + * Get the farthest date from the instance. + * + * @param Carbon $dt1 + * @param Carbon $dt2 + * + * @return static + */ + public function farthest(Carbon $dt1, Carbon $dt2) + { + return $this->diffInSeconds($dt1) > $this->diffInSeconds($dt2) ? $dt1 : $dt2; } /** * Get the minimum instance between a given instance (default now) and the current instance. * - * @param Carbon $dt + * @param Carbon|null $dt * * @return static */ public function min(Carbon $dt = null) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return $this->lt($dt) ? $this : $dt; } @@ -1265,13 +1316,13 @@ class Carbon extends DateTime /** * Get the maximum instance between a given instance (default now) and the current instance. * - * @param Carbon $dt + * @param Carbon|null $dt * * @return static */ public function max(Carbon $dt = null) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return $this->gt($dt) ? $this : $dt; } @@ -1279,7 +1330,7 @@ class Carbon extends DateTime /** * Determines if the instance is a weekday * - * @return boolean + * @return bool */ public function isWeekday() { @@ -1289,7 +1340,7 @@ class Carbon extends DateTime /** * Determines if the instance is a weekend day * - * @return boolean + * @return bool */ public function isWeekend() { @@ -1299,7 +1350,7 @@ class Carbon extends DateTime /** * Determines if the instance is yesterday * - * @return boolean + * @return bool */ public function isYesterday() { @@ -1309,7 +1360,7 @@ class Carbon extends DateTime /** * Determines if the instance is today * - * @return boolean + * @return bool */ public function isToday() { @@ -1319,7 +1370,7 @@ class Carbon extends DateTime /** * Determines if the instance is tomorrow * - * @return boolean + * @return bool */ public function isTomorrow() { @@ -1329,7 +1380,7 @@ class Carbon extends DateTime /** * Determines if the instance is in the future, ie. greater (after) than now * - * @return boolean + * @return bool */ public function isFuture() { @@ -1339,7 +1390,7 @@ class Carbon extends DateTime /** * Determines if the instance is in the past, ie. less (before) than now * - * @return boolean + * @return bool */ public function isPast() { @@ -1349,18 +1400,19 @@ class Carbon extends DateTime /** * Determines if the instance is a leap year * - * @return boolean + * @return bool */ public function isLeapYear() { - return $this->format('L') == '1'; + return $this->format('L') === '1'; } /** * Checks if the passed in date is the same day as the instance current day. * - * @param Carbon $dt - * @return boolean + * @param Carbon $dt + * + * @return bool */ public function isSameDay(Carbon $dt) { @@ -1369,8 +1421,8 @@ class Carbon extends DateTime /** * Checks if this day is a Sunday. - * - * @return boolean + * + * @return bool */ public function isSunday() { @@ -1379,8 +1431,8 @@ class Carbon extends DateTime /** * Checks if this day is a Monday. - * - * @return boolean + * + * @return bool */ public function isMonday() { @@ -1389,8 +1441,8 @@ class Carbon extends DateTime /** * Checks if this day is a Tuesday. - * - * @return boolean + * + * @return bool */ public function isTuesday() { @@ -1399,8 +1451,8 @@ class Carbon extends DateTime /** * Checks if this day is a Wednesday. - * - * @return boolean + * + * @return bool */ public function isWednesday() { @@ -1409,8 +1461,8 @@ class Carbon extends DateTime /** * Checks if this day is a Thursday. - * - * @return boolean + * + * @return bool */ public function isThursday() { @@ -1419,8 +1471,8 @@ class Carbon extends DateTime /** * Checks if this day is a Friday. - * - * @return boolean + * + * @return bool */ public function isFriday() { @@ -1429,14 +1481,14 @@ class Carbon extends DateTime /** * Checks if this day is a Saturday. - * - * @return boolean + * + * @return bool */ public function isSaturday() { return $this->dayOfWeek === static::SATURDAY; } - + /////////////////////////////////////////////////////////////////// /////////////////// ADDITIONS AND SUBTRACTIONS //////////////////// /////////////////////////////////////////////////////////////////// @@ -1445,7 +1497,7 @@ class Carbon extends DateTime * Add years to the instance. Positive $value travel forward while * negative $value travel into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1457,7 +1509,7 @@ class Carbon extends DateTime /** * Add a year to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1469,7 +1521,7 @@ class Carbon extends DateTime /** * Remove a year from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1481,7 +1533,7 @@ class Carbon extends DateTime /** * Remove years from the instance. * - * @param integer $value + * @param int $value * * @return static */ @@ -1494,7 +1546,7 @@ class Carbon extends DateTime * Add months to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1506,7 +1558,7 @@ class Carbon extends DateTime /** * Add a month to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1518,7 +1570,7 @@ class Carbon extends DateTime /** * Remove a month from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1530,7 +1582,7 @@ class Carbon extends DateTime /** * Remove months from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1543,7 +1595,7 @@ class Carbon extends DateTime * Add months without overflowing to the instance. Positive $value * travels forward while negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1551,7 +1603,7 @@ class Carbon extends DateTime { $date = $this->copy()->addMonths($value); - if ($date->day != $this->day) { + if ($date->day !== $this->day) { $date->day(1)->subMonth()->day($date->daysInMonth); } @@ -1561,7 +1613,7 @@ class Carbon extends DateTime /** * Add a month with no overflow to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1573,7 +1625,7 @@ class Carbon extends DateTime /** * Remove a month with no overflow from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1585,7 +1637,7 @@ class Carbon extends DateTime /** * Remove months with no overflow from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1598,7 +1650,7 @@ class Carbon extends DateTime * Add days to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1610,7 +1662,7 @@ class Carbon extends DateTime /** * Add a day to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1622,7 +1674,7 @@ class Carbon extends DateTime /** * Remove a day from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1634,7 +1686,7 @@ class Carbon extends DateTime /** * Remove days from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1647,7 +1699,7 @@ class Carbon extends DateTime * Add weekdays to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1659,7 +1711,7 @@ class Carbon extends DateTime /** * Add a weekday to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1671,7 +1723,7 @@ class Carbon extends DateTime /** * Remove a weekday from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1683,7 +1735,7 @@ class Carbon extends DateTime /** * Remove weekdays from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1696,7 +1748,7 @@ class Carbon extends DateTime * Add weeks to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1708,7 +1760,7 @@ class Carbon extends DateTime /** * Add a week to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1720,7 +1772,7 @@ class Carbon extends DateTime /** * Remove a week from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1732,7 +1784,7 @@ class Carbon extends DateTime /** * Remove weeks to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1745,7 +1797,7 @@ class Carbon extends DateTime * Add hours to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1757,7 +1809,7 @@ class Carbon extends DateTime /** * Add an hour to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1769,7 +1821,7 @@ class Carbon extends DateTime /** * Remove an hour from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1781,7 +1833,7 @@ class Carbon extends DateTime /** * Remove hours from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1794,7 +1846,7 @@ class Carbon extends DateTime * Add minutes to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1806,7 +1858,7 @@ class Carbon extends DateTime /** * Add a minute to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1818,7 +1870,7 @@ class Carbon extends DateTime /** * Remove a minute from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1830,7 +1882,7 @@ class Carbon extends DateTime /** * Remove minutes from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1843,7 +1895,7 @@ class Carbon extends DateTime * Add seconds to the instance. Positive $value travels forward while * negative $value travels into the past. * - * @param integer $value + * @param int $value * * @return static */ @@ -1855,7 +1907,7 @@ class Carbon extends DateTime /** * Add a second to the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1867,7 +1919,7 @@ class Carbon extends DateTime /** * Remove a second from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1879,7 +1931,7 @@ class Carbon extends DateTime /** * Remove seconds from the instance * - * @param integer $value + * @param int $value * * @return static */ @@ -1895,14 +1947,14 @@ class Carbon extends DateTime /** * Get the difference in years * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInYears(Carbon $dt = null, $abs = true) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return (int) $this->diff($dt, $abs)->format('%r%y'); } @@ -1910,14 +1962,14 @@ class Carbon extends DateTime /** * Get the difference in months * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInMonths(Carbon $dt = null, $abs = true) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return $this->diffInYears($dt, $abs) * static::MONTHS_PER_YEAR + (int) $this->diff($dt, $abs)->format('%r%m'); } @@ -1925,10 +1977,10 @@ class Carbon extends DateTime /** * Get the difference in weeks * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInWeeks(Carbon $dt = null, $abs = true) { @@ -1938,14 +1990,14 @@ class Carbon extends DateTime /** * Get the difference in days * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInDays(Carbon $dt = null, $abs = true) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return (int) $this->diff($dt, $abs)->format('%r%a'); } @@ -1953,9 +2005,9 @@ class Carbon extends DateTime /** * Get the difference in days using a filter closure * - * @param Closure $callback - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Closure $callback + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * * @return int */ @@ -1967,9 +2019,9 @@ class Carbon extends DateTime /** * Get the difference in hours using a filter closure * - * @param Closure $callback - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Closure $callback + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * * @return int */ @@ -1981,17 +2033,17 @@ class Carbon extends DateTime /** * Get the difference by the given interval using a filter closure * - * @param CarbonInterval $ci An interval to traverse by - * @param Closure $callback - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param CarbonInterval $ci An interval to traverse by + * @param Closure $callback + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * * @return int */ public function diffFiltered(CarbonInterval $ci, Closure $callback, Carbon $dt = null, $abs = true) { $start = $this; - $end = ($dt === null) ? static::now($this->tz) : $dt; + $end = $dt ?: static::now($this->tz); $inverse = false; if ($end < $start) { @@ -2013,8 +2065,8 @@ class Carbon extends DateTime /** * Get the difference in weekdays * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * * @return int */ @@ -2028,8 +2080,8 @@ class Carbon extends DateTime /** * Get the difference in weekend days using a filter * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * * @return int */ @@ -2043,10 +2095,10 @@ class Carbon extends DateTime /** * Get the difference in hours * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInHours(Carbon $dt = null, $abs = true) { @@ -2056,10 +2108,10 @@ class Carbon extends DateTime /** * Get the difference in minutes * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInMinutes(Carbon $dt = null, $abs = true) { @@ -2069,14 +2121,14 @@ class Carbon extends DateTime /** * Get the difference in seconds * - * @param Carbon $dt - * @param boolean $abs Get the absolute of the difference + * @param Carbon|null $dt + * @param bool $abs Get the absolute of the difference * - * @return integer + * @return int */ public function diffInSeconds(Carbon $dt = null, $abs = true) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); $value = $dt->getTimestamp() - $this->getTimestamp(); return $abs ? abs($value) : $value; @@ -2085,7 +2137,7 @@ class Carbon extends DateTime /** * The number of seconds since midnight. * - * @return integer + * @return int */ public function secondsSinceMidnight() { @@ -2095,7 +2147,7 @@ class Carbon extends DateTime /** * The number of seconds until 23:23:59. * - * @return integer + * @return int */ public function secondsUntilEndOfDay() { @@ -2121,8 +2173,8 @@ class Carbon extends DateTime * 1 hour after * 5 months after * - * @param Carbon $other - * @param bool $absolute removes time difference modifiers ago, after, etc + * @param Carbon|null $other + * @param bool $absolute removes time difference modifiers ago, after, etc * * @return string */ @@ -2172,7 +2224,7 @@ class Carbon extends DateTime break; } - if ($count == 0) { + if ($count === 0) { $count = 1; } @@ -2306,7 +2358,7 @@ class Carbon extends DateTime */ public function startOfWeek() { - if ($this->dayOfWeek != static::$weekStartsAt) { + if ($this->dayOfWeek !== static::$weekStartsAt) { $this->previous(static::$weekStartsAt); } @@ -2320,7 +2372,7 @@ class Carbon extends DateTime */ public function endOfWeek() { - if ($this->dayOfWeek != static::$weekEndsAt) { + if ($this->dayOfWeek !== static::$weekEndsAt) { $this->next(static::$weekEndsAt); } @@ -2328,14 +2380,14 @@ class Carbon extends DateTime } /** - * Modify to the next occurence of a given day of the week. - * If no dayOfWeek is provided, modify to the next occurence + * Modify to the next occurrence of a given day of the week. + * If no dayOfWeek is provided, modify to the next occurrence * of the current day of the week. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function next($dayOfWeek = null) { @@ -2347,14 +2399,14 @@ class Carbon extends DateTime } /** - * Modify to the previous occurence of a given day of the week. - * If no dayOfWeek is provided, modify to the previous occurence + * Modify to the previous occurrence of a given day of the week. + * If no dayOfWeek is provided, modify to the previous occurrence * of the current day of the week. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function previous($dayOfWeek = null) { @@ -2366,14 +2418,14 @@ class Carbon extends DateTime } /** - * Modify to the first occurence of a given day of the week + * Modify to the first occurrence of a given day of the week * in the current month. If no dayOfWeek is provided, modify to the * first day of the current month. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function firstOfMonth($dayOfWeek = null) { @@ -2387,14 +2439,14 @@ class Carbon extends DateTime } /** - * Modify to the last occurence of a given day of the week + * Modify to the last occurrence of a given day of the week * in the current month. If no dayOfWeek is provided, modify to the * last day of the current month. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function lastOfMonth($dayOfWeek = null) { @@ -2408,8 +2460,8 @@ class Carbon extends DateTime } /** - * Modify to the given occurence of a given day of the week - * in the current month. If the calculated occurence is outside the scope + * Modify to the given occurrence of a given day of the week + * in the current month. If the calculated occurrence is outside the scope * of the current month, then return false and no modifications are made. * Use the supplied consts to indicate the desired dayOfWeek, ex. static::MONDAY. * @@ -2424,18 +2476,18 @@ class Carbon extends DateTime $check = $dt->format('Y-m'); $dt->modify('+'.$nth.' '.static::$days[$dayOfWeek]); - return ($dt->format('Y-m') === $check) ? $this->modify($dt) : false; + return $dt->format('Y-m') === $check ? $this->modify($dt) : false; } /** - * Modify to the first occurence of a given day of the week + * Modify to the first occurrence of a given day of the week * in the current quarter. If no dayOfWeek is provided, modify to the * first day of the current quarter. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function firstOfQuarter($dayOfWeek = null) { @@ -2443,14 +2495,14 @@ class Carbon extends DateTime } /** - * Modify to the last occurence of a given day of the week + * Modify to the last occurrence of a given day of the week * in the current quarter. If no dayOfWeek is provided, modify to the * last day of the current quarter. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function lastOfQuarter($dayOfWeek = null) { @@ -2458,8 +2510,8 @@ class Carbon extends DateTime } /** - * Modify to the given occurence of a given day of the week - * in the current quarter. If the calculated occurence is outside the scope + * Modify to the given occurrence of a given day of the week + * in the current quarter. If the calculated occurrence is outside the scope * of the current quarter, then return false and no modifications are made. * Use the supplied consts to indicate the desired dayOfWeek, ex. static::MONDAY. * @@ -2471,22 +2523,22 @@ class Carbon extends DateTime public function nthOfQuarter($nth, $dayOfWeek) { $dt = $this->copy()->day(1)->month($this->quarter * 3); - $last_month = $dt->month; + $lastMonth = $dt->month; $year = $dt->year; $dt->firstOfQuarter()->modify('+'.$nth.' '.static::$days[$dayOfWeek]); - return ($last_month < $dt->month || $year !== $dt->year) ? false : $this->modify($dt); + return ($lastMonth < $dt->month || $year !== $dt->year) ? false : $this->modify($dt); } /** - * Modify to the first occurence of a given day of the week + * Modify to the first occurrence of a given day of the week * in the current year. If no dayOfWeek is provided, modify to the * first day of the current year. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function firstOfYear($dayOfWeek = null) { @@ -2494,14 +2546,14 @@ class Carbon extends DateTime } /** - * Modify to the last occurence of a given day of the week + * Modify to the last occurrence of a given day of the week * in the current year. If no dayOfWeek is provided, modify to the * last day of the current year. Use the supplied consts * to indicate the desired dayOfWeek, ex. static::MONDAY. * - * @param int $dayOfWeek + * @param int|null $dayOfWeek * - * @return mixed + * @return static */ public function lastOfYear($dayOfWeek = null) { @@ -2509,8 +2561,8 @@ class Carbon extends DateTime } /** - * Modify to the given occurence of a given day of the week - * in the current year. If the calculated occurence is outside the scope + * Modify to the given occurrence of a given day of the week + * in the current year. If the calculated occurrence is outside the scope * of the current year, then return false and no modifications are made. * Use the supplied consts to indicate the desired dayOfWeek, ex. static::MONDAY. * @@ -2523,19 +2575,19 @@ class Carbon extends DateTime { $dt = $this->copy()->firstOfYear()->modify('+'.$nth.' '.static::$days[$dayOfWeek]); - return $this->year == $dt->year ? $this->modify($dt) : false; + return $this->year === $dt->year ? $this->modify($dt) : false; } /** * Modify the current instance to the average of a given instance (default now) and the current instance. * - * @param Carbon $dt + * @param Carbon|null $dt * * @return static */ public function average(Carbon $dt = null) { - $dt = ($dt === null) ? static::now($this->tz) : $dt; + $dt = $dt ?: static::now($this->tz); return $this->addSeconds((int) ($this->diffInSeconds($dt, false) / 2)); } @@ -2543,12 +2595,14 @@ class Carbon extends DateTime /** * Check if its the birthday. Compares the date/month values of the two dates. * - * @param Carbon $dt + * @param Carbon|null $dt The instance to compare with or null to use current day. * - * @return boolean + * @return bool */ - public function isBirthday(Carbon $dt) + public function isBirthday(Carbon $dt = null) { + $dt = $dt ?: static::now($this->tz); + return $this->format('md') === $dt->format('md'); } } diff --git a/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php b/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php index 27f86275d..05f00a4b5 100644 --- a/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php +++ b/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php @@ -22,13 +22,13 @@ use Symfony\Component\Translation\Loader\ArrayLoader; * The implemenation provides helpers to handle weeks but only days are saved. * Weeks are calculated based on the total days of the current instance. * - * @property integer $years Total years of the current interval. - * @property integer $months Total months of the current interval. - * @property integer $weeks Total weeks of the current interval calculated from the days. - * @property integer $dayz Total days of the current interval (weeks * 7 + days). - * @property integer $hours Total hours of the current interval. - * @property integer $minutes Total minutes of the current interval. - * @property integer $seconds Total seconds of the current interval. + * @property int $years Total years of the current interval. + * @property int $months Total months of the current interval. + * @property int $weeks Total weeks of the current interval calculated from the days. + * @property int $dayz Total days of the current interval (weeks * 7 + days). + * @property int $hours Total hours of the current interval. + * @property int $minutes Total minutes of the current interval. + * @property int $seconds Total seconds of the current interval. * * @property-read integer $dayzExcludeWeeks Total days remaining in the final week of the current instance (days % 7). * @property-read integer $daysExcludeWeeks alias of dayzExcludeWeeks @@ -48,7 +48,6 @@ use Symfony\Component\Translation\Loader\ArrayLoader; * @method static CarbonInterval minute($minutes = 1) Alias for minutes() * @method static CarbonInterval seconds($seconds = 1) Create instance specifying a number of seconds. * @method static CarbonInterval second($seconds = 1) Alias for seconds() - * * @method CarbonInterval years() years($years = 1) Set the years portion of the current interval. * @method CarbonInterval year() year($years = 1) Alias for years(). * @method CarbonInterval months() months($months = 1) Set the months portion of the current interval. @@ -97,11 +96,11 @@ class CarbonInterval extends DateInterval * * @param DateInterval $interval * - * @return boolean + * @return bool */ private static function wasCreatedFromDiff(DateInterval $interval) { - return ($interval->days !== false && $interval->days !== static::PHP_DAYS_FALSE); + return $interval->days !== false && $interval->days !== static::PHP_DAYS_FALSE; } /////////////////////////////////////////////////////////////////// @@ -111,13 +110,13 @@ class CarbonInterval extends DateInterval /** * Create a new CarbonInterval instance. * - * @param integer $years - * @param integer $months - * @param integer $weeks - * @param integer $days - * @param integer $hours - * @param integer $minutes - * @param integer $seconds + * @param int $years + * @param int $months + * @param int $weeks + * @param int $days + * @param int $hours + * @param int $minutes + * @param int $seconds */ public function __construct($years = 1, $months = null, $weeks = null, $days = null, $hours = null, $minutes = null, $seconds = null) { @@ -130,7 +129,7 @@ class CarbonInterval extends DateInterval $specDays += $weeks > 0 ? $weeks * Carbon::DAYS_PER_WEEK : 0; $specDays += $days > 0 ? $days : 0; - $spec .= ($specDays > 0) ? $specDays.static::PERIOD_DAYS : ''; + $spec .= $specDays > 0 ? $specDays.static::PERIOD_DAYS : ''; if ($hours > 0 || $minutes > 0 || $seconds > 0) { $spec .= static::PERIOD_TIME_PREFIX; @@ -139,6 +138,11 @@ class CarbonInterval extends DateInterval $spec .= $seconds > 0 ? $seconds.static::PERIOD_SECONDS : ''; } + if ($spec === static::PERIOD_PREFIX) { + // Allow the zero interval. + $spec .= '0'.static::PERIOD_YEARS; + } + parent::__construct($spec); } @@ -148,13 +152,13 @@ class CarbonInterval extends DateInterval * syntax as it allows you to do CarbonInterval::create(1)->fn() rather than * (new CarbonInterval(1))->fn(). * - * @param integer $years - * @param integer $months - * @param integer $weeks - * @param integer $days - * @param integer $hours - * @param integer $minutes - * @param integer $seconds + * @param int $years + * @param int $months + * @param int $weeks + * @param int $days + * @param int $hours + * @param int $minutes + * @param int $seconds * * @return static */ @@ -170,13 +174,13 @@ class CarbonInterval extends DateInterval * have the same names. * * @param string $name - * @param array $args + * @param array $args * * @return static */ public static function __callStatic($name, $args) { - $arg = count($args) == 0 ? 1 : $args[0]; + $arg = count($args) === 0 ? 1 : $args[0]; switch ($name) { case 'years': @@ -230,6 +234,7 @@ class CarbonInterval extends DateInterval $instance = new static($di->y, $di->m, 0, $di->d, $di->h, $di->i, $di->s); $instance->invert = $di->invert; $instance->days = $di->days; + return $instance; } @@ -244,7 +249,7 @@ class CarbonInterval extends DateInterval */ protected static function translator() { - if (static::$translator == null) { + if (static::$translator === null) { static::$translator = new Translator('en'); static::$translator->addLoader('array', new ArrayLoader()); static::setLocale('en'); @@ -307,7 +312,7 @@ class CarbonInterval extends DateInterval * * @throws InvalidArgumentException * - * @return integer + * @return int */ public function __get($name) { @@ -346,7 +351,7 @@ class CarbonInterval extends DateInterval * Set a part of the CarbonInterval object * * @param string $name - * @param integer $val + * @param int $val * * @throws InvalidArgumentException */ @@ -387,13 +392,14 @@ class CarbonInterval extends DateInterval * Allow setting of weeks and days to be cumulative. * * @param int $weeks Number of weeks to set - * @param int $days Number of days to set + * @param int $days Number of days to set * * @return static */ public function weeksAndDays($weeks, $days) { $this->dayz = ($weeks * Carbon::DAYS_PER_WEEK) + $days; + return $this; } @@ -404,13 +410,13 @@ class CarbonInterval extends DateInterval * have the same names. * * @param string $name - * @param array $args + * @param array $args * * @return static */ public function __call($name, $args) { - $arg = count($args) == 0 ? 1 : $args[0]; + $arg = count($args) === 0 ? 1 : $args[0]; switch ($name) { case 'years': @@ -491,25 +497,25 @@ class CarbonInterval extends DateInterval } /** - * Add the passed interval to the current instance - * - * @param DateInterval $interval - * - * @return static - */ + * Add the passed interval to the current instance + * + * @param DateInterval $interval + * + * @return static + */ public function add(DateInterval $interval) { - $sign = ($interval->invert === 1) ? -1 : 1; + $sign = $interval->invert === 1 ? -1 : 1; if (static::wasCreatedFromDiff($interval)) { - $this->dayz = $this->dayz + ($interval->days * $sign); + $this->dayz = $this->dayz + $interval->days * $sign; } else { - $this->years = $this->years + ($interval->y * $sign); - $this->months = $this->months + ($interval->m * $sign); - $this->dayz = $this->dayz + ($interval->d * $sign); - $this->hours = $this->hours + ($interval->h * $sign); - $this->minutes = $this->minutes + ($interval->i * $sign); - $this->seconds = $this->seconds + ($interval->s * $sign); + $this->years = $this->years + $interval->y * $sign; + $this->months = $this->months + $interval->m * $sign; + $this->dayz = $this->dayz + $interval->d * $sign; + $this->hours = $this->hours + $interval->h * $sign; + $this->minutes = $this->minutes + $interval->i * $sign; + $this->seconds = $this->seconds + $interval->s * $sign; } return $this; diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/af.php b/vendor/nesbot/carbon/src/Carbon/Lang/af.php new file mode 100644 index 000000000..86ab541c1 --- /dev/null +++ b/vendor/nesbot/carbon/src/Carbon/Lang/af.php @@ -0,0 +1,28 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +/** + * Translation messages. See http://symfony.com/doc/current/book/translation.html + * for possible formats. + */ +return array( + 'year' => '1 jaar|:count jare', + 'month' => '1 maand|:count maande', + 'week' => '1 week|:count weke', + 'day' => '1 dag|:count dae', + 'hour' => '1 uur|:count ure', + 'minute' => '1 minuut|:count minute', + 'second' => '1 sekond|:count sekondes', + 'ago' => ':time terug', + 'from_now' => ':time van nou af', + 'after' => ':time na', + 'before' => ':time voor', +); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ar.php b/vendor/nesbot/carbon/src/Carbon/Lang/ar.php index 610e06434..76b277219 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ar.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ar.php @@ -11,20 +11,19 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/ar/date.php */ return array( - 'year' => '{0}سنة|{1}سنة|{2}سنتين|[3,10]:count سنوات|[11,Inf] سنة', - 'month' => '{0}شهر|{1}شهر|{2}شهرين|[3,10]:count أشهر|[11,Inf] شهر', - 'week' => '{0}أسبوع|{1}أسبوع|{2}أسبوعين|[3,10]:count أسابيع|[11,Inf] أسبوع', + 'year' => '{0}سنة|{1}سنة|{2}سنتين|[3,10]:count سنوات|[11,Inf]:count سنة', + 'month' => '{0}شهر|{1} شهر|{2}شهرين|[3,10]:count أشهر|[11,Inf]:count شهر', + 'week' => '{0}إسبوع|{1}إسبوع|{2}إسبوعين|[3,10]:count أسابيع|[11,Inf]:count إسبوع', 'day' => '{0}يوم|{1}يوم|{2}يومين|[3,10]:count أيام|[11,Inf] يوم', - 'hour' => '{0}ساعة|{1}ساعة|{2}ساعتين|[3,10]:count ساعات|[11,Inf] ساعة', + 'hour' => '{0}ساعة|{1}ساعة|{2}ساعتين|[3,10]:count ساعات|[11,Inf]:count ساعة', 'minute' => '{0}دقيقة|{1}دقيقة|{2}دقيقتين|[3,10]:count دقائق|[11,Inf]:count دقيقة', - 'second' => '{0}ثانية|{1}ثانية|{2}ثانيتين|[3,10]:count ثوان|[11,Inf] ثانية', + 'second' => '{0}ثانية|{1}ثانية|{2}ثانيتين|[3,10]:count ثوان|[11,Inf]:count ثانية', 'ago' => 'منذ :time', 'from_now' => 'من الآن :time', 'after' => 'بعد :time', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/az.php b/vendor/nesbot/carbon/src/Carbon/Lang/az.php index 6202be91f..455d26200 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/az.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/az.php @@ -10,9 +10,8 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ - /** +/** * Extracted from https://github.com/The-Hasanov/laravel-date/blob/1006f37c431178b5c7219d02c93579c9690ae546/src/Lang/az.php */ return array( diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/bg.php b/vendor/nesbot/carbon/src/Carbon/Lang/bg.php index 7a262a73c..d70d7804a 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/bg.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/bg.php @@ -11,7 +11,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/bg/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/bn.php b/vendor/nesbot/carbon/src/Carbon/Lang/bn.php index 6a31e532e..41357cd35 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/bn.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/bn.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/eu/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ca.php b/vendor/nesbot/carbon/src/Carbon/Lang/ca.php index 95e04e47e..81451611c 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ca.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ca.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/ca/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/cs.php b/vendor/nesbot/carbon/src/Carbon/Lang/cs.php index d8890c4f1..26a78b326 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/cs.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/cs.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/cs/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/da.php b/vendor/nesbot/carbon/src/Carbon/Lang/da.php index 4586fad2c..d5c6a0ab1 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/da.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/da.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 år|:count år', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/de.php b/vendor/nesbot/carbon/src/Carbon/Lang/de.php index 7586b3235..bf0af71c5 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/de.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/de.php @@ -13,7 +13,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 Jahr|:count Jahre', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/el.php b/vendor/nesbot/carbon/src/Carbon/Lang/el.php index 0cc34e62d..1ecb27126 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/el.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/el.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/el/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/en.php b/vendor/nesbot/carbon/src/Carbon/Lang/en.php index 6b682b5d2..e0ad273f1 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/en.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/en.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 year|:count years', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/eo.php b/vendor/nesbot/carbon/src/Carbon/Lang/eo.php index 34cd0ee7c..3175a2776 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/eo.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/eo.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/eo/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/es.php b/vendor/nesbot/carbon/src/Carbon/Lang/es.php index b4573ecff..2da39a0b8 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/es.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/es.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 año|:count años', @@ -24,6 +23,6 @@ return array( 'second' => '1 segundo|:count segundos', 'ago' => 'hace :time', 'from_now' => 'dentro de :time', - 'after' => ':time antes', - 'before' => ':time después', + 'after' => ':time después', + 'before' => ':time antes', ); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/et.php b/vendor/nesbot/carbon/src/Carbon/Lang/et.php new file mode 100644 index 000000000..68dfae62d --- /dev/null +++ b/vendor/nesbot/carbon/src/Carbon/Lang/et.php @@ -0,0 +1,30 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + */ +return array( + 'year' => '1 aasta|:count aastat', + 'month' => '1 kuu|:count kuud', + 'week' => '1 nädal|:count nädalat', + 'day' => '1 päev|:count päeva', + 'hour' => '1 tund|:count tundi', + 'minute' => '1 minut|:count minutit', + 'second' => '1 sekund|:count sekundit', + 'ago' => ':time tagasi', + 'from_now' => ':time pärast', + 'after' => ':time pärast', + 'before' => ':time enne', + 'year_from_now' => ':count aasta', + 'month_from_now' => ':count kuu', + 'week_from_now' => ':count nädala', + 'day_from_now' => ':count päeva', + 'hour_from_now' => ':count tunni', + 'minute_from_now' => ':count minuti', + 'second_from_now' => ':count sekundi', +); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/eu.php b/vendor/nesbot/carbon/src/Carbon/Lang/eu.php index 91f1d2a60..79c4d1229 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/eu.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/eu.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/eu/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/fa.php b/vendor/nesbot/carbon/src/Carbon/Lang/fa.php index e77e2f5de..8b671da65 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/fa.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/fa.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/fi.php b/vendor/nesbot/carbon/src/Carbon/Lang/fi.php index 7930c6b72..6198f99d1 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/fi.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/fi.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/fi/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/fo.php b/vendor/nesbot/carbon/src/Carbon/Lang/fo.php index caa8080e0..740f03bf5 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/fo.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/fo.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 ár|:count ár', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/fr.php b/vendor/nesbot/carbon/src/Carbon/Lang/fr.php index b10ac4046..298131a6b 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/fr.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/fr.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 an|:count ans', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/he.php b/vendor/nesbot/carbon/src/Carbon/Lang/he.php index 9ed00f1e8..681915b55 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/he.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/he.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => 'שנה|{2}שנתיים|:count שנים', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/hr.php b/vendor/nesbot/carbon/src/Carbon/Lang/hr.php index 7ab1c267e..ea21cedd8 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/hr.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/hr.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/hr/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/hu.php b/vendor/nesbot/carbon/src/Carbon/Lang/hu.php index a866039d2..f30c0c83c 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/hu.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/hu.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/hu/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/id.php b/vendor/nesbot/carbon/src/Carbon/Lang/id.php index 4b168f63b..56757a5da 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/id.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/id.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/id/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/it.php b/vendor/nesbot/carbon/src/Carbon/Lang/it.php index ef1b55db7..680e0f551 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/it.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/it.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 anno|:count anni', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ja.php b/vendor/nesbot/carbon/src/Carbon/Lang/ja.php index 4b5e77dab..66cbf90bd 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ja.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ja.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/ja/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ko.php b/vendor/nesbot/carbon/src/Carbon/Lang/ko.php index f3ed1c449..fa863d9be 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ko.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ko.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/cs/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/lt.php b/vendor/nesbot/carbon/src/Carbon/Lang/lt.php index 4a6446b76..af8ddcbdc 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/lt.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/lt.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( @@ -27,4 +26,4 @@ return array( 'from_now' => 'už :time', 'after' => 'po :time', 'before' => ':time nuo dabar', -); \ No newline at end of file +); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/lv.php b/vendor/nesbot/carbon/src/Carbon/Lang/lv.php index 07b5a026e..fb66c2269 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/lv.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/lv.php @@ -11,7 +11,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '0 gadiem|:count gada|:count gadiem', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ms.php b/vendor/nesbot/carbon/src/Carbon/Lang/ms.php index 078b9d2da..90304f5b9 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ms.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ms.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => ':count tahun', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/nl.php b/vendor/nesbot/carbon/src/Carbon/Lang/nl.php index 8104b7177..00cd194c4 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/nl.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/nl.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 jaar|:count jaren', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/no.php b/vendor/nesbot/carbon/src/Carbon/Lang/no.php index 0cfd3d334..32a08c806 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/no.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/no.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/no/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/pl.php b/vendor/nesbot/carbon/src/Carbon/Lang/pl.php index 05fea6061..1381d90de 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/pl.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/pl.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/pl/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/pt.php b/vendor/nesbot/carbon/src/Carbon/Lang/pt.php index 28aab4d3d..4ee091ff8 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/pt.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/pt.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/pt/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php b/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php index 70435eef3..cd9a90e75 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => '1 ano|:count anos', @@ -22,6 +21,6 @@ return array( 'second' => '1 segundo|:count segundos', 'ago' => 'há :time', 'from_now' => 'dentro de :time', - 'after' => ':time depois', - 'before' => ':time antes', + 'after' => 'após :time', + 'before' => ':time atrás', ); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ro.php b/vendor/nesbot/carbon/src/Carbon/Lang/ro.php index efc847d20..bd812f0df 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ro.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ro.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/ro/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/ru.php b/vendor/nesbot/carbon/src/Carbon/Lang/ru.php index e4a1cb56a..c843c355e 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/ru.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/ru.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/ru/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/sk.php b/vendor/nesbot/carbon/src/Carbon/Lang/sk.php index 8087afe0a..8729e4545 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/sk.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/sk.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/sk/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/sl.php b/vendor/nesbot/carbon/src/Carbon/Lang/sl.php index 53f810b60..8149a5dd2 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/sl.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/sl.php @@ -10,28 +10,27 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/sl/date.php */ return array( - 'year' => ':count leto|:count leti|:count leta|:count let', - 'month' => ':count mesec|:count meseca|:count mesece|:count mesecev', - 'week' => ':count teden|:count tedna|:count tedne|:count tednov', - 'day' => ':count dan|:count dni|:count dni|:count dni', - 'hour' => ':count uro|:count uri|:count ure|:count ur', - 'minute' => ':count minuto|:count minuti|:count minute|:count minut', - 'second' => ':count sekundo|:count sekundi|:count sekunde|:count sekund', - 'year_ago' => ':count letom|:count leti|:count leti|:count leti', - 'month_ago' => ':count mesecem|:count meseci|:count meseci|:count meseci', - 'week_ago' => ':count tednom|:count tednoma|:count tedni|:count tedni', - 'day_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi', - 'hour_ago' => ':count uro|:count urama|:count urami|:count urami', - 'minute_ago'=> ':count minuto|:count minutama|:count minutami|:count minutami', - 'second_ago'=> ':count sekundo|:count sekundama|:count sekundami|:count sekundami', - 'ago' => 'pred :time', - 'from_now' => 'čez :time', - 'after' => 'čez :time', - 'before' => 'pred :time' + 'year' => ':count leto|:count leti|:count leta|:count let', + 'month' => ':count mesec|:count meseca|:count mesece|:count mesecev', + 'week' => ':count teden|:count tedna|:count tedne|:count tednov', + 'day' => ':count dan|:count dni|:count dni|:count dni', + 'hour' => ':count uro|:count uri|:count ure|:count ur', + 'minute' => ':count minuto|:count minuti|:count minute|:count minut', + 'second' => ':count sekundo|:count sekundi|:count sekunde|:count sekund', + 'year_ago' => ':count letom|:count leti|:count leti|:count leti', + 'month_ago' => ':count mesecem|:count meseci|:count meseci|:count meseci', + 'week_ago' => ':count tednom|:count tednoma|:count tedni|:count tedni', + 'day_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi', + 'hour_ago' => ':count uro|:count urama|:count urami|:count urami', + 'minute_ago'=> ':count minuto|:count minutama|:count minutami|:count minutami', + 'second_ago'=> ':count sekundo|:count sekundama|:count sekundami|:count sekundami', + 'ago' => 'pred :time', + 'from_now' => 'čez :time', + 'after' => 'čez :time', + 'before' => 'pred :time' ); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/sq.php b/vendor/nesbot/carbon/src/Carbon/Lang/sq.php new file mode 100644 index 000000000..477826040 --- /dev/null +++ b/vendor/nesbot/carbon/src/Carbon/Lang/sq.php @@ -0,0 +1,28 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +/** + * Translation messages. See http://symfony.com/doc/current/book/translation.html + * for possible formats. + */ +return array( + 'year' => '1 vit|:count vjet', + 'month' => '1 muaj|:count muaj', + 'week' => '1 javë|:count javë', + 'day' => '1 ditë|:count ditë', + 'hour' => '1 orë|:count orë', + 'minute' => '1 minutë|:count minuta', + 'second' => '1 sekondë|:count sekonda', + 'ago' => ':time më parë', + 'from_now' => ':time nga tani', + 'after' => ':time pas', + 'before' => ':time para', +); diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/sr.php b/vendor/nesbot/carbon/src/Carbon/Lang/sr.php index c19087f33..af060fa53 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/sr.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/sr.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/sr/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/sv.php b/vendor/nesbot/carbon/src/Carbon/Lang/sv.php index 2ed23491e..54f61fcbc 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/sv.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/sv.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/sv/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/th.php b/vendor/nesbot/carbon/src/Carbon/Lang/th.php index aad56c260..13459bc90 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/th.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/th.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/th/date.php @@ -23,7 +22,6 @@ return array( 'hour' => '1 ชั่วโมง|:count ชั่วโมง', 'minute' => '1 นาที|:count นาที', 'second' => '1 วินาที|:count วินาที', - 'ago' => ':time sitten', 'ago' => ':time ที่แล้ว', 'from_now' => ':time จากนี้', 'after' => 'หลัง:time', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/tr.php b/vendor/nesbot/carbon/src/Carbon/Lang/tr.php index 52561db82..d7f5134fd 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/tr.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/tr.php @@ -12,7 +12,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( 'year' => ':count yıl', diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/uk.php b/vendor/nesbot/carbon/src/Carbon/Lang/uk.php index 8e5738671..6a23d2771 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/uk.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/uk.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/uk/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/uz.php b/vendor/nesbot/carbon/src/Carbon/Lang/uz.php index 14f40787c..d9a5efa47 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/uz.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/uz.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ return array( diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/vi.php b/vendor/nesbot/carbon/src/Carbon/Lang/vi.php index 7c70ff9e9..e0e8dfcd4 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/vi.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/vi.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/vi/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/zh-TW.php b/vendor/nesbot/carbon/src/Carbon/Lang/zh-TW.php index 0ffdc7f6a..30f082506 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/zh-TW.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/zh-TW.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/zh-TW/date.php diff --git a/vendor/nesbot/carbon/src/Carbon/Lang/zh.php b/vendor/nesbot/carbon/src/Carbon/Lang/zh.php index 9a74f39a8..58ea74f27 100644 --- a/vendor/nesbot/carbon/src/Carbon/Lang/zh.php +++ b/vendor/nesbot/carbon/src/Carbon/Lang/zh.php @@ -10,7 +10,6 @@ /** * Translation messages. See http://symfony.com/doc/current/book/translation.html * for possible formats. - * */ /** * Extracted from https://github.com/jenssegers/laravel-date/blob/master/src/lang/zh/date.php diff --git a/vendor/nicolaslopezj/searchable/src/SearchableTrait.php b/vendor/nicolaslopezj/searchable/src/SearchableTrait.php index 3645f36f9..ead4c3786 100644 --- a/vendor/nicolaslopezj/searchable/src/SearchableTrait.php +++ b/vendor/nicolaslopezj/searchable/src/SearchableTrait.php @@ -23,6 +23,7 @@ trait SearchableTrait * @param \Illuminate\Database\Eloquent\Builder $q * @param string $search * @param float|null $threshold + * @param boolean $entireText * @return \Illuminate\Database\Eloquent\Builder */ public function scopeSearch(Builder $q, $search, $threshold = null, $entireText = false) @@ -110,6 +111,20 @@ trait SearchableTrait } } + /** + * Returns whether or not to keep duplicates. + * + * @return array + */ + protected function getGroupBy() + { + if (array_key_exists('groupBy', $this->searchable)) { + return $this->searchable['groupBy']; + } + + return false; + } + /** * Returns the table columns. * @@ -154,26 +169,29 @@ trait SearchableTrait */ protected function makeGroupBy(Builder $query) { - $driver = $this->getDatabaseDriver(); - if ($driver == 'sqlsrv') { - $columns = $this->getTableColumns(); + if ($groupBy = $this->getGroupBy()) { + $query->groupBy($groupBy); } else { - $id = $this->getTable() . '.' .$this->primaryKey; + $driver = $this->getDatabaseDriver(); + + if ($driver == 'sqlsrv') { + $columns = $this->getTableColumns(); + } else { + $columns = $this->getTable() . '.' .$this->primaryKey; + } + + $query->groupBy($columns); + $joins = array_keys(($this->getJoins())); foreach ($this->getColumns() as $column => $relevance) { - - array_map(function($join) use ($column, $query){ - - if(Str::contains($column, $join)){ - $query->groupBy("$column"); + array_map(function ($join) use ($column, $query) { + if (Str::contains($column, $join)) { + $query->groupBy($column); } - }, $joins); - } } - $query->groupBy($id); } /** @@ -184,7 +202,7 @@ trait SearchableTrait */ protected function addSelectsToQuery(Builder $query, array $selects) { - $selects = new Expression(implode(' + ', $selects) . ' as relevance'); + $selects = new Expression('avg(' . implode(' + ', $selects) . ') as relevance'); $query->addSelect($selects); } diff --git a/vendor/php-imap/php-imap/README.md b/vendor/php-imap/php-imap/README.md index 6ee45ce34..486b58659 100644 --- a/vendor/php-imap/php-imap/README.md +++ b/vendor/php-imap/php-imap/README.md @@ -29,7 +29,7 @@ Just add following code in the head of your script: use PhpImap\IncomingMail; use PhpImap\IncomingMailAttachment; -### [Usage example](https://github.com/barbushin/php-imap/blob/master/example/index.php) +### Usage example ```php $mailbox = new PhpImap\Mailbox('{imap.gmail.com:993/imap/ssl}INBOX', 'some@gmail.com', '*********', __DIR__); diff --git a/vendor/php-imap/php-imap/composer.json b/vendor/php-imap/php-imap/composer.json index dfbec7be4..ee25f3e6a 100644 --- a/vendor/php-imap/php-imap/composer.json +++ b/vendor/php-imap/php-imap/composer.json @@ -17,11 +17,12 @@ } ], "require": { - "php": ">=5.3.0" + "php": ">=5.3.0", + "ext-imap": "*" }, "autoload": { - "psr-0": { - "PhpImap": "src/" + "psr-4": { + "PhpImap\\": "src/PhpImap/" } }, "minimum-stability": "stable" diff --git a/vendor/php-imap/php-imap/src/PhpImap/IncomingMail.php b/vendor/php-imap/php-imap/src/PhpImap/IncomingMail.php index 7512eee02..17ea0d1fa 100644 --- a/vendor/php-imap/php-imap/src/PhpImap/IncomingMail.php +++ b/vendor/php-imap/php-imap/src/PhpImap/IncomingMail.php @@ -62,4 +62,5 @@ class IncomingMailAttachment { public $id; public $name; public $filePath; + public $disposition; } diff --git a/vendor/phpspec/phpspec/.scrutinizer.yml b/vendor/phpspec/phpspec/.scrutinizer.yml index 98fe8e081..2884b6782 100644 --- a/vendor/phpspec/phpspec/.scrutinizer.yml +++ b/vendor/phpspec/phpspec/.scrutinizer.yml @@ -5,7 +5,7 @@ imports: tools: php_code_sniffer: filter: - excluded-paths: [ spec/*, integration/*, features/* ] + excluded-paths: [ spec/*, integration/*, features/*, src/PhpSpec/Loader/StreamWrapper.php ] config: standard: PSR2 diff --git a/vendor/phpspec/phpspec/.travis.yml b/vendor/phpspec/phpspec/.travis.yml index 62544718a..2feaaa2d3 100644 --- a/vendor/phpspec/phpspec/.travis.yml +++ b/vendor/phpspec/phpspec/.travis.yml @@ -19,7 +19,6 @@ matrix: - php: hhvm - php: 7.0 allow_failures: - - php: 7.0 - env: DEPENDENCIES='dev' fast_finish: true @@ -33,7 +32,7 @@ install: - if [ "$DEPENDENCIES" == "low" ]; then composer update --prefer-lowest; fi; before_script: - - echo "= 50400) echo ',@php5.4';" > php_version_tags.php + - echo "= 50400) echo ',@php5.4'; if (PHP_VERSION_ID >= 70000) echo ',@php7'; }" > php_version_tags.php script: - bin/phpspec run --format=pretty diff --git a/vendor/phpspec/phpspec/CHANGES.md b/vendor/phpspec/phpspec/CHANGES.md index 4d0c1aeaf..d38ee3ddc 100644 --- a/vendor/phpspec/phpspec/CHANGES.md +++ b/vendor/phpspec/phpspec/CHANGES.md @@ -1,3 +1,40 @@ +2.4.0 / 2015/11/28 +================== + +* Improved docblock for beConstructedThrough() + +2.4.0-rc1 / 2015/11/20 +====================== + +* No changes from RC1 + +2.4.0-beta / 2015-11-13 +======================= + +* Handle and present fatal errors + +2.4.0-alpha2 / 2015-11-03 +========================= + +* Fixed edge case with partial use statements + +2.4.0-alpha1 / 2015-11-01 +========================= + +* Initial support for typehinted doubles in PHP7 +* Specs can now be run by specifying a fully qualified class name +* New shouldContain matcher for strings +* Warning added when trying to typehint scalars or callable in spec +* No longer truncates strings when diffing arrays in verbose mode +* New %resource_name% placeholder for generated specs +* Fixed case error in class name that triggered strictness warnings on some platforms +* Fixed undefined index error in some versions of Windows +* Clarified in composer that ext-tokenizer is required +* Supported installation with Symfony 3.0 +* Fixed error when spec and src paths are the same +* New event is fired when phpspec creates a file +* Internal refactoring of Presenter objects + 2.3.0 / 2015-09-07 ================== diff --git a/vendor/phpspec/phpspec/appveyor.yml b/vendor/phpspec/phpspec/appveyor.yml new file mode 100644 index 000000000..b3eb1906e --- /dev/null +++ b/vendor/phpspec/phpspec/appveyor.yml @@ -0,0 +1,50 @@ +build: false +shallow_clone: true +platform: x86 +clone_folder: c:\projects\phpspec + +environment: + matrix: + - PHP_DOWNLOAD_FILE: php-5.6.14-nts-Win32-VC11-x86.zip + +matrix: + allow_failures: + - PHP_DOWNLOAD_FILE: php-5.6.14-nts-Win32-VC11-x86.zip + +skip_commits: + message: /\[ci skip\]/ + +cache: + - c:\php -> appveyor.yml + - '%LOCALAPPDATA%\Composer' + - vendor + +init: + - SET PATH=c:\php;%PATH% + - SET COMPOSER_NO_INTERACTION=1 + - SET PHP=1 + - SET ANSICON=121x90 (121x90) + +install: + - IF EXIST c:\php (SET PHP=0) ELSE (mkdir c:\php) + - cd c:\php + - IF %PHP%==1 appveyor DownloadFile http://windows.php.net/downloads/releases/archives/%PHP_DOWNLOAD_FILE% + - IF %PHP%==1 7z x %PHP_DOWNLOAD_FILE% -y > 7z.log + - IF %PHP%==1 echo @php %%~dp0composer.phar %%* > composer.bat + - appveyor DownloadFile https://getcomposer.org/composer.phar + - copy php.ini-production php.ini /Y + - echo date.timezone="UTC" >> php.ini + - echo extension_dir=ext >> php.ini + - echo extension=php_openssl.dll >> php.ini + - echo extension=php_curl.dll >> php.ini + - echo extension=php_mbstring.dll >> php.ini + - echo extension=php_fileinfo.dll >> php.ini + - cd c:\projects\phpspec + - SET COMPOSER_ROOT_VERSION=dev-master + - composer update --no-progress --ansi + +test_script: + - cd c:\projects\phpspec + - php bin\phpspec run --format=pretty + - php vendor\phpunit\phpunit\phpunit --testdox + - php vendor\behat\behat\bin\behat --format=pretty --tags="~@php-version,@php5.4" diff --git a/vendor/phpspec/phpspec/behat.yml.dist b/vendor/phpspec/phpspec/behat.yml.dist index de745eca2..0219a19d8 100644 --- a/vendor/phpspec/phpspec/behat.yml.dist +++ b/vendor/phpspec/phpspec/behat.yml.dist @@ -9,8 +9,6 @@ default: smoke: contexts: [ IsolatedProcessContext, FilesystemContext ] filters: { tags: @smoke && ~@isolated } - formatters: - progress: ~ no-smoke: suites: diff --git a/vendor/phpspec/phpspec/bin/phpspec b/vendor/phpspec/phpspec/bin/phpspec index b7c16e49f..826d8d00f 100644 --- a/vendor/phpspec/phpspec/bin/phpspec +++ b/vendor/phpspec/phpspec/bin/phpspec @@ -1,7 +1,7 @@ #!/usr/bin/env php application = new Application('2.1-dev'); $this->application->setAutoExit(false); @@ -89,14 +90,16 @@ class ApplicationContext implements Context, MatchersProviderInterface * @When I run phpspec (non interactively) * @When I run phpspec using the :formatter format * @When I run phpspec with the :option option + * @When I run phpspec with :spec specs to run * @When /I run phpspec with option (?P