Repository: divio/djangocms-admin-style Branch: master Commit: 2cc20cacc3ad Files: 140 Total size: 611.5 KB Directory structure: gitextract_fjw6171a/ ├── .coveragerc ├── .csscomb.json ├── .dockerignore ├── .editorconfig ├── .eslintrc.js ├── .github/ │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── codeql.yml │ ├── lint.yml │ ├── publish-to-live-pypi.yml │ ├── publish-to-test-pypi.yml │ ├── screenshots.yml │ └── test.yml ├── .gitignore ├── .nvmrc ├── .pre-commit-config.yaml ├── .tx/ │ └── config ├── CHANGELOG.rst ├── Dockerfile ├── Dockerfile.django-2.2 ├── Dockerfile.django-3.2 ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.rst ├── djangocms_admin_style/ │ ├── __init__.py │ ├── locale/ │ │ ├── de/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── en/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── es/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── fr/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── it/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── lt/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ ├── ru/ │ │ │ └── LC_MESSAGES/ │ │ │ ├── django.mo │ │ │ └── django.po │ │ └── uk/ │ │ └── LC_MESSAGES/ │ │ ├── django.mo │ │ └── django.po │ ├── models.py │ ├── sass/ │ │ ├── components/ │ │ │ ├── _base.scss │ │ │ ├── _changelist.scss │ │ │ ├── _cms-update.scss │ │ │ ├── _cmsplaceholders.scss │ │ │ ├── _content.scss │ │ │ ├── _dashboard.scss │ │ │ ├── _dialog.scss │ │ │ ├── _django-nested-admin.scss │ │ │ ├── _drag-and-drop.scss │ │ │ ├── _filer.scss │ │ │ ├── _footer.scss │ │ │ ├── _forms.scss │ │ │ ├── _header.scss │ │ │ ├── _iconography.scss │ │ │ ├── _icons.scss │ │ │ ├── _login.scss │ │ │ ├── _messages.scss │ │ │ ├── _mobile.scss │ │ │ ├── _modal.scss │ │ │ ├── _shortcuts.scss │ │ │ ├── _sideframe.scss │ │ │ ├── _sticky-nav.scss │ │ │ └── _tables.scss │ │ ├── djangocms-admin.scss │ │ ├── libs/ │ │ │ ├── _html5-boilerplate.scss │ │ │ ├── _iconfont.scss │ │ │ ├── _normalize.scss │ │ │ └── html5-boilerplate/ │ │ │ ├── _fonts.scss │ │ │ ├── _helpers.scss │ │ │ ├── _media.scss │ │ │ ├── _reset.scss │ │ │ └── _styles.scss │ │ ├── mixins/ │ │ │ ├── _all.scss │ │ │ ├── _custom.scss │ │ │ └── _zindex.scss │ │ └── settings/ │ │ ├── _all.scss │ │ ├── _cms.scss │ │ ├── _custom.scss │ │ └── _reset-django-dark-mode.scss │ ├── static/ │ │ └── djangocms_admin_style/ │ │ ├── css/ │ │ │ └── djangocms-admin.css │ │ └── js/ │ │ ├── base-admin.js │ │ ├── dist/ │ │ │ ├── bundle.adminstyle.min.js │ │ │ └── bundle.adminstyle.min.js.LICENSE.txt │ │ └── modules/ │ │ ├── dark-mode.js │ │ ├── datetimefields.js │ │ ├── drag-touch-support.js │ │ ├── form-submit.js │ │ ├── related-widget-wrapper.js │ │ ├── toolbar-dropdown.js │ │ ├── ui-fixes.js │ │ └── update-notification.js │ ├── templates/ │ │ └── admin/ │ │ ├── base_site.html │ │ ├── delete_confirmation.html │ │ ├── delete_selected_confirmation.html │ │ └── inc/ │ │ ├── branding.html │ │ ├── cms_upgrade_notification.html │ │ ├── extrahead.html │ │ ├── extrastyle.html │ │ ├── nav-global.html │ │ ├── title.html │ │ └── userlinks.html │ └── templatetags/ │ ├── __init__.py │ └── admin_style_tags.py ├── gulpfile.js ├── package.json ├── pyproject.toml ├── requirements.in ├── requirements.txt ├── setup.cfg ├── setup.py ├── tests/ │ ├── __init__.py │ ├── frontend/ │ │ ├── .eslintrc.js │ │ ├── casperjs.conf.js │ │ └── integration/ │ │ ├── addNewUser.js │ │ ├── dashboard.js │ │ ├── handlers/ │ │ │ ├── externalMissing.js │ │ │ ├── loadFailures.js │ │ │ ├── missingPages.js │ │ │ ├── pageErrors.js │ │ │ └── suiteFailures.js │ │ ├── loginAdmin.js │ │ ├── pagetree.js │ │ └── setup.js │ ├── requirements/ │ │ ├── base.txt │ │ ├── django-2.2.txt │ │ ├── django-3.2.txt │ │ ├── django-4.2.txt │ │ └── django-5.0.txt │ ├── settings-docker.py │ ├── settings.py │ ├── templates/ │ │ ├── base.html │ │ ├── fullwidth.html │ │ ├── page.html │ │ └── simple.html │ ├── test_migrations.py │ └── test_templatetags.py ├── tox.ini └── webpack.config.js ================================================ FILE CONTENTS ================================================ ================================================ FILE: .coveragerc ================================================ [run] branch = True source = djangocms_admin_style omit = migrations/* tests/* [report] exclude_lines = pragma: no cover def __repr__ if self.debug: if settings.DEBUG raise AssertionError raise NotImplementedError if 0: if __name__ == .__main__.: ignore_errors = True ================================================ FILE: .csscomb.json ================================================ { "always-semicolon": true, "block-indent": " ", "color-case": "lower", "color-shorthand": true, "element-case": "lower", "eof-newline": true, "leading-zero": true, "quotes": "double", "tab-size": true, "remove-empty-rulesets": true, "strip-spaces": true, "unitless-zero": true, "vendor-prefix-align": true, "space-between-declarations": "\n", "space-before-colon": "", "space-after-colon": " ", "space-before-combinator": " ", "space-after-combinator": " ", "space-before-opening-brace": " ", "space-after-opening-brace": "\n", "space-before-selector-delimiter": "", "space-after-selector-delimiter": "\n", "space-before-closing-brace": "\n", "sort-order": [ "$variable", "$extend", "$include", "content", "display", "visibility", "position", "top", "right", "bottom", "left", "float", "clear", "overflow", "overflow-x", "overflow-y", "-ms-overflow-x", "-ms-overflow-y", "clip", "zoom", "flex-direction", "flex-order", "flex-pack", "flex-align", "z-index", "color", "font", "font-family", "font-size", "font-weight", "font-style", "font-variant", "font-size-adjust", "font-stretch", "font-effect", "font-emphasize", "font-emphasize-position", "font-emphasize-style", "font-smooth", "line-height", "text-align", "-webkit-text-align-last", "-moz-text-align-last", "-ms-text-align-last", "text-align-last", "vertical-align", "white-space", "text-decoration", "text-emphasis", "text-emphasis-color", "text-emphasis-style", "text-emphasis-position", "text-indent", "text-rendering", "-ms-text-justify", "text-justify", "letter-spacing", "word-spacing", "-ms-writing-mode", "text-outline", "text-transform", "text-wrap", "text-overflow", "-ms-text-overflow", "text-overflow-ellipsis", "text-overflow-mode", "text-shadow", "-ms-word-wrap", "word-wrap", "word-break", "-ms-word-break", "-moz-tab-size", "-webkit-box-sizing", "-moz-box-sizing", "box-sizing", "width", "min-width", "max-width", "height", "min-height", "max-height", "margin", "margin-top", "margin-right", "margin-bottom", "margin-left", "padding", "padding-top", "padding-right", "padding-bottom", "padding-left", "border", "border-spacing", "border-collapse", "border-width", "border-style", "border-color", "border-top", "border-top-width", "border-top-style", "border-top-color", "border-right", "border-right-width", "border-right-style", "border-right-color", "border-bottom", "border-bottom-width", "border-bottom-style", "border-bottom-color", "border-left", "border-left-width", "border-left-style", "border-left-color", "-webkit-border-radius", "-moz-border-radius", "border-radius", "-webkit-border-top-left-radius", "-moz-border-radius-topleft", "border-top-left-radius", "-webkit-border-top-right-radius", "-moz-border-radius-topright", "border-top-right-radius", "-webkit-border-bottom-right-radius", "-moz-border-radius-bottomright", "border-bottom-right-radius", "-webkit-border-bottom-left-radius", "-moz-border-radius-bottomleft", "border-bottom-left-radius", "-webkit-border-image", "-moz-border-image", "-o-border-image", "border-image", "-webkit-border-image-source", "-moz-border-image-source", "-o-border-image-source", "border-image-source", "-webkit-border-image-slice", "-moz-border-image-slice", "-o-border-image-slice", "border-image-slice", "-webkit-border-image-width", "-moz-border-image-width", "-o-border-image-width", "border-image-width", "-webkit-border-image-outset", "-moz-border-image-outset", "-o-border-image-outset", "border-image-outset", "-webkit-border-image-repeat", "-moz-border-image-repeat", "-o-border-image-repeat", "border-image-repeat", "outline", "outline-width", "outline-style", "outline-color", "outline-offset", "table-layout", "empty-cells", "caption-side", "list-style", "list-style-position", "list-style-type", "list-style-image", "quotes", "counter-reset", "counter-increment", "resize", "cursor", "-webkit-user-select", "-moz-user-select", "-ms-user-select", "user-select", "nav-index", "nav-up", "nav-right", "nav-down", "nav-left", "-o-tab-size", "tab-size", "-webkit-hyphens", "-moz-hyphens", "hyphens", "pointer-events", "opacity", "filter:progid:DXImageTransform.Microsoft.Alpha(Opacity", "-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha", "-ms-interpolation-mode", "background", "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader", "background-color", "background-image", "background-repeat", "background-attachment", "background-position", "background-position-x", "-ms-background-position-x", "background-position-y", "-ms-background-position-y", "-webkit-background-clip", "-moz-background-clip", "background-clip", "background-origin", "-webkit-background-size", "-moz-background-size", "-o-background-size", "background-size", "box-decoration-break", "-webkit-box-shadow", "-moz-box-shadow", "box-shadow", "filter:progid:DXImageTransform.Microsoft.gradient", "-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient", "-webkit-transition", "-moz-transition", "-ms-transition", "-o-transition", "transition", "-webkit-transition-delay", "-moz-transition-delay", "-ms-transition-delay", "-o-transition-delay", "transition-delay", "-webkit-transition-timing-function", "-moz-transition-timing-function", "-ms-transition-timing-function", "-o-transition-timing-function", "transition-timing-function", "-webkit-transition-duration", "-moz-transition-duration", "-ms-transition-duration", "-o-transition-duration", "transition-duration", "-webkit-transition-property", "-moz-transition-property", "-ms-transition-property", "-o-transition-property", "transition-property", "-webkit-transform", "-moz-transform", "-ms-transform", "-o-transform", "transform", "-webkit-transform-origin", "-moz-transform-origin", "-ms-transform-origin", "-o-transform-origin", "transform-origin", "-webkit-animation", "-moz-animation", "-ms-animation", "-o-animation", "animation", "-webkit-animation-name", "-moz-animation-name", "-ms-animation-name", "-o-animation-name", "animation-name", "-webkit-animation-duration", "-moz-animation-duration", "-ms-animation-duration", "-o-animation-duration", "animation-duration", "-webkit-animation-play-state", "-moz-animation-play-state", "-ms-animation-play-state", "-o-animation-play-state", "animation-play-state", "-webkit-animation-timing-function", "-moz-animation-timing-function", "-ms-animation-timing-function", "-o-animation-timing-function", "animation-timing-function", "-webkit-animation-delay", "-moz-animation-delay", "-ms-animation-delay", "-o-animation-delay", "animation-delay", "-webkit-animation-iteration-count", "-moz-animation-iteration-count", "-ms-animation-iteration-count", "-o-animation-iteration-count", "animation-iteration-count", "-webkit-animation-direction", "-moz-animation-direction", "-ms-animation-direction", "-o-animation-direction", "animation-direction", "speak" ] } ================================================ FILE: .dockerignore ================================================ testdb.sqlite node_modules env ================================================ FILE: .editorconfig ================================================ # editorconfig.org root = true [*] indent_style = space indent_size = 4 end_of_line = lf charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true max_line_length = 80 [*.py] max_line_length = 120 quote_type = single [*.{scss,js,html}] max_line_length = 120 indent_style = space quote_type = double [*.js] max_line_length = 120 quote_type = single [*.rst] max_line_length = 80 [*.yml] indent_size = 2 ================================================ FILE: .eslintrc.js ================================================ module.exports = { "env": { "browser": true, "node": true, "jquery": true, "jasmine": true }, "globals": { "CMS": true }, "root": true, "ecmaFeatures": { "modules": true }, "rules": { // Possible Errors "comma-dangle": [2, "never"], "no-cond-assign": 2, "no-console": 1, "no-constant-condition": 2, "no-control-regex": 2, "no-debugger": 2, "no-dupe-args": 2, "no-dupe-keys": 2, "no-duplicate-case": 2, "no-empty-character-class": 2, "no-empty": ["error", { "allowEmptyCatch": true }], "no-ex-assign": 2, "no-extra-boolean-cast": 2, "no-extra-parens": ["error", "all", { "nestedBinaryExpressions": false }], "no-extra-semi": 2, "no-func-assign": 2, "no-inner-declarations": 2, "no-invalid-regexp": 2, "no-irregular-whitespace": 2, "no-negated-in-lhs": 2, "no-obj-calls": 2, "no-regex-spaces": 2, "no-sparse-arrays": 2, "no-unexpected-multiline": 2, "no-unreachable": 2, "use-isnan": 2, "valid-jsdoc": [2, { "requireReturn": false, "requireParamDescription": false, "requireReturnDescription": false, "prefer": { "return": "returns" } }], "valid-typeof": 2, // Best Practices "accessor-pairs": 2, "block-scoped-var": 2, "complexity": ["error", { "max": 10 } ], "consistent-return": 0, "curly": 2, "default-case": 2, "dot-location": [2, "property"], "dot-notation": 2, "eqeqeq": 2, "guard-for-in": 2, "no-alert": 2, "no-caller": 2, "no-case-declarations": 2, "no-div-regex": 2, "no-else-return": 1, "no-empty-pattern": 2, "no-eq-null": 2, "no-eval": 2, "no-extend-native": 2, "no-extra-bind": 2, "no-fallthrough": 2, "no-floating-decimal": 2, "no-implicit-coercion": 0, "no-implied-eval": 2, "no-invalid-this": 0, "no-iterator": 2, "no-labels": 2, "no-lone-blocks": 2, "no-loop-func": 2, "no-magic-numbers": ["error", { "ignore": [0, -1, 1, 2], "ignoreArrayIndexes": true }], "no-multi-spaces": 2, "no-multi-str": 0, "no-native-reassign": 2, "no-new-func": 2, "no-new-wrappers": 2, "no-new": 0, "no-octal-escape": 2, "no-octal": 2, "no-param-reassign": 2, "no-process-env": 0, "no-proto": 2, "no-redeclare": 2, "no-return-assign": 2, "no-script-url": 2, "no-self-compare": 2, "no-sequences": 2, "no-throw-literal": 2, "no-unused-expressions": [2, { "allowShortCircuit": true }], "no-useless-call": 2, "no-useless-concat": 2, "no-void": 2, "no-warning-comments": 0, "no-with": 2, "radix": 2, "vars-on-top": 0, // FIXME should be enabled at some point "wrap-iife": [2, "inside"], "yoda": [2, "never", { "exceptRange": true }], // Strict Mode "strict": 0, // not required with webpack // Variables "init-declarations": 0, "no-catch-shadow": 2, "no-delete-var": 2, "no-label-var": 2, "no-shadow-restricted-names": 2, "no-shadow": 2, "no-undef-init": 2, "no-undef": 2, "no-undefined": 0, "no-unused-vars": 2, "no-use-before-define": 2, // Stylistic Issues "array-bracket-spacing": [2, "never"], "block-spacing": 2, "brace-style": [2, "1tbs"], "camelcase": 0, "comma-spacing": [2, {"before": false, "after": true}], "comma-style": [2, "last"], "computed-property-spacing": [2, "never"], "consistent-this": [2, "that"], "eol-last": 2, "func-names": 0, "func-style": 0, "id-length": 0, "id-match": 0, "indent": ["error", 4, { "SwitchCase": 1 }], "jsx-quotes": 0, "key-spacing": [2, {"beforeColon": false, "afterColon": true}], "linebreak-style": [2, "unix"], "lines-around-comment": 0, "max-nested-callbacks": [2, 5], "new-cap": 2, "new-parens": 2, "newline-after-var": 2, "no-array-constructor": 2, "no-continue": 2, "no-inline-comments": 0, "no-lonely-if": 2, "no-mixed-spaces-and-tabs": 2, "no-multiple-empty-lines": [2, {"max": 2}], "no-negated-condition": 2, "no-nested-ternary": 2, "no-new-object": 2, "no-restricted-syntax": 0, "no-spaced-func": 0, "no-ternary": 0, "no-trailing-spaces": 2, "no-underscore-dangle": 0, "no-unneeded-ternary": 2, "object-curly-spacing": [2, "always", { "objectsInObjects": true, "arraysInObjects": true }], "one-var": [2, "never"], "operator-assignment": 2, "operator-linebreak": [2, "after"], "padded-blocks": 0, "quote-props": [2, "consistent-as-needed"], "quotes": [2, "single", "avoid-escape"], "require-jsdoc": 2, "semi-spacing": [2, {"before": false, "after": true}], "semi": [2, "always"], "sort-vars": 0, "keyword-spacing": 2, "space-before-blocks": 2, "space-before-function-paren": ["error", { "anonymous": "always", "named": "never" }], "space-in-parens": [2, "never"], "space-infix-ops": 2, "space-unary-ops": 2, "spaced-comment": 2, "wrap-regex": 2, // ES6 "arrow-parens": [2, "always"], // Legacy "max-depth": [2, 4], "max-len": [2, 120], "max-params": [2, 3], "max-statements": 0, "no-bitwise": 2, "no-plusplus": 0 } } ================================================ FILE: .github/PULL_REQUEST_TEMPLATE.md ================================================ ## Description ## Related resources * #... * #... ## Checklist * [ ] I have added or modified the tests when changing logic * [ ] I have followed [the conventional commits guidelines](https://www.conventionalcommits.org/) to add meaningful information into the changelog * [ ] I have read the [contribution guidelines ](https://github.com/django-cms/django-cms/blob/develop/CONTRIBUTING.rst) ================================================ FILE: .github/workflows/codeql.yml ================================================ name: "CodeQL" on: push: branches: [ "master" ] pull_request: branches: [ "master" ] schedule: - cron: "7 1 * * 0" jobs: analyze: name: Analyze runs-on: ubuntu-latest permissions: actions: read contents: read security-events: write strategy: fail-fast: false matrix: language: [ javascript ] steps: - name: Checkout uses: actions/checkout@v3 - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: ${{ matrix.language }} queries: +security-and-quality - name: Autobuild uses: github/codeql-action/autobuild@v2 - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v2 with: category: "/language:${{ matrix.language }}" ================================================ FILE: .github/workflows/lint.yml ================================================ name: Lint on: [push] jobs: flake8: name: flake8 runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Python uses: actions/setup-python@v2 with: python-version: 3.9 - name: Install flake8 run: pip install --upgrade flake8 - name: Run flake8 uses: liskin/gh-problem-matcher-wrap@v1 with: linters: flake8 run: flake8 ruff: name: ruff runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: python -Im pip install --user ruff - name: Run ruff on cms run: ruff check --output-format=github djangocms_admin_style ================================================ FILE: .github/workflows/publish-to-live-pypi.yml ================================================ name: Publish Python 🐍 distributions 📦 to pypi on: release: types: - published jobs: build-n-publish: name: Build and publish Python 🐍 distributions 📦 to pypi runs-on: ubuntu-latest steps: - uses: actions/checkout@master - name: Set up Python 3.9 uses: actions/setup-python@v1 with: python-version: 3.9 - name: Install pypa/build run: >- python -m pip install build --user - name: Build a binary wheel and a source tarball run: >- python -m build --sdist --wheel --outdir dist/ . - name: Publish distribution 📦 to PyPI if: startsWith(github.ref, 'refs/tags') uses: pypa/gh-action-pypi-publish@release/v1 with: user: __token__ password: ${{ secrets.PYPI_API_TOKEN }} ================================================ FILE: .github/workflows/publish-to-test-pypi.yml ================================================ name: Publish Python 🐍 distributions 📦 to TestPyPI on: push: branches: - master jobs: build-n-publish: name: Build and publish Python 🐍 distributions 📦 to TestPyPI runs-on: ubuntu-latest steps: - uses: actions/checkout@master - name: Set up Python 3.9 uses: actions/setup-python@v1 with: python-version: 3.9 - name: Install pypa/build run: >- python -m pip install build --user - name: Build a binary wheel and a source tarball run: >- python -m build --sdist --wheel --outdir dist/ . - name: Publish distribution 📦 to Test PyPI uses: pypa/gh-action-pypi-publish@release/v1 with: user: __token__ password: ${{ secrets.TEST_PYPI_API_TOKEN }} repository_url: https://test.pypi.org/legacy/ skip_existing: true ================================================ FILE: .github/workflows/screenshots.yml ================================================ name: screenshots on: pull_request jobs: screenshots: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: python-version: [3.9] # dockerfile uses 3.8 django-version: ['2.2', '3.2'] os: [ ubuntu-20.04, ] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: Run screeshots run: make test VERSION=${{ matrix.django-version }} ================================================ FILE: .github/workflows/test.yml ================================================ name: CodeCov on: [push, pull_request] jobs: unit-tests: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: python-version: [ '3.8', '3.9', '3.10', '3.11'] requirements-file: [ django-2.2.txt, django-3.2.txt, django-4.2.txt, django-5.0.txt, ] os: [ ubuntu-20.04, ] exclude: - requirements-file: django-5.0.txt python-version: 3.8 - requirements-file: django-5.0.txt python-version: 3.9 steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r tests/requirements/${{ matrix.requirements-file }} python setup.py install - name: Run coverage run: coverage run setup.py test - name: Upload Coverage to Codecov uses: codecov/codecov-action@v1 ================================================ FILE: .gitignore ================================================ *.py[cod] *$py.class *.egg-info *.log *.pot .DS_Store .coverage .eggs/ .idea/ .project/ .pydevproject/ .vscode/ .settings/ .tox/ __pycache__/ build/ dist/ env/ .venv/ /~ /node_modules .sass-cache *.css.map npm-debug.log local.sqlite testdb.sqlite* tests/screenshots/* !tests/screenshots/reference-* !djangocms_admin_style/static/djangocms_admin_style/js/dist ================================================ FILE: .nvmrc ================================================ 20 ================================================ FILE: .pre-commit-config.yaml ================================================ ci: autofix_commit_msg: | ci: auto fixes from pre-commit hooks for more information, see https://pre-commit.ci autofix_prs: false autoupdate_commit_msg: 'ci: pre-commit autoupdate' autoupdate_schedule: monthly repos: - repo: https://github.com/asottile/pyupgrade rev: v3.21.2 hooks: - id: pyupgrade args: ["--py39-plus"] - repo: https://github.com/adamchainz/django-upgrade rev: '1.30.0' hooks: - id: django-upgrade args: [--target-version, "3.2"] - repo: https://github.com/asottile/yesqa rev: v1.5.0 hooks: - id: yesqa - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - id: check-merge-conflict - id: debug-statements - id: mixed-line-ending - id: trailing-whitespace - repo: https://github.com/codespell-project/codespell rev: v2.4.2 hooks: - id: codespell - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.15.12 # Use the desired Ruff version hooks: - id: ruff-check # For linting checks args: [--fix] # Optional: automatically fix fixable issues - id: ruff-format # For code formatting - repo: https://github.com/rstcheck/rstcheck rev: v6.2.5 hooks: - id: rstcheck additional_dependencies: - sphinx==6.1.3 - tomli==2.0.1 ================================================ FILE: .tx/config ================================================ [main] host = https://www.transifex.com [djangocms-admin-style.djangocms_admin_style] file_filter = djangocms_admin_style/locale//LC_MESSAGES/django.po source_file = djangocms_admin_style/locale/en/LC_MESSAGES/django.po source_lang = en type = PO ================================================ FILE: CHANGELOG.rst ================================================ ========= Changelog ========= 3.3.0 (2024-01-14) ================== * Allow more than two columns (as in the original Django admin) * Adjust flex-container in newer Django versions (4.2+) for submit row and admin header * Fix help texts for checkboxes and radio buttons * Fix logout menu entry to work with Django 5 3.2.7 (2024-01-04) ================== * Style delete links * Fix read-only fields overlapping with their labels * Adjust flex-container in newer Django versions 3.2.6 (2023-09-18) ================== * Fix bug which adds 'data-theme="undefined"' to admin html tag * Fix broken styling with `.flex-container` * Fix broken color input (#429) * Add Django as requirement in setup.py (#423) 3.2.5 (2023-08-22) ================== * Add support for Django 4.2+ dark mode switch buttons * Add support for Django 4 view related admin buttons * Improve styling compatibility with Django 4.2 * Add support for search field in admin nav (new in Django 4.2) 3.2.4 (2023-04-25) ================== * Fix page tree dropdown cross styling * Fix misaligned apphooks in changelist views. 3.2.3 (2023-01-13) ================== * Fix paginator element overflowing its container. 3.2.2 (2023-01-06) ================== * Fix support of django-shortcuts with original icons from django-shortcuts 3.2.1 (2022-12-15) ================== * Check updates based on pypi releases * Fix too large margin for change list in modal window * Removed unused css generating conflicts for icons fonts of djangocms-admin-style and django-cms core. 3.2.0 (2022-06-13) ================== * Added configurable dark mode (color scheme) 3.1.1 (2022-04-13) ================== * Fix: Missing drop shadows and unreadable button coloring on hover 3.1.0 (2022-03-27) ================== * Add dark mode depending on system settings 3.0.0 (2022-01-22) ================== * Drop support for python 3.5, 3.6 and django 3.0 * Increase calendar box width to show Sundays * Fix datetime fields layout * Fix modal layout issue * Improve readability in form 2.0.2 (2020-11-24) ================== * Fix ``#changelist`` layout issue introduced since Django > 3.1.1 2.0.1 (2020-10-28) ================== * Fixed the icon in the admin dashboard for models that are read only 2.0.0 (2020-08-26) ================== * Added support for Django 3.1 * Dropped support for Python 2.7 and Python 3.4 * Dropped support for Django < 2.2 * Changed ``field-box`` class declarations to ``fieldBox`` * Fixed screenshot tests for Django 2.2 and higher 1.5.0 (2020-01-24) ================== * Added support for Django 3.0 * Added support for Python 3.8 1.4.0 (2019-04-15) ================== * Introduced support for Django 2.2 and django CMS 3.7 * Removed support for Django 2.0 * Extended test matrix * Fixed screenshot tests for Django 2.1 and higher * Added new classifiers 1.3.0 (2019-01-23) ================== * Added support for Django 1.11, 2.0 and 2.1 * Removed support for Django 1.8, 1.9 * Adapted testing infrastructure (tox/travis) to incorporate django CMS 3.5 and 3.6 * Added isort and adapted imports * Adapted code base to align with other supported addons 1.2.9 (2018-10-31) ================== * Fixed a bug where it was possible to submit the same form multiple times 1.2.8 (2018-04-10) ================== * Added styles for buttons in submit row * Fixed multiple UI issues with Django 1.11 1.2.7 (2017-04-19) ================== * Adjusted styles of the new version of django-select2 * Fixes display issues when using django-nested-admin * Moved testing infrastructure to a centralised location ``/tests`` * Removed object tools background and shadow in modal windows * Fixed size of "unknown" state icon * Fixed an issue with tabular inlines restricting the size of ",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+B+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+B+"*(?:value|"+O+")"),e.querySelectorAll("[id~="+b+"-]").length||g.push("~="),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||g.push(".#.+[+~]")})),ue((function(e){var t=a.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+B+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")}))),(n.matchesSelector=K.test(y=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue((function(e){n.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),v.push("!=",W)})),g=g.length&&new RegExp(g.join("|")),v=v.length&&new RegExp(v.join("|")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},S=t?function(e,t){if(e===t)return d=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===a||e.ownerDocument===w&&x(w,e)?-1:t===a||t.ownerDocument===w&&x(w,t)?1:c?q(c,e)-q(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return d=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===a?-1:t===a?1:i?-1:o?1:c?q(c,e)-q(c,t):0;if(i===o)return ce(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?ce(s[r],u[r]):s[r]===w?-1:u[r]===w?1:0},a):p},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&f(e),t=t.replace(U,"='$1']"),!(!n.matchesSelector||!m||v&&v.test(t)||g&&g.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,p,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==p&&f(e),x(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==p&&f(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!m):void 0;return void 0!==o?o:n.attributes||!m?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(d=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(S),d){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},r=oe.selectors={cacheLength:50,createPseudo:se,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(ne,re),e[3]=(e[3]||e[4]||e[5]||"").replace(ne,re),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return V.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&J.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ne,re).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+B+")"+e+"("+B+"|$)"))&&E(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(I," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,d,f,p,h,m=o!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),y=!u&&!s;if(g){if(o){for(;m;){for(d=t;d=d[m];)if(s?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&y){for(p=(l=(c=g[b]||(g[b]={}))[e]||[])[0]===T&&l[1],f=l[0]===T&&l[2],d=p&&g.childNodes[p];d=++p&&d&&d[m]||(f=p=0)||h.pop();)if(1===d.nodeType&&++f&&d===t){c[e]=[T,p,f];break}}else if(y&&(l=(t[b]||(t[b]={}))[e])&&l[0]===T)f=l[1];else for(;(d=++p&&d&&d[m]||(f=p=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++f||(y&&((d[b]||(d[b]={}))[e]=[T,f]),d!==t)););return(f-=i)===r||f%r==0&&f/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=q(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:se((function(e){var t=[],n=[],r=s(e.replace($,"$1"));return r[b]?se((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:se((function(e){return function(t){return oe(e,t).length>0}})),contains:se((function(e){return e=e.replace(ne,re),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}})),lang:se((function(e){return Q.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(ne,re).toLowerCase(),function(t){var n;do{if(n=m?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return!1===e.disabled},disabled:function(e){return!0===e.disabled},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return G.test(e.nodeName)},input:function(e){return Y.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:pe((function(){return[0]})),last:pe((function(e,t){return[t-1]})),eq:pe((function(e,t,n){return[0>n?n+t:n]})),even:pe((function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e})),odd:pe((function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e})),lt:pe((function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e})),gt:pe((function(e,t,n){for(var r=0>n?n+t:n;++rt;t++)r+=e[t].value;return r}function ve(e,t,n){var r=t.dir,i=n&&"parentNode"===r,o=C++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,u,l=[T,o];if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i){if((s=(u=t[b]||(t[b]={}))[r])&&s[0]===T&&s[1]===o)return l[2]=s[2];if(u[r]=l,l[2]=e(t,n,a))return!0}}}function ye(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function be(e,t,n,r,i,o){return r&&!r[b]&&(r=be(r)),i&&!i[b]&&(i=be(i,o)),se((function(o,a,s,u){var l,c,d,f=[],p=[],h=a.length,m=o||function(e,t,n){for(var r=0,i=t.length;i>r;r++)oe(e,t[r],n);return n}(t||"*",s.nodeType?[s]:s,[]),g=!e||!o&&t?m:xe(m,f,e,s,u),v=n?i||(o?e:h||r)?[]:a:g;if(n&&n(g,v,s,u),r)for(l=xe(v,p),r(l,[],s,u),c=l.length;c--;)(d=l[c])&&(v[p[c]]=!(g[p[c]]=d));if(o){if(i||e){if(i){for(l=[],c=v.length;c--;)(d=v[c])&&l.push(g[c]=d);i(null,v=[],l,u)}for(c=v.length;c--;)(d=v[c])&&(l=i?q(o,d):f[c])>-1&&(o[l]=!(a[l]=d))}}else v=xe(v===a?v.splice(h,v.length):v),i?i(null,a,v,u):H.apply(a,v)}))}function we(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],u=a?1:0,c=ve((function(e){return e===t}),s,!0),d=ve((function(e){return q(t,e)>-1}),s,!0),f=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):d(e,n,r));return t=null,i}];o>u;u++)if(n=r.relative[e[u].type])f=[ve(ye(f),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;o>i&&!r.relative[e[i].type];i++);return be(u>1&&ye(f),u>1&&ge(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace($,"$1"),n,i>u&&we(e.slice(u,i)),o>i&&we(e=e.slice(i)),o>i&&ge(e))}f.push(n)}return ye(f)}function Te(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var d,f,h,m=0,g="0",v=o&&[],y=[],x=l,b=o||i&&r.find.TAG("*",c),w=T+=null==x?1:Math.random()||.1,C=b.length;for(c&&(l=a!==p&&a);g!==C&&null!=(d=b[g]);g++){if(i&&d){for(f=0;h=e[f++];)if(h(d,a,s)){u.push(d);break}c&&(T=w)}n&&((d=!h&&d)&&m--,o&&v.push(d))}if(m+=g,n&&g!==m){for(f=0;h=t[f++];)h(v,y,a,s);if(o){if(m>0)for(;g--;)v[g]||y[g]||(y[g]=L.call(u));y=xe(y)}H.apply(u,y),c&&!o&&y.length>0&&m+t.length>1&&oe.uniqueSort(u)}return c&&(T=w,l=x),v};return n?se(o):o}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=oe.tokenize=function(e,t){var n,i,o,a,s,u,l,c=N[e+" "];if(c)return t?0:c.slice(0);for(s=e,u=[],l=r.preFilter;s;){for(a in(!n||(i=z.exec(s)))&&(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=X.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace($," ")}),s=s.slice(n.length)),r.filter)!(i=V[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?oe.error(e):N(e,u).slice(0)},s=oe.compile=function(e,t){var n,r=[],i=[],o=k[e+" "];if(!o){for(t||(t=a(e)),n=t.length;n--;)(o=we(t[n]))[b]?r.push(o):i.push(o);(o=k(e,Te(i,r))).selector=e}return o},u=oe.select=function(e,t,i,o){var u,l,c,d,f,p="function"==typeof e&&e,h=!o&&a(e=p.selector||e);if(i=i||[],1===h.length){if((l=h[0]=h[0].slice(0)).length>2&&"ID"===(c=l[0]).type&&n.getById&&9===t.nodeType&&m&&r.relative[l[1].type]){if(!(t=(r.find.ID(c.matches[0].replace(ne,re),t)||[])[0]))return i;p&&(t=t.parentNode),e=e.slice(l.shift().value.length)}for(u=V.needsContext.test(e)?0:l.length;u--&&(c=l[u],!r.relative[d=c.type]);)if((f=r.find[d])&&(o=f(c.matches[0].replace(ne,re),ee.test(l[0].type)&&he(t.parentNode)||t))){if(l.splice(u,1),!(e=o.length&&ge(l)))return H.apply(i,o),i;break}}return(p||s(e,h))(o,t,!m,i,ee.test(e)&&he(t.parentNode)||t),i},n.sortStable=b.split("").sort(S).join("")===b,n.detectDuplicates=!!d,f(),n.sortDetached=ue((function(e){return 1&e.compareDocumentPosition(p.createElement("div"))})),ue((function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")}))||le("type|href|height|width",(function(e,t,n){return n?void 0:e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ue((function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||le("value",(function(e,t,n){return n||"input"!==e.nodeName.toLowerCase()?void 0:e.defaultValue})),ue((function(e){return null==e.getAttribute("disabled")}))||le(O,(function(e,t,n){var r;return n?void 0:!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),oe}(r);m.find=w,m.expr=w.selectors,m.expr[":"]=m.expr.pseudos,m.unique=w.uniqueSort,m.text=w.getText,m.isXMLDoc=w.isXML,m.contains=w.contains;var T=m.expr.match.needsContext,C=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^.[^:#\[\.,]*$/;function N(e,t,n){if(m.isFunction(t))return m.grep(e,(function(e,r){return!!t.call(e,r,e)!==n}));if(t.nodeType)return m.grep(e,(function(e){return e===t!==n}));if("string"==typeof t){if(E.test(t))return m.filter(t,e,n);t=m.filter(t,e)}return m.grep(e,(function(e){return m.inArray(e,t)>=0!==n}))}m.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?m.find.matchesSelector(r,e)?[r]:[]:m.find.matches(e,m.grep(t,(function(e){return 1===e.nodeType})))},m.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(m(e).filter((function(){for(t=0;i>t;t++)if(m.contains(r[t],this))return!0})));for(t=0;i>t;t++)m.find(e,r[t],n);return(n=this.pushStack(i>1?m.unique(n):n)).selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,"string"==typeof e&&T.test(e)?m(e):e||[],!1).length}});var k,S=r.document,j=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,D=m.fn.init=function(e,t){var n,r;if(!e)return this;if("string"==typeof e){if(!(n="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:j.exec(e))||!n[1]&&t)return!t||t.jquery?(t||k).find(e):this.constructor(t).find(e);if(n[1]){if(t=t instanceof m?t[0]:t,m.merge(this,m.parseHTML(n[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),C.test(n[1])&&m.isPlainObject(t))for(n in t)m.isFunction(this[n])?this[n](t[n]):this.attr(n,t[n]);return this}if((r=S.getElementById(n[2]))&&r.parentNode){if(r.id!==n[2])return k.find(e);this.length=1,this[0]=r}return this.context=S,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):m.isFunction(e)?void 0!==k.ready?k.ready(e):e(m):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),m.makeArray(e,this))};D.prototype=m.fn,k=m(S);var A=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function _(e,t){do{e=e[t]}while(e&&1!==e.nodeType);return e}m.extend({dir:function(e,t,n){for(var r=[],i=e[t];i&&9!==i.nodeType&&(void 0===n||1!==i.nodeType||!m(i).is(n));)1===i.nodeType&&r.push(i),i=i[t];return r},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}}),m.fn.extend({has:function(e){var t,n=m(e,this),r=n.length;return this.filter((function(){for(t=0;r>t;t++)if(m.contains(this,n[t]))return!0}))},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=T.test(e)||"string"!=typeof e?m(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&m.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?m.unique(o):o)},index:function(e){return e?"string"==typeof e?m.inArray(this[0],m(e)):m.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(m.unique(m.merge(this.get(),m(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),m.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return m.dir(e,"parentNode")},parentsUntil:function(e,t,n){return m.dir(e,"parentNode",n)},next:function(e){return _(e,"nextSibling")},prev:function(e){return _(e,"previousSibling")},nextAll:function(e){return m.dir(e,"nextSibling")},prevAll:function(e){return m.dir(e,"previousSibling")},nextUntil:function(e,t,n){return m.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return m.dir(e,"previousSibling",n)},siblings:function(e){return m.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return m.sibling(e.firstChild)},contents:function(e){return m.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:m.merge([],e.childNodes)}},(function(e,t){m.fn[e]=function(n,r){var i=m.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=m.filter(r,i)),this.length>1&&(L[e]||(i=m.unique(i)),A.test(e)&&(i=i.reverse())),this.pushStack(i)}}));var H,M=/\S+/g,q={};function O(){S.addEventListener?(S.removeEventListener("DOMContentLoaded",B,!1),r.removeEventListener("load",B,!1)):(S.detachEvent("onreadystatechange",B),r.detachEvent("onload",B))}function B(){(S.addEventListener||"load"===event.type||"complete"===S.readyState)&&(O(),m.ready())}m.Callbacks=function(e){e="string"==typeof e?q[e]||function(e){var t=q[e]={};return m.each(e.match(M)||[],(function(e,n){t[n]=!0})),t}(e):m.extend({},e);var t,n,r,i,o,a,s=[],u=!e.once&&[],l=function(d){for(n=e.memory&&d,r=!0,o=a||0,a=0,i=s.length,t=!0;s&&i>o;o++)if(!1===s[o].apply(d[0],d[1])&&e.stopOnFalse){n=!1;break}t=!1,s&&(u?u.length&&l(u.shift()):n?s=[]:c.disable())},c={add:function(){if(s){var r=s.length;!function t(n){m.each(n,(function(n,r){var i=m.type(r);"function"===i?e.unique&&c.has(r)||s.push(r):r&&r.length&&"string"!==i&&t(r)}))}(arguments),t?i=s.length:n&&(a=r,l(n))}return this},remove:function(){return s&&m.each(arguments,(function(e,n){for(var r;(r=m.inArray(n,s,r))>-1;)s.splice(r,1),t&&(i>=r&&i--,o>=r&&o--)})),this},has:function(e){return e?m.inArray(e,s)>-1:!(!s||!s.length)},empty:function(){return s=[],i=0,this},disable:function(){return s=u=n=void 0,this},disabled:function(){return!s},lock:function(){return u=void 0,n||c.disable(),this},locked:function(){return!u},fireWith:function(e,n){return!s||r&&!u||(n=[e,(n=n||[]).slice?n.slice():n],t?u.push(n):l(n)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},m.extend({Deferred:function(e){var t=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return m.Deferred((function(n){m.each(t,(function(t,o){var a=m.isFunction(e[t])&&e[t];i[o[1]]((function(){var e=a&&a.apply(this,arguments);e&&m.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[o[0]+"With"](this===r?n.promise():this,a?[e]:arguments)}))})),e=null})).promise()},promise:function(e){return null!=e?m.extend(e,r):r}},i={};return r.pipe=r.then,m.each(t,(function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add((function(){n=s}),t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith})),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=a.call(arguments),s=o.length,u=1!==s||e&&m.isFunction(e.promise)?s:0,l=1===u?e:m.Deferred(),c=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?a.call(arguments):i,r===t?l.notifyWith(n,r):--u||l.resolveWith(n,r)}};if(s>1)for(t=new Array(s),n=new Array(s),r=new Array(s);s>i;i++)o[i]&&m.isFunction(o[i].promise)?o[i].promise().done(c(i,r,o)).fail(l.reject).progress(c(i,n,t)):--u;return u||l.resolveWith(r,o),l.promise()}}),m.fn.ready=function(e){return m.ready.promise().done(e),this},m.extend({isReady:!1,readyWait:1,holdReady:function(e){e?m.readyWait++:m.ready(!0)},ready:function(e){if(!0===e?! --m.readyWait:!m.isReady){if(!S.body)return setTimeout(m.ready);m.isReady=!0,!0!==e&&--m.readyWait>0||(H.resolveWith(S,[m]),m.fn.triggerHandler&&(m(S).triggerHandler("ready"),m(S).off("ready")))}}}),m.ready.promise=function(e){if(!H)if(H=m.Deferred(),"complete"===S.readyState)setTimeout(m.ready);else if(S.addEventListener)S.addEventListener("DOMContentLoaded",B,!1),r.addEventListener("load",B,!1);else{S.attachEvent("onreadystatechange",B),r.attachEvent("onload",B);var t=!1;try{t=null==r.frameElement&&S.documentElement}catch(e){}t&&t.doScroll&&function e(){if(!m.isReady){try{t.doScroll("left")}catch(t){return setTimeout(e,50)}O(),m.ready()}}()}return H.promise(e)};var F,R="undefined";for(F in m(p))break;p.ownLast="0"!==F,p.inlineBlockNeedsLayout=!1,m((function(){var e,t,n,r;(n=S.getElementsByTagName("body")[0])&&n.style&&(t=S.createElement("div"),(r=S.createElement("div")).style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),typeof t.style.zoom!==R&&(t.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",p.inlineBlockNeedsLayout=e=3===t.offsetWidth,e&&(n.style.zoom=1)),n.removeChild(r))})),function(){var e=S.createElement("div");if(null==p.deleteExpando){p.deleteExpando=!0;try{delete e.test}catch(e){p.deleteExpando=!1}}e=null}(),m.acceptData=function(e){var t=m.noData[(e.nodeName+" ").toLowerCase()],n=+e.nodeType||1;return(1===n||9===n)&&(!t||!0!==t&&e.getAttribute("classid")===t)};var P=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,W=/([A-Z])/g;function I(e,t,n){if(void 0===n&&1===e.nodeType){var r="data-"+t.replace(W,"-$1").toLowerCase();if("string"==typeof(n=e.getAttribute(r))){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:P.test(n)?m.parseJSON(n):n)}catch(e){}m.data(e,t,n)}else n=void 0}return n}function $(e){var t;for(t in e)if(("data"!==t||!m.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function z(e,t,n,r){if(m.acceptData(e)){var i,a,s=m.expando,u=e.nodeType,l=u?m.cache:e,c=u?e[s]:e[s]&&s;if(c&&l[c]&&(r||l[c].data)||void 0!==n||"string"!=typeof t)return c||(c=u?e[s]=o.pop()||m.guid++:s),l[c]||(l[c]=u?{}:{toJSON:m.noop}),("object"==typeof t||"function"==typeof t)&&(r?l[c]=m.extend(l[c],t):l[c].data=m.extend(l[c].data,t)),a=l[c],r||(a.data||(a.data={}),a=a.data),void 0!==n&&(a[m.camelCase(t)]=n),"string"==typeof t?null==(i=a[t])&&(i=a[m.camelCase(t)]):i=a,i}}function X(e,t,n){if(m.acceptData(e)){var r,i,o=e.nodeType,a=o?m.cache:e,s=o?e[m.expando]:m.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){i=(t=m.isArray(t)?t.concat(m.map(t,m.camelCase)):t in r||(t=m.camelCase(t))in r?[t]:t.split(" ")).length;for(;i--;)delete r[t[i]];if(n?!$(r):!m.isEmptyObject(r))return}(n||(delete a[s].data,$(a[s])))&&(o?m.cleanData([e],!0):p.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return!!(e=e.nodeType?m.cache[e[m.expando]]:e[m.expando])&&!$(e)},data:function(e,t,n){return z(e,t,n)},removeData:function(e,t){return X(e,t)},_data:function(e,t,n){return z(e,t,n,!0)},_removeData:function(e,t){return X(e,t,!0)}}),m.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=m.data(o),1===o.nodeType&&!m._data(o,"parsedAttrs"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf("data-")&&I(o,r=m.camelCase(r.slice(5)),i[r]);m._data(o,"parsedAttrs",!0)}return i}return"object"==typeof e?this.each((function(){m.data(this,e)})):arguments.length>1?this.each((function(){m.data(this,e,t)})):o?I(o,e,m.data(o,e)):void 0},removeData:function(e){return this.each((function(){m.removeData(this,e)}))}}),m.extend({queue:function(e,t,n){var r;return e?(t=(t||"fx")+"queue",r=m._data(e,t),n&&(!r||m.isArray(n)?r=m._data(e,t,m.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(e,t){t=t||"fx";var n=m.queue(e,t),r=n.length,i=n.shift(),o=m._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,(function(){m.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return m._data(e,n)||m._data(e,n,{empty:m.Callbacks("once memory").add((function(){m._removeData(e,t+"queue"),m._removeData(e,n)}))})}}),m.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.lengths;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},Y=/^(?:checkbox|radio)$/i;!function(){var e=S.createElement("input"),t=S.createElement("div"),n=S.createDocumentFragment();if(t.innerHTML="
a",p.leadingWhitespace=3===t.firstChild.nodeType,p.tbody=!t.getElementsByTagName("tbody").length,p.htmlSerialize=!!t.getElementsByTagName("link").length,p.html5Clone="<:nav>"!==S.createElement("nav").cloneNode(!0).outerHTML,e.type="checkbox",e.checked=!0,n.appendChild(e),p.appendChecked=e.checked,t.innerHTML="",p.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue,n.appendChild(t),t.innerHTML="",p.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,p.noCloneEvent=!0,t.attachEvent&&(t.attachEvent("onclick",(function(){p.noCloneEvent=!1})),t.cloneNode(!0).click()),null==p.deleteExpando){p.deleteExpando=!0;try{delete t.test}catch(e){p.deleteExpando=!1}}}(),function(){var e,t,n=S.createElement("div");for(e in{submit:!0,change:!0,focusin:!0})t="on"+e,(p[e+"Bubbles"]=t in r)||(n.setAttribute(t,"t"),p[e+"Bubbles"]=!1===n.attributes[t].expando);n=null}();var G=/^(?:input|select|textarea)$/i,K=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,ee=/^(?:focusinfocus|focusoutblur)$/,te=/^([^.]*)(?:\.(.+)|)$/;function ne(){return!0}function re(){return!1}function ie(){try{return S.activeElement}catch(e){}}function oe(e){var t=ae.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}m.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,d,f,p,h,g,v=m._data(e);if(v){for(n.handler&&(n=(u=n).handler,i=u.selector),n.guid||(n.guid=m.guid++),(a=v.events)||(a=v.events={}),(c=v.handle)||(c=v.handle=function(e){return typeof m===R||e&&m.event.triggered===e.type?void 0:m.event.dispatch.apply(c.elem,arguments)},c.elem=e),s=(t=(t||"").match(M)||[""]).length;s--;)p=g=(o=te.exec(t[s])||[])[1],h=(o[2]||"").split(".").sort(),p&&(l=m.event.special[p]||{},p=(i?l.delegateType:l.bindType)||p,l=m.event.special[p]||{},d=m.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&m.expr.match.needsContext.test(i),namespace:h.join(".")},u),(f=a[p])||((f=a[p]=[]).delegateCount=0,l.setup&&!1!==l.setup.call(e,r,h,c)||(e.addEventListener?e.addEventListener(p,c,!1):e.attachEvent&&e.attachEvent("on"+p,c))),l.add&&(l.add.call(e,d),d.handler.guid||(d.handler.guid=n.guid)),i?f.splice(f.delegateCount++,0,d):f.push(d),m.event.global[p]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,d,f,p,h,g,v=m.hasData(e)&&m._data(e);if(v&&(c=v.events)){for(l=(t=(t||"").match(M)||[""]).length;l--;)if(p=g=(s=te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),p){for(d=m.event.special[p]||{},f=c[p=(r?d.delegateType:d.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),u=o=f.length;o--;)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,d.remove&&d.remove.call(e,a));u&&!f.length&&(d.teardown&&!1!==d.teardown.call(e,h,v.handle)||m.removeEvent(e,p,v.handle),delete c[p])}else for(p in c)m.event.remove(e,p+t[l],n,r,!0);m.isEmptyObject(c)&&(delete v.handle,m._removeData(e,"events"))}},trigger:function(e,t,n,i){var o,a,s,u,l,c,d,p=[n||S],h=f.call(e,"type")?e.type:e,g=f.call(e,"namespace")?e.namespace.split("."):[];if(s=c=n=n||S,3!==n.nodeType&&8!==n.nodeType&&!ee.test(h+m.event.triggered)&&(h.indexOf(".")>=0&&(g=h.split("."),h=g.shift(),g.sort()),a=h.indexOf(":")<0&&"on"+h,(e=e[m.expando]?e:new m.Event(h,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=g.join("."),e.namespace_re=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:m.makeArray(t,[e]),l=m.event.special[h]||{},i||!l.trigger||!1!==l.trigger.apply(n,t))){if(!i&&!l.noBubble&&!m.isWindow(n)){for(u=l.delegateType||h,ee.test(u+h)||(s=s.parentNode);s;s=s.parentNode)p.push(s),c=s;c===(n.ownerDocument||S)&&p.push(c.defaultView||c.parentWindow||r)}for(d=0;(s=p[d++])&&!e.isPropagationStopped();)e.type=d>1?u:l.bindType||h,(o=(m._data(s,"events")||{})[e.type]&&m._data(s,"handle"))&&o.apply(s,t),(o=a&&s[a])&&o.apply&&m.acceptData(s)&&(e.result=o.apply(s,t),!1===e.result&&e.preventDefault());if(e.type=h,!i&&!e.isDefaultPrevented()&&(!l._default||!1===l._default.apply(p.pop(),t))&&m.acceptData(n)&&a&&n[h]&&!m.isWindow(n)){(c=n[a])&&(n[a]=null),m.event.triggered=h;try{n[h]()}catch(e){}m.event.triggered=void 0,c&&(n[a]=c)}return e.result}},dispatch:function(e){e=m.event.fix(e);var t,n,r,i,o,s=[],u=a.call(arguments),l=(m._data(this,"events")||{})[e.type]||[],c=m.event.special[e.type]||{};if(u[0]=e,e.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,e)){for(s=m.event.handlers.call(this,e,l),t=0;(i=s[t++])&&!e.isPropagationStopped();)for(e.currentTarget=i.elem,o=0;(r=i.handlers[o++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(r.namespace))&&(e.handleObj=r,e.data=r.data,void 0!==(n=((m.event.special[r.origType]||{}).handle||r.handler).apply(i.elem,u))&&!1===(e.result=n)&&(e.preventDefault(),e.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,a=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(!0!==u.disabled||"click"!==e.type)){for(i=[],o=0;s>o;o++)void 0===i[n=(r=t[o]).selector+" "]&&(i[n]=r.needsContext?m(n,this).index(u)>=0:m.find(n,this,null,[u]).length),i[n]&&i.push(r);i.length&&a.push({elem:u,handlers:i})}return s]","i"),le=/^\s+/,ce=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,de=/<([\w:]+)/,fe=/\s*$/g,xe={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:p.htmlSerialize?[0,"",""]:[1,"X
","
"]},be=oe(S).appendChild(S.createElement("div"));function we(e,t){var n,r,i=0,o=typeof e.getElementsByTagName!==R?e.getElementsByTagName(t||"*"):typeof e.querySelectorAll!==R?e.querySelectorAll(t||"*"):void 0;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||m.nodeName(r,t)?o.push(r):m.merge(o,we(r,t));return void 0===t||t&&m.nodeName(e,t)?m.merge([e],o):o}function Te(e){Y.test(e.type)&&(e.defaultChecked=e.checked)}function Ce(e,t){return m.nodeName(e,"table")&&m.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ee(e){return e.type=(null!==m.find.attr(e,"type"))+"/"+e.type,e}function Ne(e){var t=ve.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function ke(e,t){for(var n,r=0;null!=(n=e[r]);r++)m._data(n,"globalEval",!t||m._data(t[r],"globalEval"))}function Se(e,t){if(1===t.nodeType&&m.hasData(e)){var n,r,i,o=m._data(e),a=m._data(t,o),s=o.events;if(s)for(n in delete a.handle,a.events={},s)for(r=0,i=s[n].length;i>r;r++)m.event.add(t,n,s[n][r]);a.data&&(a.data=m.extend({},a.data))}}function je(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!p.noCloneEvent&&t[m.expando]){for(r in(i=m._data(t)).events)m.removeEvent(t,r,i.handle);t.removeAttribute(m.expando)}"script"===n&&t.text!==e.text?(Ee(t).text=e.text,Ne(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),p.html5Clone&&e.innerHTML&&!m.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Y.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}xe.optgroup=xe.option,xe.tbody=xe.tfoot=xe.colgroup=xe.caption=xe.thead,xe.th=xe.td,m.extend({clone:function(e,t,n){var r,i,o,a,s,u=m.contains(e.ownerDocument,e);if(p.html5Clone||m.isXMLDoc(e)||!ue.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(be.innerHTML=e.outerHTML,be.removeChild(o=be.firstChild)),!(p.noCloneEvent&&p.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||m.isXMLDoc(e)))for(r=we(o),s=we(e),a=0;null!=(i=s[a]);++a)r[a]&&je(i,r[a]);if(t)if(n)for(s=s||we(e),r=r||we(o),a=0;null!=(i=s[a]);a++)Se(i,r[a]);else Se(e,o);return(r=we(o,"script")).length>0&&ke(r,!u&&we(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){for(var i,o,a,s,u,l,c,d=e.length,f=oe(t),h=[],g=0;d>g;g++)if((o=e[g])||0===o)if("object"===m.type(o))m.merge(h,o.nodeType?[o]:o);else if(pe.test(o)){for(s=s||f.appendChild(t.createElement("div")),u=(de.exec(o)||["",""])[1].toLowerCase(),c=xe[u]||xe._default,s.innerHTML=c[1]+o.replace(ce,"<$1>")+c[2],i=c[0];i--;)s=s.lastChild;if(!p.leadingWhitespace&&le.test(o)&&h.push(t.createTextNode(le.exec(o)[0])),!p.tbody)for(i=(o="table"!==u||fe.test(o)?""!==c[1]||fe.test(o)?0:s:s.firstChild)&&o.childNodes.length;i--;)m.nodeName(l=o.childNodes[i],"tbody")&&!l.childNodes.length&&o.removeChild(l);for(m.merge(h,s.childNodes),s.textContent="";s.firstChild;)s.removeChild(s.firstChild);s=f.lastChild}else h.push(t.createTextNode(o));for(s&&f.removeChild(s),p.appendChecked||m.grep(we(h,"input"),Te),g=0;o=h[g++];)if((!r||-1===m.inArray(o,r))&&(a=m.contains(o.ownerDocument,o),s=we(f.appendChild(o),"script"),a&&ke(s),n))for(i=0;o=s[i++];)ge.test(o.type||"")&&n.push(o);return s=null,f},cleanData:function(e,t){for(var n,r,i,a,s=0,u=m.expando,l=m.cache,c=p.deleteExpando,d=m.event.special;null!=(n=e[s]);s++)if((t||m.acceptData(n))&&(a=(i=n[u])&&l[i])){if(a.events)for(r in a.events)d[r]?m.event.remove(n,r):m.removeEvent(n,r,a.handle);l[i]&&(delete l[i],c?delete n[u]:typeof n.removeAttribute!==R?n.removeAttribute(u):n[u]=null,o.push(i))}}}),m.fn.extend({text:function(e){return V(this,(function(e){return void 0===e?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||S).createTextNode(e))}),null,e,arguments.length)},append:function(){return this.domManip(arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Ce(this,e).appendChild(e)}))},prepend:function(){return this.domManip(arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ce(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return this.domManip(arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return this.domManip(arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},remove:function(e,t){for(var n,r=e?m.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||m.cleanData(we(n)),n.parentNode&&(t&&m.contains(n.ownerDocument,n)&&ke(we(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&m.cleanData(we(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&m.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return m.clone(this,e,t)}))},html:function(e){return V(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e)return 1===t.nodeType?t.innerHTML.replace(se,""):void 0;if(!("string"!=typeof e||he.test(e)||!p.htmlSerialize&&ue.test(e)||!p.leadingWhitespace&&le.test(e)||xe[(de.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(ce,"<$1>");try{for(;r>n;n++)1===(t=this[n]||{}).nodeType&&(m.cleanData(we(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,(function(t){e=this.parentNode,m.cleanData(we(this)),e&&e.replaceChild(t,this)})),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=s.apply([],e);var n,r,i,o,a,u,l=0,c=this.length,d=this,f=c-1,h=e[0],g=m.isFunction(h);if(g||c>1&&"string"==typeof h&&!p.checkClone&&me.test(h))return this.each((function(n){var r=d.eq(n);g&&(e[0]=h.call(this,n,r.html())),r.domManip(e,t)}));if(c&&(n=(u=m.buildFragment(e,this[0].ownerDocument,!1,this)).firstChild,1===u.childNodes.length&&(u=n),n)){for(i=(o=m.map(we(u,"script"),Ee)).length;c>l;l++)r=u,l!==f&&(r=m.clone(r,!0,!0),i&&m.merge(o,we(r,"script"))),t.call(this[l],r,l);if(i)for(a=o[o.length-1].ownerDocument,m.map(o,Ne),l=0;i>l;l++)r=o[l],ge.test(r.type||"")&&!m._data(r,"globalEval")&&m.contains(a,r)&&(r.src?m._evalUrl&&m._evalUrl(r.src):m.globalEval((r.text||r.textContent||r.innerHTML||"").replace(ye,"")));u=n=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(e,t){m.fn[e]=function(e){for(var n,r=0,i=[],o=m(e),a=o.length-1;a>=r;r++)n=r===a?this:this.clone(!0),m(o[r])[t](n),u.apply(i,n.get());return this.pushStack(i)}}));var De,Ae={};function Le(e,t){var n,i=m(t.createElement(e)).appendTo(t.body),o=r.getDefaultComputedStyle&&(n=r.getDefaultComputedStyle(i[0]))?n.display:m.css(i[0],"display");return i.detach(),o}function _e(e){var t=S,n=Ae[e];return n||("none"!==(n=Le(e,t))&&n||((t=((De=(De||m("