├── .cfignore
├── .circleci
└── config.yml
├── .coveragerc
├── .cspell
└── custom-dictionary-workspace.txt
├── .eslintignore
├── .eslintrc
├── .flake8
├── .github
├── ISSUE_TEMPLATE
│ ├── bug-report.md
│ ├── feature-request.md
│ └── task-issue.md
└── PULL_REQUEST_TEMPLATE.md
├── .gitignore
├── .hound.yml
├── .jshintignore
├── .jshintrc
├── .pre-commit-config.yaml
├── .prettierignore
├── .prettierrc
├── .puppeteerrc.cjs
├── .stylelintrc.json
├── CONTRIBUTING.md
├── LICENSE.md
├── Procfile
├── README.md
├── babel.config.json
├── bin
├── cf_env_setup.sh
└── run.sh
├── code-gov-config.json
├── conftest.py
├── fec
├── .coveragerc
├── data
│ ├── __init__.py
│ ├── admin.py
│ ├── api_caller.py
│ ├── apps.py
│ ├── constants.py
│ ├── ecfr_caller.py
│ ├── jinja2.py
│ ├── legal_test_data.py
│ ├── templates
│ │ ├── browse-data.jinja
│ │ ├── candidates-single.jinja
│ │ ├── committees-single.jinja
│ │ ├── datatable.jinja
│ │ ├── election-lookup.jinja
│ │ ├── elections.jinja
│ │ ├── house-senate-overview.jinja
│ │ ├── landing.jinja
│ │ ├── layouts
│ │ │ ├── main.jinja
│ │ │ ├── sidebar-page.jinja
│ │ │ └── widgets.jinja
│ │ ├── macros
│ │ │ ├── breadcrumbs.jinja
│ │ │ ├── bythenumbers.jinja
│ │ │ ├── chart-committee-overviews.jinja
│ │ │ ├── cycle-select.jinja
│ │ │ ├── datatables.jinja
│ │ │ ├── disclaimer.jinja
│ │ │ ├── document.jinja
│ │ │ ├── entity-pages.jinja
│ │ │ ├── filters
│ │ │ │ ├── checkbox.jinja
│ │ │ │ ├── committee-types.jinja
│ │ │ │ ├── contributor-states.jinja
│ │ │ │ ├── date.jinja
│ │ │ │ ├── districts.jinja
│ │ │ │ ├── dropdown-json.jinja
│ │ │ │ ├── election-filter.jinja
│ │ │ │ ├── filing-frequency.jinja
│ │ │ │ ├── ie-reports.jinja
│ │ │ │ ├── keyword-proximity.jinja
│ │ │ │ ├── office-sought.jinja
│ │ │ │ ├── parties.jinja
│ │ │ │ ├── range.jinja
│ │ │ │ ├── report-type.jinja
│ │ │ │ ├── states.jinja
│ │ │ │ ├── support-oppose.jinja
│ │ │ │ ├── text.jinja
│ │ │ │ ├── typeahead-filter.jinja
│ │ │ │ ├── version-status.jinja
│ │ │ │ └── years.jinja
│ │ │ ├── missing-transferred.jinja
│ │ │ ├── missing.jinja
│ │ │ ├── null.jinja
│ │ │ ├── page-header.jinja
│ │ │ ├── reaction-box.jinja
│ │ │ ├── reporting-info.jinja
│ │ │ ├── search.jinja
│ │ │ ├── tables.jinja
│ │ │ └── widgets.jinja
│ │ ├── partials
│ │ │ ├── allocated-federal-nonfederal-disbursements-filter.jinja
│ │ │ ├── audit-filter.jinja
│ │ │ ├── browse-data
│ │ │ │ ├── bulk-data.jinja
│ │ │ │ ├── candidates.jinja
│ │ │ │ ├── committees.jinja
│ │ │ │ ├── external.jinja
│ │ │ │ ├── filings-reports.jinja
│ │ │ │ ├── historical.jinja
│ │ │ │ ├── loans-debts.jinja
│ │ │ │ ├── raising.jinja
│ │ │ │ └── spending.jinja
│ │ │ ├── candidate
│ │ │ │ ├── about-candidate.jinja
│ │ │ │ ├── filings-tab.jinja
│ │ │ │ ├── financial-summary.jinja
│ │ │ │ ├── other-spending-tab.jinja
│ │ │ │ ├── raising.jinja
│ │ │ │ └── spending.jinja
│ │ │ ├── candidates-filter.jinja
│ │ │ ├── candidates-office-filter.jinja
│ │ │ ├── committee-totals-house-senate.jinja
│ │ │ ├── committee-totals-ie-only.jinja
│ │ │ ├── committee-totals-pac-party.jinja
│ │ │ ├── committee-totals-presidential.jinja
│ │ │ ├── committee
│ │ │ │ ├── about-committee.jinja
│ │ │ │ ├── filings.jinja
│ │ │ │ ├── financial-summary.jinja
│ │ │ │ ├── raising.jinja
│ │ │ │ └── spending.jinja
│ │ │ ├── committees-filter.jinja
│ │ │ ├── communication-costs-filter.jinja
│ │ │ ├── datatable-modal.jinja
│ │ │ ├── debts-filter.jinja
│ │ │ ├── disbursements-filter.jinja
│ │ │ ├── electioneering-communications-filter.jinja
│ │ │ ├── elections
│ │ │ │ ├── about-this-election-tab.jinja
│ │ │ │ ├── election-data-and-compliance-tab.jinja
│ │ │ │ ├── election-profile-cards.jinja
│ │ │ │ ├── other-spending-tab.jinja
│ │ │ │ └── sidebar-nav.jinja
│ │ │ ├── filings-filter.jinja
│ │ │ ├── filters.jinja
│ │ │ ├── filters
│ │ │ │ ├── active-candidates.jinja
│ │ │ │ ├── audit-committee-types.jinja
│ │ │ │ ├── efiling.jinja
│ │ │ │ ├── form-type.jinja
│ │ │ │ ├── primary-general.jinja
│ │ │ │ ├── report-type.jinja
│ │ │ │ └── unique-receipts.jinja
│ │ │ ├── google-tag-manager-noscript.jinja
│ │ │ ├── google-tag-manager-script.jinja
│ │ │ ├── hero.jinja
│ │ │ ├── house-senate-overview
│ │ │ │ ├── section-contributions-across-time.jinja
│ │ │ │ ├── section-summary.jinja
│ │ │ │ └── section-totals-for-all-elections.jinja
│ │ │ ├── independent-expenditures-filter.jinja
│ │ │ ├── individual-contributions-filter.jinja
│ │ │ ├── loading-tab.jinja
│ │ │ ├── loans-filter.jinja
│ │ │ ├── meta-tags-preconnects.jinja
│ │ │ ├── meta-tags.jinja
│ │ │ ├── national-party-account-disbursements-filter.jinja
│ │ │ ├── national-party-account-receipts-filter.jinja
│ │ │ ├── operating-expenditures-filter.jinja
│ │ │ ├── pac-party-filter.jinja
│ │ │ ├── party-coordinated-expenditures-filter.jinja
│ │ │ ├── receipts-filter.jinja
│ │ │ ├── reports-filter.jinja
│ │ │ ├── rulemakings-filter.jinja
│ │ │ ├── warnings.jinja
│ │ │ └── widgets
│ │ │ │ └── contributions-by-state.jinja
│ │ ├── pres-finance-map.jinja
│ │ ├── raising-bythenumbers.jinja
│ │ ├── search-results.jinja
│ │ ├── spending-bythenumbers.jinja
│ │ └── widgets
│ │ │ ├── aggregate-totals.jinja
│ │ │ ├── contributions-by-state.jinja
│ │ │ └── pres-finance-map.jinja
│ ├── templatetags
│ │ ├── __init__.py
│ │ └── filters.py
│ ├── tests
│ │ ├── __init__.py
│ │ ├── test_candidate.py
│ │ ├── test_committee.py
│ │ ├── test_datatables.py
│ │ ├── test_legal_search.py
│ │ └── test_utils.py
│ ├── urls.py
│ ├── utils.py
│ ├── views.py
│ └── views_datatables.py
├── extend_admin
│ └── wagtailadmin
│ │ ├── base.html
│ │ └── widgets
│ │ └── chooser.html
├── fec
│ ├── __init__.py
│ ├── constants.py
│ ├── context.py
│ ├── draftail
│ │ ├── anchor.py
│ │ ├── glossary.py
│ │ └── sansserif.py
│ ├── forms.py
│ ├── middleware.py
│ ├── settings
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── dev.py
│ │ ├── env.py
│ │ └── production.py
│ ├── slack.py
│ ├── static
│ │ ├── css
│ │ │ └── customize-editor.css
│ │ ├── fonts
│ │ │ ├── fec-currencymono-bold.eot
│ │ │ ├── fec-currencymono-bold.ttf
│ │ │ ├── fec-currencymono-bold.woff
│ │ │ ├── fec-currencymono-bold.woff2
│ │ │ ├── fec-currencymono-bolditalic.eot
│ │ │ ├── fec-currencymono-bolditalic.ttf
│ │ │ ├── fec-currencymono-bolditalic.woff
│ │ │ ├── fec-currencymono-bolditalic.woff2
│ │ │ ├── fec-currencymono-italic.eot
│ │ │ ├── fec-currencymono-italic.ttf
│ │ │ ├── fec-currencymono-italic.woff
│ │ │ ├── fec-currencymono-italic.woff2
│ │ │ ├── fec-currencymono-regular.eot
│ │ │ ├── fec-currencymono-regular.ttf
│ │ │ ├── fec-currencymono-regular.woff
│ │ │ ├── fec-currencymono-regular.woff2
│ │ │ ├── gandhiserif-bold.eot
│ │ │ ├── gandhiserif-bold.ttf
│ │ │ ├── gandhiserif-bold.woff
│ │ │ ├── gandhiserif-bold.woff2
│ │ │ ├── gandhiserif-bolditalic.eot
│ │ │ ├── gandhiserif-bolditalic.ttf
│ │ │ ├── gandhiserif-bolditalic.woff
│ │ │ ├── gandhiserif-bolditalic.woff2
│ │ │ ├── gandhiserif-italic.eot
│ │ │ ├── gandhiserif-italic.ttf
│ │ │ ├── gandhiserif-italic.woff
│ │ │ ├── gandhiserif-italic.woff2
│ │ │ ├── gandhiserif-regular.eot
│ │ │ ├── gandhiserif-regular.ttf
│ │ │ ├── gandhiserif-regular.woff
│ │ │ ├── gandhiserif-regular.woff2
│ │ │ ├── karla-bold.eot
│ │ │ ├── karla-bold.ttf
│ │ │ ├── karla-bold.woff
│ │ │ ├── karla-bold.woff2
│ │ │ ├── karla-regular.eot
│ │ │ ├── karla-regular.ttf
│ │ │ ├── karla-regular.woff
│ │ │ └── karla-regular.woff2
│ │ ├── icons
│ │ │ ├── icon-template.scss
│ │ │ ├── input
│ │ │ │ ├── all-files.svg
│ │ │ │ ├── arrow-down-border.svg
│ │ │ │ ├── arrow-down-circle.svg
│ │ │ │ ├── arrow-down.svg
│ │ │ │ ├── arrow-left-border.svg
│ │ │ │ ├── arrow-left-circle.svg
│ │ │ │ ├── arrow-left.svg
│ │ │ │ ├── arrow-right-border.svg
│ │ │ │ ├── arrow-right-circle.svg
│ │ │ │ ├── arrow-right.svg
│ │ │ │ ├── arrow-target.svg
│ │ │ │ ├── arrow-up-border.svg
│ │ │ │ ├── arrow-up-circle.svg
│ │ │ │ ├── arrow-up.svg
│ │ │ │ ├── bang-circle.svg
│ │ │ │ ├── bang.svg
│ │ │ │ ├── bluesky-circle.svg
│ │ │ │ ├── book.svg
│ │ │ │ ├── bulk.svg
│ │ │ │ ├── cal-add.svg
│ │ │ │ ├── calculator.svg
│ │ │ │ ├── calendar.svg
│ │ │ │ ├── candidate.svg
│ │ │ │ ├── cfr.svg
│ │ │ │ ├── check-circle-outline.svg
│ │ │ │ ├── check-circle.svg
│ │ │ │ ├── check.svg
│ │ │ │ ├── checklist-2.svg
│ │ │ │ ├── checklist.svg
│ │ │ │ ├── clipboard-checklist.svg
│ │ │ │ ├── clock-reverse.svg
│ │ │ │ ├── committee-audit.svg
│ │ │ │ ├── committee.svg
│ │ │ │ ├── compass.svg
│ │ │ │ ├── dash.svg
│ │ │ │ ├── data-flag.svg
│ │ │ │ ├── decree.svg
│ │ │ │ ├── direction-sign.svg
│ │ │ │ ├── disbursement.svg
│ │ │ │ ├── document.svg
│ │ │ │ ├── download.svg
│ │ │ │ ├── election.svg
│ │ │ │ ├── example-document.svg
│ │ │ │ ├── exclamation-bubble.svg
│ │ │ │ ├── facebook-circle.svg
│ │ │ │ ├── fax.svg
│ │ │ │ ├── file-box.svg
│ │ │ │ ├── filter.svg
│ │ │ │ ├── financial-document.svg
│ │ │ │ ├── folder-with-person.svg
│ │ │ │ ├── folder.svg
│ │ │ │ ├── github-circle.svg
│ │ │ │ ├── graph-horizontal-ordered.svg
│ │ │ │ ├── graph-horizontal-unordered.svg
│ │ │ │ ├── graph.svg
│ │ │ │ ├── grid.svg
│ │ │ │ ├── hand-envelope.svg
│ │ │ │ ├── hand-money.svg
│ │ │ │ ├── individual-contributions.svg
│ │ │ │ ├── info-circle-outline.svg
│ │ │ │ ├── info-circle.svg
│ │ │ │ ├── list.svg
│ │ │ │ ├── magnifying-glass-arrow.svg
│ │ │ │ ├── magnifying-glass.svg
│ │ │ │ ├── mallet.svg
│ │ │ │ ├── map-pin.svg
│ │ │ │ ├── map-us-states.svg
│ │ │ │ ├── menu.svg
│ │ │ │ ├── minus-circle.svg
│ │ │ │ ├── moving-envelope-circle.svg
│ │ │ │ ├── moving-envelope.svg
│ │ │ │ ├── notebook.svg
│ │ │ │ ├── org-chart.svg
│ │ │ │ ├── papers.svg
│ │ │ │ ├── person-location.svg
│ │ │ │ ├── piggy-bank.svg
│ │ │ │ ├── play-button.svg
│ │ │ │ ├── plus-circle 2.svg
│ │ │ │ ├── plus-circle.svg
│ │ │ │ ├── plus.svg
│ │ │ │ ├── point-down-circle.svg
│ │ │ │ ├── pop-up.svg
│ │ │ │ ├── question-bubble.svg
│ │ │ │ ├── question-circle.svg
│ │ │ │ ├── scale.svg
│ │ │ │ ├── share.svg
│ │ │ │ ├── shield-scales.svg
│ │ │ │ ├── shield.svg
│ │ │ │ ├── signal.svg
│ │ │ │ ├── sort-down.svg
│ │ │ │ ├── sort-up.svg
│ │ │ │ ├── sort.svg
│ │ │ │ ├── speaker.svg
│ │ │ │ ├── stamp-circle.svg
│ │ │ │ ├── star.svg
│ │ │ │ ├── subsection-doc.svg
│ │ │ │ ├── table.svg
│ │ │ │ ├── telephone-circle.svg
│ │ │ │ ├── timer.svg
│ │ │ │ ├── training.svg
│ │ │ │ ├── twitter-circle.svg
│ │ │ │ ├── two-candidates.svg
│ │ │ │ ├── updates.svg
│ │ │ │ ├── usc.svg
│ │ │ │ ├── x-circle.svg
│ │ │ │ ├── x-twitter-circle.svg
│ │ │ │ ├── x.svg
│ │ │ │ └── youtube-circle.svg
│ │ │ └── output
│ │ │ │ ├── all-files.svg
│ │ │ │ ├── arrow-down-border.svg
│ │ │ │ ├── arrow-down-circle.svg
│ │ │ │ ├── arrow-down.svg
│ │ │ │ ├── arrow-left-border.svg
│ │ │ │ ├── arrow-left-circle.svg
│ │ │ │ ├── arrow-left.svg
│ │ │ │ ├── arrow-right-border.svg
│ │ │ │ ├── arrow-right-circle.svg
│ │ │ │ ├── arrow-right.svg
│ │ │ │ ├── arrow-target.svg
│ │ │ │ ├── arrow-up-border.svg
│ │ │ │ ├── arrow-up-circle.svg
│ │ │ │ ├── arrow-up.svg
│ │ │ │ ├── bang-circle.svg
│ │ │ │ ├── bang.svg
│ │ │ │ ├── bluesky-circle.svg
│ │ │ │ ├── book.svg
│ │ │ │ ├── bulk.svg
│ │ │ │ ├── cal-add.svg
│ │ │ │ ├── calculator.svg
│ │ │ │ ├── calendar.svg
│ │ │ │ ├── candidate.svg
│ │ │ │ ├── cfr.svg
│ │ │ │ ├── check-circle-outline.svg
│ │ │ │ ├── check-circle.svg
│ │ │ │ ├── check.svg
│ │ │ │ ├── checklist-2.svg
│ │ │ │ ├── checklist.svg
│ │ │ │ ├── clipboard-checklist.svg
│ │ │ │ ├── clock-reverse.svg
│ │ │ │ ├── committee-audit.svg
│ │ │ │ ├── committee.svg
│ │ │ │ ├── compass.svg
│ │ │ │ ├── dash.svg
│ │ │ │ ├── data-flag.svg
│ │ │ │ ├── decree.svg
│ │ │ │ ├── direction-sign.svg
│ │ │ │ ├── disbursement.svg
│ │ │ │ ├── document.svg
│ │ │ │ ├── download.svg
│ │ │ │ ├── election.svg
│ │ │ │ ├── example-document.svg
│ │ │ │ ├── exclamation-bubble.svg
│ │ │ │ ├── facebook-circle.svg
│ │ │ │ ├── fax.svg
│ │ │ │ ├── file-box.svg
│ │ │ │ ├── filter.svg
│ │ │ │ ├── financial-document.svg
│ │ │ │ ├── folder-with-person.svg
│ │ │ │ ├── folder.svg
│ │ │ │ ├── github-circle.svg
│ │ │ │ ├── graph-horizontal-ordered.svg
│ │ │ │ ├── graph-horizontal-unordered.svg
│ │ │ │ ├── graph.svg
│ │ │ │ ├── grid.svg
│ │ │ │ ├── hand-envelope.svg
│ │ │ │ ├── hand-money.svg
│ │ │ │ ├── individual-contributions.svg
│ │ │ │ ├── info-circle-outline.svg
│ │ │ │ ├── info-circle.svg
│ │ │ │ ├── list.svg
│ │ │ │ ├── magnifying-glass-arrow.svg
│ │ │ │ ├── magnifying-glass.svg
│ │ │ │ ├── mallet.svg
│ │ │ │ ├── map-pin.svg
│ │ │ │ ├── map-us-states.svg
│ │ │ │ ├── menu.svg
│ │ │ │ ├── minus-circle.svg
│ │ │ │ ├── moving-envelope-circle.svg
│ │ │ │ ├── moving-envelope.svg
│ │ │ │ ├── notebook.svg
│ │ │ │ ├── org-chart.svg
│ │ │ │ ├── papers.svg
│ │ │ │ ├── person-location.svg
│ │ │ │ ├── piggy-bank.svg
│ │ │ │ ├── play-button.svg
│ │ │ │ ├── plus-circle.svg
│ │ │ │ ├── plus.svg
│ │ │ │ ├── point-down-circle.svg
│ │ │ │ ├── pop-up.svg
│ │ │ │ ├── question-bubble.svg
│ │ │ │ ├── question-circle.svg
│ │ │ │ ├── scale.svg
│ │ │ │ ├── share.svg
│ │ │ │ ├── shield-scales.svg
│ │ │ │ ├── shield.svg
│ │ │ │ ├── signal.svg
│ │ │ │ ├── sort-down.svg
│ │ │ │ ├── sort-up.svg
│ │ │ │ ├── sort.svg
│ │ │ │ ├── speaker.svg
│ │ │ │ ├── stamp-circle.svg
│ │ │ │ ├── star.svg
│ │ │ │ ├── subsection-doc.svg
│ │ │ │ ├── table.svg
│ │ │ │ ├── telephone-circle.svg
│ │ │ │ ├── timer.svg
│ │ │ │ ├── training.svg
│ │ │ │ ├── twitter-circle.svg
│ │ │ │ ├── two-candidates.svg
│ │ │ │ ├── updates.svg
│ │ │ │ ├── usc.svg
│ │ │ │ ├── x-circle.svg
│ │ │ │ ├── x-twitter-circle.svg
│ │ │ │ ├── x.svg
│ │ │ │ └── youtube-circle.svg
│ │ ├── img
│ │ │ ├── Homepage-hero-image-flag.jpg
│ │ │ ├── TV-Gray-Wall-Only-850.png
│ │ │ ├── angle-arrow-down-primary.png
│ │ │ ├── angle-arrow-down-primary.svg
│ │ │ ├── angle-arrow-up-primary.png
│ │ │ ├── angle-arrow-up-primary.svg
│ │ │ ├── example-circle.svg
│ │ │ ├── favicon
│ │ │ │ ├── data
│ │ │ │ │ ├── favicon-120x120.png
│ │ │ │ │ ├── favicon-152x152.png
│ │ │ │ │ ├── favicon-167x167.png
│ │ │ │ │ ├── favicon-180x180.png
│ │ │ │ │ └── favicon-192x192.png
│ │ │ │ ├── favicon-16x16.png
│ │ │ │ ├── favicon-32x32.png
│ │ │ │ ├── favicon-full.svg
│ │ │ │ ├── favicon-small.svg
│ │ │ │ ├── favicon.ico
│ │ │ │ ├── general
│ │ │ │ │ ├── favicon-120x120.png
│ │ │ │ │ ├── favicon-152x152.png
│ │ │ │ │ ├── favicon-167x167.png
│ │ │ │ │ ├── favicon-180x180.png
│ │ │ │ │ ├── favicon-192x192.png
│ │ │ │ │ ├── favicon-200x200.png
│ │ │ │ │ ├── favicon-48x48.png
│ │ │ │ │ └── favicon.svg
│ │ │ │ ├── help
│ │ │ │ │ ├── favicon-120x120.png
│ │ │ │ │ ├── favicon-152x152.png
│ │ │ │ │ ├── favicon-167x167.png
│ │ │ │ │ ├── favicon-180x180.png
│ │ │ │ │ └── favicon-192x192.png
│ │ │ │ └── legal
│ │ │ │ │ ├── favicon-120x120.png
│ │ │ │ │ ├── favicon-152x152.png
│ │ │ │ │ ├── favicon-167x167.png
│ │ │ │ │ ├── favicon-180x180.png
│ │ │ │ │ └── favicon-192x192.png
│ │ │ ├── feature--candidate-support.jpg
│ │ │ ├── feature--compare-candidates.jpg
│ │ │ ├── feature--contributions-narrow.jpg
│ │ │ ├── feature--contributions.jpg
│ │ │ ├── feature--data.png
│ │ │ ├── feature--dates.jpg
│ │ │ ├── feature--filing.jpg
│ │ │ ├── feature--forms.jpg
│ │ │ ├── feature--legal.png
│ │ │ ├── feature--reporting.png
│ │ │ ├── feature--training.jpg
│ │ │ ├── fec-office.jpg
│ │ │ ├── financial-document-circle.svg
│ │ │ ├── headshot--goodman.jpg
│ │ │ ├── headshot--hunter.jpg
│ │ │ ├── headshot--no-photo.jpg
│ │ │ ├── headshot--petersen.jpg
│ │ │ ├── headshot--walther.jpg
│ │ │ ├── headshot--weintraub.jpg
│ │ │ ├── hero-about.jpg
│ │ │ ├── hero-data.jpg
│ │ │ ├── hero-home.jpg
│ │ │ ├── hero-legal.jpg
│ │ │ ├── hero-oig.png
│ │ │ ├── hero-press.jpg
│ │ │ ├── hero-registration.jpg
│ │ │ ├── i-bluesky--primary.png
│ │ │ ├── i-bluesky--primary.svg
│ │ │ ├── i-calendar--secondary-contrast.svg
│ │ │ ├── i-calendar-circle.svg
│ │ │ ├── i-complex--calendar.png
│ │ │ ├── i-complex--calendar.svg
│ │ │ ├── i-complex--data--gray-lightest.svg
│ │ │ ├── i-complex--data.png
│ │ │ ├── i-complex--data.svg
│ │ │ ├── i-complex--legal--gray-lightest.svg
│ │ │ ├── i-complex--legal.png
│ │ │ ├── i-complex--legal.svg
│ │ │ ├── i-complex--regreport--gray-lightest.svg
│ │ │ ├── i-complex--regreport.png
│ │ │ ├── i-complex--regreport.svg
│ │ │ ├── i-document--secondary-contrast.svg
│ │ │ ├── i-document-circle.svg
│ │ │ ├── i-elections--neutral.svg
│ │ │ ├── i-elections--primary-contrast.svg
│ │ │ ├── i-elections--primary.png
│ │ │ ├── i-elections--primary.svg
│ │ │ ├── i-email--inverse.png
│ │ │ ├── i-email--inverse.svg
│ │ │ ├── i-email--primary.png
│ │ │ ├── i-email--primary.svg
│ │ │ ├── i-github--inverse.png
│ │ │ ├── i-github--inverse.svg
│ │ │ ├── i-github--primary.png
│ │ │ ├── i-github--primary.svg
│ │ │ ├── i-graph--primary-contrast.svg
│ │ │ ├── i-mail--primary.png
│ │ │ ├── i-mail--primary.svg
│ │ │ ├── i-map--primary.svg
│ │ │ ├── i-overviews--primary.svg
│ │ │ ├── i-phone--primary.png
│ │ │ ├── i-phone--primary.svg
│ │ │ ├── i-table--neutral.svg
│ │ │ ├── i-table--primary-contrast.svg
│ │ │ ├── i-table--primary.svg
│ │ │ ├── i-twitter--primary.png
│ │ │ ├── i-twitter--primary.svg
│ │ │ ├── i-x-twitter--primary.png
│ │ │ ├── i-x-twitter--primary.svg
│ │ │ ├── icon-dot-gov.svg
│ │ │ ├── icon-https.svg
│ │ │ ├── loading--primary.gif
│ │ │ ├── loading-ellipsis-gray.gif
│ │ │ ├── loading-ellipsis.gif
│ │ │ ├── loading.gif
│ │ │ ├── logo-oig-color.svg
│ │ │ ├── map-chart-icon.svg
│ │ │ ├── map-election-search-default.png
│ │ │ ├── map-us-states-primary-contrast.svg
│ │ │ ├── new-tv-bkgd-wide.png
│ │ │ ├── print-logo.png
│ │ │ ├── reaction-confusing.svg
│ │ │ ├── reaction-informative.svg
│ │ │ ├── reaction-not-interested.svg
│ │ │ ├── seal--cropped.png
│ │ │ ├── seal--cropped.svg
│ │ │ ├── seal--inverse.png
│ │ │ ├── seal--inverse.svg
│ │ │ ├── seal.png
│ │ │ ├── seal.svg
│ │ │ ├── social
│ │ │ │ ├── fec-data.png
│ │ │ │ ├── fec-help.png
│ │ │ │ ├── fec-legal.png
│ │ │ │ ├── fec-logo.png
│ │ │ │ ├── fec-microphone.png
│ │ │ │ ├── fec-microphones.png
│ │ │ │ ├── fec-pen.png
│ │ │ │ └── fec-seal.png
│ │ │ ├── thumbnail--ao-brochure.png
│ │ │ ├── thumbnail--ao-statistics.png
│ │ │ ├── thumbnail--audio.png
│ │ │ ├── thumbnail--candidates.jpg
│ │ │ ├── thumbnail--captions.png
│ │ │ ├── thumbnail--citizens-guide-brochure.png
│ │ │ ├── thumbnail--enforcement-process.png
│ │ │ ├── thumbnail--feca.jpg
│ │ │ ├── thumbnail--filing-a-complaint.png
│ │ │ ├── thumbnail--nonconnected.jpg
│ │ │ ├── thumbnail--orgs.jpg
│ │ │ ├── thumbnail--parties.jpg
│ │ │ ├── thumbnail--pdf-guide.png
│ │ │ ├── thumbnail--video.png
│ │ │ ├── tooltip-point.svg
│ │ │ ├── us_flag_small.png
│ │ │ ├── wordmark.png
│ │ │ └── wordmark.svg
│ │ ├── js
│ │ │ ├── data-init.js
│ │ │ ├── data
│ │ │ │ ├── create_districts_topo.sh
│ │ │ │ ├── districts.json
│ │ │ │ ├── merge_shape_files.py
│ │ │ │ ├── notes.md
│ │ │ │ ├── state.json
│ │ │ │ ├── stateDistricts.json
│ │ │ │ ├── terms.json
│ │ │ │ └── us-states-10m.json
│ │ │ ├── draftail
│ │ │ │ ├── Anchor.js
│ │ │ │ ├── App.js
│ │ │ │ ├── Glossary.js
│ │ │ │ ├── SansSerif.js
│ │ │ │ ├── components
│ │ │ │ │ └── Modal.js
│ │ │ │ └── utils.js
│ │ │ ├── global.js
│ │ │ ├── init.js
│ │ │ ├── legal-search-ao.js
│ │ │ ├── legal.js
│ │ │ ├── modules
│ │ │ │ ├── accessibility.js
│ │ │ │ ├── analytics.js
│ │ │ │ ├── audit-category-sub-category.js
│ │ │ │ ├── audit_tags.js
│ │ │ │ ├── calc-admin-fines-logic.js
│ │ │ │ ├── calc-admin-fines-modal.js
│ │ │ │ ├── calc-admin-fines.js
│ │ │ │ ├── calendar-helpers.js
│ │ │ │ ├── calendar-list-view.js
│ │ │ │ ├── calendar-tooltip.js
│ │ │ │ ├── calendar.js
│ │ │ │ ├── column-helpers.js
│ │ │ │ ├── columns.js
│ │ │ │ ├── container-queries.js
│ │ │ │ ├── cycle-select.js
│ │ │ │ ├── data-map.js
│ │ │ │ ├── decoders.js
│ │ │ │ ├── download.js
│ │ │ │ ├── dropdowns.js
│ │ │ │ ├── election-form.js
│ │ │ │ ├── election-lookup.js
│ │ │ │ ├── election-map.js
│ │ │ │ ├── election-search.js
│ │ │ │ ├── election-summary.js
│ │ │ │ ├── election-utils.js
│ │ │ │ ├── events.js
│ │ │ │ ├── fec-timeline.js
│ │ │ │ ├── feedback.js
│ │ │ │ ├── filings.js
│ │ │ │ ├── filters-event.js
│ │ │ │ ├── filters
│ │ │ │ │ ├── checkbox-filter.js
│ │ │ │ │ ├── date-filter.js
│ │ │ │ │ ├── election-filter.js
│ │ │ │ │ ├── filter-base.js
│ │ │ │ │ ├── filter-control.js
│ │ │ │ │ ├── filter-panel.js
│ │ │ │ │ ├── filter-set.js
│ │ │ │ │ ├── filter-tags.js
│ │ │ │ │ ├── filter-typeahead.js
│ │ │ │ │ ├── keyword-proximity-filter.js
│ │ │ │ │ ├── multi-filter.js
│ │ │ │ │ ├── range-filter.js
│ │ │ │ │ ├── select-filter.js
│ │ │ │ │ ├── text-filter.js
│ │ │ │ │ ├── toggle-filter.js
│ │ │ │ │ ├── typeahead-filter.js
│ │ │ │ │ └── validate-date-filters.js
│ │ │ │ ├── fips.js
│ │ │ │ ├── form-nav.js
│ │ │ │ ├── helpers.js
│ │ │ │ ├── home-events.js
│ │ │ │ ├── keyword-modal.js
│ │ │ │ ├── line-chart-committees.js
│ │ │ │ ├── line-chart.js
│ │ │ │ ├── listeners.js
│ │ │ │ ├── load-recaptcha.js
│ │ │ │ ├── maps-event.js
│ │ │ │ ├── maps.js
│ │ │ │ ├── other-spending-totals.js
│ │ │ │ ├── party-money-bars.js
│ │ │ │ ├── performance.js
│ │ │ │ ├── search.js
│ │ │ │ ├── site-nav.js
│ │ │ │ ├── skip-nav.js
│ │ │ │ ├── statistical-summary-archive.js
│ │ │ │ ├── table-columns.js
│ │ │ │ ├── table-panels.js
│ │ │ │ ├── table-switcher.js
│ │ │ │ ├── tables.js
│ │ │ │ ├── toc.js
│ │ │ │ ├── toggle.js
│ │ │ │ ├── top-entities.js
│ │ │ │ ├── top-list.js
│ │ │ │ ├── typeahead.js
│ │ │ │ └── urls.js
│ │ │ ├── pages
│ │ │ │ ├── bythenumbers.js
│ │ │ │ ├── calendar-page.js
│ │ │ │ ├── candidate-single.js
│ │ │ │ ├── committee-single.js
│ │ │ │ ├── contact-form.js
│ │ │ │ ├── data-browse-data.js
│ │ │ │ ├── data-landing.js
│ │ │ │ ├── datatable-allocated-federal-nonfederal-disbursements.js
│ │ │ │ ├── datatable-audit.js
│ │ │ │ ├── datatable-candidates-office.js
│ │ │ │ ├── datatable-candidates.js
│ │ │ │ ├── datatable-committees.js
│ │ │ │ ├── datatable-communication-costs.js
│ │ │ │ ├── datatable-debts.js
│ │ │ │ ├── datatable-disbursements.js
│ │ │ │ ├── datatable-electioneering-communications.js
│ │ │ │ ├── datatable-filings.js
│ │ │ │ ├── datatable-independent-expenditures.js
│ │ │ │ ├── datatable-individual-contributions.js
│ │ │ │ ├── datatable-loans.js
│ │ │ │ ├── datatable-national-party-account-disbursements.js
│ │ │ │ ├── datatable-national-party-account-receipts.js
│ │ │ │ ├── datatable-operating-expenditures.js
│ │ │ │ ├── datatable-pac-party.js
│ │ │ │ ├── datatable-party-coordinated-expenditures.js
│ │ │ │ ├── datatable-receipts.js
│ │ │ │ ├── datatable-reports.js
│ │ │ │ ├── datatable-rulemakings.js
│ │ │ │ ├── election-lookup.js
│ │ │ │ ├── elections.js
│ │ │ │ ├── home.js
│ │ │ │ ├── house-senate-overview-across-time.js
│ │ │ │ ├── house-senate-overview-summary.js
│ │ │ │ ├── house-senate-overview-totals.js
│ │ │ │ ├── legal.js
│ │ │ │ ├── reaction-box.js
│ │ │ │ ├── reporting-dates-tables.js
│ │ │ │ ├── statistical-summary-archive.js
│ │ │ │ └── statistical-summary.js
│ │ │ ├── templates
│ │ │ │ ├── allocated-federal-nonfederal-disbursements.hbs
│ │ │ │ ├── audit_tags.hbs
│ │ │ │ ├── calendar
│ │ │ │ │ ├── details.hbs
│ │ │ │ │ ├── download.hbs
│ │ │ │ │ ├── events.hbs
│ │ │ │ │ ├── listToggles.hbs
│ │ │ │ │ └── subscribe.hbs
│ │ │ │ ├── candidateStateMap.hbs
│ │ │ │ ├── candidates.hbs
│ │ │ │ ├── committees.hbs
│ │ │ │ ├── communication-costs.hbs
│ │ │ │ ├── comparison.hbs
│ │ │ │ ├── coverageEndDate.hbs
│ │ │ │ ├── debts.hbs
│ │ │ │ ├── disbursements.hbs
│ │ │ │ ├── districts.hbs
│ │ │ │ ├── download
│ │ │ │ │ ├── container.hbs
│ │ │ │ │ └── item.hbs
│ │ │ │ ├── election-cycles.hbs
│ │ │ │ ├── electionCycle.hbs
│ │ │ │ ├── electionCycles.hbs
│ │ │ │ ├── electionNoResults.hbs
│ │ │ │ ├── electionOffices.hbs
│ │ │ │ ├── electionResult.hbs
│ │ │ │ ├── electionZipWarning.hbs
│ │ │ │ ├── electioneering-communications.hbs
│ │ │ │ ├── feedback.hbs
│ │ │ │ ├── homepage
│ │ │ │ │ └── events-and-deadlines.hbs
│ │ │ │ ├── independent-expenditures.hbs
│ │ │ │ ├── loans.hbs
│ │ │ │ ├── national-party-account-disbursements.hbs
│ │ │ │ ├── national-party-account-receipts.hbs
│ │ │ │ ├── pac-party.hbs
│ │ │ │ ├── party-coordinated-expenditures.hbs
│ │ │ │ ├── receipts.hbs
│ │ │ │ ├── reports
│ │ │ │ │ ├── candidate.hbs
│ │ │ │ │ ├── ie-only.hbs
│ │ │ │ │ ├── pac.hbs
│ │ │ │ │ └── reportType.hbs
│ │ │ │ ├── tables
│ │ │ │ │ ├── exportWidget.hbs
│ │ │ │ │ ├── noData.hbs
│ │ │ │ │ └── title.hbs
│ │ │ │ ├── top-entity-row.hbs
│ │ │ │ └── upcomingPresidential.hbs
│ │ │ ├── vendor
│ │ │ │ ├── beautify-html.js
│ │ │ │ ├── jquery.htmlClean.min.js
│ │ │ │ └── tablist.js
│ │ │ └── widgets
│ │ │ │ ├── aggregate-totals-box.js
│ │ │ │ ├── aggregate-totals.js
│ │ │ │ ├── contributions-by-state-box.js
│ │ │ │ ├── contributions-by-state.js
│ │ │ │ ├── pres-finance-map-box.js
│ │ │ │ └── widget-vars.js
│ │ └── scss
│ │ │ ├── _fonts.scss
│ │ │ ├── _functions.scss
│ │ │ ├── _global-common.scss
│ │ │ ├── _global.scss
│ │ │ ├── _grid.scss
│ │ │ ├── _icon-variables.scss
│ │ │ ├── _variables.scss
│ │ │ ├── base.scss
│ │ │ ├── calendar.scss
│ │ │ ├── common.scss
│ │ │ ├── components
│ │ │ ├── _accordions.scss
│ │ │ ├── _agendas.scss
│ │ │ ├── _articles.scss
│ │ │ ├── _breadcrumbs.scss
│ │ │ ├── _breakdowns.scss
│ │ │ ├── _buttons.scss
│ │ │ ├── _calc-admin-fines.scss
│ │ │ ├── _calendar.scss
│ │ │ ├── _callouts.scss
│ │ │ ├── _candidate-page.scss
│ │ │ ├── _cards.scss
│ │ │ ├── _charts.scss
│ │ │ ├── _committee-snapshot.scss
│ │ │ ├── _contact-form.scss
│ │ │ ├── _contact-items.scss
│ │ │ ├── _cycle-select.scss
│ │ │ ├── _data-container.scss
│ │ │ ├── _data-landing-callouts.scss
│ │ │ ├── _datatable-panel.scss
│ │ │ ├── _datatables.scss
│ │ │ ├── _date-grid.scss
│ │ │ ├── _documents.scss
│ │ │ ├── _downloads.scss
│ │ │ ├── _dropdowns.scss
│ │ │ ├── _entity-header.scss
│ │ │ ├── _examples.scss
│ │ │ ├── _fec-offices.scss
│ │ │ ├── _fec-org-chart.scss
│ │ │ ├── _feedback.scss
│ │ │ ├── _figures.scss
│ │ │ ├── _filters.scss
│ │ │ ├── _footer.scss
│ │ │ ├── _form-styles.scss
│ │ │ ├── _glossary.scss
│ │ │ ├── _headings.scss
│ │ │ ├── _hero.scss
│ │ │ ├── _icon-headings.scss
│ │ │ ├── _icons.scss
│ │ │ ├── _legal-search.scss
│ │ │ ├── _list-styles.scss
│ │ │ ├── _maps.scss
│ │ │ ├── _mega-menu.scss
│ │ │ ├── _messages.scss
│ │ │ ├── _modals.scss
│ │ │ ├── _nav.scss
│ │ │ ├── _options.scss
│ │ │ ├── _overlay.scss
│ │ │ ├── _overviews.scss
│ │ │ ├── _page-headers.scss
│ │ │ ├── _pagination.scss
│ │ │ ├── _posts.scss
│ │ │ ├── _reaction-boxes.scss
│ │ │ ├── _responsive-object.scss
│ │ │ ├── _results-info.scss
│ │ │ ├── _richtext.scss
│ │ │ ├── _search-bar.scss
│ │ │ ├── _search-controls.scss
│ │ │ ├── _search-results.scss
│ │ │ ├── _side-nav.scss
│ │ │ ├── _sidebar.scss
│ │ │ ├── _site-header.scss
│ │ │ ├── _table-styles.scss
│ │ │ ├── _tags.scss
│ │ │ ├── _toggles.scss
│ │ │ ├── _tooltips.scss
│ │ │ └── _type-styles.scss
│ │ │ ├── data-landing.scss
│ │ │ ├── datatables.scss
│ │ │ ├── elections.scss
│ │ │ ├── elements
│ │ │ ├── _elements.scss
│ │ │ ├── _forms.scss
│ │ │ ├── _images.scss
│ │ │ ├── _links.scss
│ │ │ ├── _lists.scss
│ │ │ ├── _tables.scss
│ │ │ └── _typography.scss
│ │ │ ├── entity.scss
│ │ │ ├── fec-timeline.scss
│ │ │ ├── home.scss
│ │ │ ├── layout
│ │ │ ├── _grid.scss
│ │ │ ├── _layout.scss
│ │ │ └── _slabs.scss
│ │ │ ├── legal-common.scss
│ │ │ ├── legal.scss
│ │ │ ├── mixins
│ │ │ ├── _icon-mixins.scss
│ │ │ ├── _type-mixins.scss
│ │ │ └── _utilities.scss
│ │ │ ├── vendor
│ │ │ ├── bourbon
│ │ │ │ ├── _bourbon-deprecated-upcoming.scss
│ │ │ │ ├── _bourbon.scss
│ │ │ │ ├── addons
│ │ │ │ │ ├── _border-color.scss
│ │ │ │ │ ├── _border-radius.scss
│ │ │ │ │ ├── _border-style.scss
│ │ │ │ │ ├── _border-width.scss
│ │ │ │ │ ├── _buttons.scss
│ │ │ │ │ ├── _clearfix.scss
│ │ │ │ │ ├── _ellipsis.scss
│ │ │ │ │ ├── _font-stacks.scss
│ │ │ │ │ ├── _hide-text.scss
│ │ │ │ │ ├── _margin.scss
│ │ │ │ │ ├── _padding.scss
│ │ │ │ │ ├── _position.scss
│ │ │ │ │ ├── _prefixer.scss
│ │ │ │ │ ├── _retina-image.scss
│ │ │ │ │ ├── _size.scss
│ │ │ │ │ ├── _text-inputs.scss
│ │ │ │ │ ├── _timing-functions.scss
│ │ │ │ │ ├── _triangle.scss
│ │ │ │ │ └── _word-wrap.scss
│ │ │ │ ├── css3
│ │ │ │ │ ├── _animation.scss
│ │ │ │ │ ├── _appearance.scss
│ │ │ │ │ ├── _backface-visibility.scss
│ │ │ │ │ ├── _background-image.scss
│ │ │ │ │ ├── _background.scss
│ │ │ │ │ ├── _border-image.scss
│ │ │ │ │ ├── _calc.scss
│ │ │ │ │ ├── _columns.scss
│ │ │ │ │ ├── _filter.scss
│ │ │ │ │ ├── _flex-box.scss
│ │ │ │ │ ├── _font-face.scss
│ │ │ │ │ ├── _font-feature-settings.scss
│ │ │ │ │ ├── _hidpi-media-query.scss
│ │ │ │ │ ├── _hyphens.scss
│ │ │ │ │ ├── _image-rendering.scss
│ │ │ │ │ ├── _keyframes.scss
│ │ │ │ │ ├── _linear-gradient.scss
│ │ │ │ │ ├── _perspective.scss
│ │ │ │ │ ├── _placeholder.scss
│ │ │ │ │ ├── _radial-gradient.scss
│ │ │ │ │ ├── _selection.scss
│ │ │ │ │ ├── _text-decoration.scss
│ │ │ │ │ ├── _transform.scss
│ │ │ │ │ ├── _transition.scss
│ │ │ │ │ └── _user-select.scss
│ │ │ │ ├── functions
│ │ │ │ │ ├── _assign-inputs.scss
│ │ │ │ │ ├── _contains-falsy.scss
│ │ │ │ │ ├── _contains.scss
│ │ │ │ │ ├── _is-length.scss
│ │ │ │ │ ├── _is-light.scss
│ │ │ │ │ ├── _is-number.scss
│ │ │ │ │ ├── _is-size.scss
│ │ │ │ │ ├── _modular-scale.scss
│ │ │ │ │ ├── _px-to-em.scss
│ │ │ │ │ ├── _px-to-rem.scss
│ │ │ │ │ ├── _shade.scss
│ │ │ │ │ ├── _strip-units.scss
│ │ │ │ │ ├── _tint.scss
│ │ │ │ │ ├── _transition-property-name.scss
│ │ │ │ │ └── _unpack.scss
│ │ │ │ ├── helpers
│ │ │ │ │ ├── _convert-units.scss
│ │ │ │ │ ├── _directional-values.scss
│ │ │ │ │ ├── _font-source-declaration.scss
│ │ │ │ │ ├── _gradient-positions-parser.scss
│ │ │ │ │ ├── _linear-angle-parser.scss
│ │ │ │ │ ├── _linear-gradient-parser.scss
│ │ │ │ │ ├── _linear-positions-parser.scss
│ │ │ │ │ ├── _linear-side-corner-parser.scss
│ │ │ │ │ ├── _radial-arg-parser.scss
│ │ │ │ │ ├── _radial-gradient-parser.scss
│ │ │ │ │ ├── _radial-positions-parser.scss
│ │ │ │ │ ├── _render-gradients.scss
│ │ │ │ │ ├── _shape-size-stripper.scss
│ │ │ │ │ └── _str-to-num.scss
│ │ │ │ └── settings
│ │ │ │ │ ├── _asset-pipeline.scss
│ │ │ │ │ ├── _prefixer.scss
│ │ │ │ │ └── _px-to-em.scss
│ │ │ └── neat
│ │ │ │ ├── _neat-helpers.scss
│ │ │ │ ├── _neat.scss
│ │ │ │ ├── functions
│ │ │ │ ├── _new-breakpoint.scss
│ │ │ │ └── _private.scss
│ │ │ │ ├── grid
│ │ │ │ ├── _box-sizing.scss
│ │ │ │ ├── _direction-context.scss
│ │ │ │ ├── _display-context.scss
│ │ │ │ ├── _fill-parent.scss
│ │ │ │ ├── _media.scss
│ │ │ │ ├── _omega.scss
│ │ │ │ ├── _outer-container.scss
│ │ │ │ ├── _pad.scss
│ │ │ │ ├── _private.scss
│ │ │ │ ├── _row.scss
│ │ │ │ ├── _shift.scss
│ │ │ │ ├── _span-columns.scss
│ │ │ │ ├── _to-deprecate.scss
│ │ │ │ └── _visual-grid.scss
│ │ │ │ └── settings
│ │ │ │ ├── _disable-warnings.scss
│ │ │ │ ├── _grid.scss
│ │ │ │ └── _visual-grid.scss
│ │ │ └── widgets
│ │ │ ├── aggregate-totals.scss
│ │ │ ├── contributions-by-state.scss
│ │ │ ├── house-senate-overview.scss
│ │ │ ├── party-money-bars.scss
│ │ │ └── pres-finance-map.scss
│ ├── templates
│ │ ├── 404.html
│ │ ├── 500-status.html
│ │ ├── 500.html
│ │ ├── 503.html
│ │ ├── base.html
│ │ ├── code.json
│ │ ├── data.json
│ │ ├── home_base.html
│ │ ├── long_page.html
│ │ ├── partials
│ │ │ ├── author-groups.html
│ │ │ ├── author-list.html
│ │ │ ├── body-blocks.html
│ │ │ ├── breadcrumbs.html
│ │ │ ├── disclaimer.html
│ │ │ ├── env-banner.html
│ │ │ ├── footer-navigation.html
│ │ │ ├── glossary.html
│ │ │ ├── google-tag-manager-noscript.html
│ │ │ ├── google-tag-manager-script.html
│ │ │ ├── meeting.html
│ │ │ ├── meta-tags-preconnects.html
│ │ │ ├── meta-tags-preloads.html
│ │ │ ├── meta-tags.html
│ │ │ ├── navigation
│ │ │ │ ├── nav-about.html
│ │ │ │ ├── nav-data.html
│ │ │ │ ├── nav-help.html
│ │ │ │ ├── nav-legal.html
│ │ │ │ └── navigation.html
│ │ │ ├── search-hero.html
│ │ │ ├── update.html
│ │ │ └── usa-banner.html
│ │ ├── robots.txt
│ │ ├── robots_prod.txt
│ │ └── uaa_client
│ │ │ └── login_error.html
│ ├── tests
│ │ ├── .eslintrc
│ │ ├── __init__.py
│ │ ├── fixtures
│ │ │ ├── context.js
│ │ │ ├── election-offices.js
│ │ │ └── house-results.js
│ │ ├── js
│ │ │ ├── analyst-lookup.js
│ │ │ ├── analytics.js
│ │ │ ├── babel.config.json
│ │ │ ├── calc-admin-fines.js
│ │ │ ├── calendar.js
│ │ │ ├── checkbox-filter.js
│ │ │ ├── column-helpers.js
│ │ │ ├── contact-form.js
│ │ │ ├── cycle-select.js
│ │ │ ├── date-filter.js
│ │ │ ├── download.js
│ │ │ ├── draftail
│ │ │ │ ├── anchor.js
│ │ │ │ ├── glossary.js
│ │ │ │ ├── sansserif.js
│ │ │ │ └── setup.js
│ │ │ ├── dropdowns.js
│ │ │ ├── election-filter.js
│ │ │ ├── election-search.js
│ │ │ ├── election-utils.js
│ │ │ ├── feedback.js
│ │ │ ├── filter-base.js
│ │ │ ├── filter-panel.js
│ │ │ ├── filter-set.js
│ │ │ ├── filter-tags.js
│ │ │ ├── helpers.js
│ │ │ ├── line-chart.js
│ │ │ ├── listeners.js
│ │ │ ├── multi-filter.js
│ │ │ ├── radform-validate.js
│ │ │ ├── select-filter.js
│ │ │ ├── setup.js
│ │ │ ├── site-nav.js
│ │ │ ├── skip-nav.js
│ │ │ ├── statistical-summary-archive.js
│ │ │ ├── table-switcher.js
│ │ │ ├── tables.js
│ │ │ ├── tablist.js
│ │ │ ├── text-filter.js
│ │ │ ├── toc.js
│ │ │ ├── toggle-filter.js
│ │ │ ├── top-entities-breakdown.js
│ │ │ ├── typeahead-filter.js
│ │ │ └── urls.js
│ │ ├── test_api_key.py
│ │ ├── test_form.py
│ │ ├── test_robots.py
│ │ └── test_static_files.py
│ ├── urls.py
│ ├── utils.py
│ ├── wagtail_hooks.py
│ ├── wagtail_npm_dependencies
│ │ ├── ace-builds
│ │ └── jquery
│ └── wsgi.py
├── gulpfile.js
├── home
│ ├── __init__.py
│ ├── blocks.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_create_homepage.py
│ │ ├── 0003_auto_20150819_0342.py
│ │ ├── 0004_checklistpage.py
│ │ ├── 0005_auto_20150819_0517.py
│ │ ├── 0006_auto_20150819_0546.py
│ │ ├── 0007_auto_20150901_0442.py
│ │ ├── 0008_auto_20150917_1906.py
│ │ ├── 0009_contactpage.py
│ │ ├── 0010_calendarpage.py
│ │ ├── 0011_ssfchecklistpage.py
│ │ ├── 0012_partychecklistpage.py
│ │ ├── 0013_auto_20160427_2133.py
│ │ ├── 0014_nonconnectedchecklistpage.py
│ │ ├── 0015_custompage_content.py
│ │ ├── 0016_auto_20160714_2359.py
│ │ ├── 0017_auto_20160823_1504.py
│ │ ├── 0018_record_digest_press_release.py
│ │ ├── 0019_auto_20160907_2152.py
│ │ ├── 0019_auto_20160908_2113.py
│ │ ├── 0020_auto_20160909_0139.py
│ │ ├── 0021_merge.py
│ │ ├── 0022_auto_20160921_2230.py
│ │ ├── 0022_auto_20160923_0004.py
│ │ ├── 0023_remove_presslandingpage_feed_intro.py
│ │ ├── 0024_presslandingpage_feed_intro.py
│ │ ├── 0025_auto_20161006_1415.py
│ │ ├── 0025_merge.py
│ │ ├── 0026_auto_20161004_1620.py
│ │ ├── 0027_auto_20161004_1620.py
│ │ ├── 0028_merge.py
│ │ ├── 0029_auto_20161107_0304.py
│ │ ├── 0030_pressreleasepage_formatted_title.py
│ │ ├── 0031_auto_20161201_2123.py
│ │ ├── 0032_auto_20161201_2124.py
│ │ ├── 0033_auto_20161201_2126.py
│ │ ├── 0034_auto_20161221_1920.py
│ │ ├── 0034_pressreleasepage_homepage_pin.py
│ │ ├── 0035_pressreleasepage_homepage_hide.py
│ │ ├── 0035_recordpage_monthly_issue.py
│ │ ├── 0036_auto_20161216_0202.py
│ │ ├── 0036_auto_20161221_2007.py
│ │ ├── 0037_auto_20161216_0222.py
│ │ ├── 0037_recordpage_monthly_issue_url.py
│ │ ├── 0038_aboutlandingpage.py
│ │ ├── 0038_merge_20161223_1820.py
│ │ ├── 0038_resourcepage.py
│ │ ├── 0039_aboutlandingpage_hero.py
│ │ ├── 0039_legalresourceslanding.py
│ │ ├── 0040_aboutlandingpage_mission_intro.py
│ │ ├── 0040_auto_20161228_2356.py
│ │ ├── 0041_auto_20161227_1524.py
│ │ ├── 0041_enforcementpage.py
│ │ ├── 0042_auto_20161227_1526.py
│ │ ├── 0042_auto_20161229_2001.py
│ │ ├── 0043_auto_20161227_1538.py
│ │ ├── 0043_merge_20161230_0122.py
│ │ ├── 0044_aboutlandingpage_option_blocks.py
│ │ ├── 0044_auto_20170105_0006.py
│ │ ├── 0045_merge_20170105_0036.py
│ │ ├── 0046_auto_20170105_0038.py
│ │ ├── 0047_auto_20170105_0044.py
│ │ ├── 0048_auto_20170105_0049.py
│ │ ├── 0049_auto_20170105_0052.py
│ │ ├── 0050_auto_20170105_0055.py
│ │ ├── 0051_commissionerpage.py
│ │ ├── 0052_auto_20170111_2205.py
│ │ ├── 0053_serviceslandingpage.py
│ │ ├── 0054_auto_20170118_2104.py
│ │ ├── 0055_auto_20170123_2232.py
│ │ ├── 0055_tipsfortreasurerspage.py
│ │ ├── 0056_merge_20170127_1735.py
│ │ ├── 0057_auto_20170202_0237.py
│ │ ├── 0058_auto_20170210_2136.py
│ │ ├── 0058_documentfeedpage_documentpage.py
│ │ ├── 0059_auto_20170209_0151.py
│ │ ├── 0060_auto_20170209_2030.py
│ │ ├── 0061_merge_20170210_2230.py
│ │ ├── 0062_auto_20170214_2207.py
│ │ ├── 0063_auto_20170214_2207.py
│ │ ├── 0064_auto_20170215_2153.py
│ │ ├── 0065_auto_20170221_0345.py
│ │ ├── 0066_remove_documentpage_file_name.py
│ │ ├── 0067_agendapage.py
│ │ ├── 0067_documentpage_year_only.py
│ │ ├── 0068_merge_20170310_0002.py
│ │ ├── 0069_auto_20170316_0006.py
│ │ ├── 0069_auto_20170318_0005.py
│ │ ├── 0070_merge_20170322_1940.py
│ │ ├── 0071_agendapage_imported_html.py
│ │ ├── 0072_auto_20170324_0544.py
│ │ ├── 0073_auto_20170329_2112.py
│ │ ├── 0073_auto_20170330_1840.py
│ │ ├── 0073_auto_20170330_1915.py
│ │ ├── 0074_auto_20170330_2222.py
│ │ ├── 0074_merge_20170330_2316.py
│ │ ├── 0075_auto_20170330_2354.py
│ │ ├── 0075_merge_20170331_0608.py
│ │ ├── 0076_merge_20170331_1633.py
│ │ ├── 0077_auto_20170331_1711.py
│ │ ├── 0078_auto_20170404_2137.py
│ │ ├── 0079_auto_20170414_0021.py
│ │ ├── 0079_auto_20170420_0238.py
│ │ ├── 0080_auto_20170420_1702.py
│ │ ├── 0081_auto_20170501_2216.py
│ │ ├── 0081_genericupdate.py
│ │ ├── 0082_merge_20170504_2212.py
│ │ ├── 0082_merge_20170505_0025.py
│ │ ├── 0083_auto_20170504_2215.py
│ │ ├── 0083_auto_20170506_0059.py
│ │ ├── 0084_merge_20170509_0021.py
│ │ ├── 0085_auto_20170510_1928.py
│ │ ├── 0086_auto_20170519_1726.py
│ │ ├── 0087_meetingpage_homepage_hide.py
│ │ ├── 0088_auto_20170802_2329.py
│ │ ├── 0088_folder.py
│ │ ├── 0089_auto_20170810_2215.py
│ │ ├── 0090_auto_20170811_1840.py
│ │ ├── 0091_merge_20170811_2035.py
│ │ ├── 0091_merge_20170814_0055.py
│ │ ├── 0092_auto_20170814_0109.py
│ │ ├── 0093_merge_20170814_2229.py
│ │ ├── 0094_auto_20170829_1640.py
│ │ ├── 0095_auto_20170831_2013.py
│ │ ├── 0095_meetingpage_sunshine_act_doc_upld.py
│ │ ├── 0096_merge_20170907_2031.py
│ │ ├── 0097_auto_20170925_1952.py
│ │ ├── 0097_auto_20170929_2329.py
│ │ ├── 0098_auto_20170930_0054.py
│ │ ├── 0099_merge_20171109_1546.py
│ │ ├── 0100_auto_20180126_1444.py
│ │ ├── 0101_auto_20180531_1615.py
│ │ ├── 0102_auto_20180718_0132.py
│ │ ├── 0103_auto_20180726_1409.py
│ │ ├── 0104_auto_20181202_1431.py
│ │ ├── 0105_auto_20191003_0006.py
│ │ ├── 0106_auto_20191101_1759.py
│ │ ├── 0107_auto_20191213_1031.py
│ │ ├── 0108_fullwidthpage_citations.py
│ │ ├── 0109_auto_20200219_1316.py
│ │ ├── 0110_auto_20200930_2200.py
│ │ ├── 0111_oiglandingpage.py
│ │ ├── 0112_auto_20210112_1100.py
│ │ ├── 0113_auto_20210316_1226.py
│ │ ├── 0114_auto_20210430_1346.py
│ │ ├── 0115_auto_20210506_2326.py
│ │ ├── 0116_auto_20210818_1041.py
│ │ ├── 0117_auto_20210907_1026.py
│ │ ├── 0118_auto_20211007_1004.py
│ │ ├── 0119_auto_20211013_1228.py
│ │ ├── 0120_auto_20211201_1130.py
│ │ ├── 0121_auto_20211206_1255.py
│ │ ├── 0122_auto_20220302_2114.py
│ │ ├── 0122_auto_20220303_1357.py
│ │ ├── 0123_merge_20220308_1116.py
│ │ ├── 0124_auto_20220706_0036.py
│ │ ├── 0125_officepage.py
│ │ ├── 0126_auto_20230123_1608.py
│ │ ├── 0127_auto_20230123_1927.py
│ │ ├── 0128_merge_0125_officepage_0126_auto_20230123_1927.py
│ │ ├── 0129_reportingdatestable.py
│ │ ├── 0130_alter_reportingdatestable_reporting_dates_table.py
│ │ ├── 0131_auto_20230905_2038.py
│ │ ├── 0132_auto_20231130_1233.py
│ │ ├── 0133_alter_recordpagetag_tag.py
│ │ ├── 0134_embedsnippet_banner_icon_alter_resourcepage_intro.py
│ │ ├── 0135_alter_resourcepage_sections.py
│ │ ├── 0136_alter_embedsnippet_banner_icon_and_more.py
│ │ ├── 0137_commissionerpage_picture_download.py
│ │ ├── 0138_alter_reportingdatestable_reporting_dates_table.py
│ │ ├── 0139_commissionerpage_commissioner_bluesky_and_more.py
│ │ ├── 0140_alter_embedsnippet_banner_icon_and_more.py
│ │ ├── 0141_fectimelinepage.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ ├── blocks
│ │ │ ├── adr_search.html
│ │ │ ├── af_search.html
│ │ │ ├── audit.html
│ │ │ ├── button.html
│ │ │ ├── careers.html
│ │ │ ├── commissioners.html
│ │ │ ├── contact-info.html
│ │ │ ├── custom_table.html
│ │ │ ├── disabled-page-links.html
│ │ │ ├── document-list.html
│ │ │ ├── embed-info-message.html
│ │ │ ├── embed-table.html
│ │ │ ├── example-forms.html
│ │ │ ├── example-image.html
│ │ │ ├── example-paragraph.html
│ │ │ ├── mur_search.html
│ │ │ ├── page-links.html
│ │ │ ├── related-media.html
│ │ │ ├── reporting-dates-table-block.html
│ │ │ ├── reporting-example-cards.html
│ │ │ ├── section-aside.html
│ │ │ ├── section-documents.html
│ │ │ ├── section.html
│ │ │ ├── simple-document-list.html
│ │ │ └── simple-document.html
│ │ ├── home
│ │ │ ├── about_landing_page.html
│ │ │ ├── alert_for_emergency_use_only.html
│ │ │ ├── calendar.html
│ │ │ ├── candidate-and-committee-services
│ │ │ │ ├── guides.html
│ │ │ │ └── services_landing_page.html
│ │ │ ├── collection_page.html
│ │ │ ├── commission_meetings.html
│ │ │ ├── commissioner_page.html
│ │ │ ├── commissioners.html
│ │ │ ├── contact-form.html
│ │ │ ├── contact_page.html
│ │ │ ├── custom_page.html
│ │ │ ├── document_feed_page.html
│ │ │ ├── document_page.html
│ │ │ ├── example_page.html
│ │ │ ├── fec_timeline_page.html
│ │ │ ├── feed_base.html
│ │ │ ├── full_width_page.html
│ │ │ ├── home_page.html
│ │ │ ├── home_page_banner_announcement.html
│ │ │ ├── latest_updates.html
│ │ │ ├── legal
│ │ │ │ └── legal_resources_landing.html
│ │ │ ├── meeting_page.html
│ │ │ ├── office_page.html
│ │ │ ├── oig_landing_page.html
│ │ │ ├── press_landing_page.html
│ │ │ ├── reporting_dates_table.html
│ │ │ ├── reports_landing_page.html
│ │ │ ├── resource_page.html
│ │ │ └── updates
│ │ │ │ ├── digest_page.html
│ │ │ │ ├── press_release_page.html
│ │ │ │ ├── record_page.html
│ │ │ │ └── tips_for_treasurers.html
│ │ ├── partials
│ │ │ ├── audit-search.html
│ │ │ ├── commissioner.html
│ │ │ ├── current-commissioners.html
│ │ │ ├── document-feed.html
│ │ │ ├── document.html
│ │ │ ├── draft-home-page-banner-announcement.html
│ │ │ ├── elections-lookup.html
│ │ │ ├── home-page-banner-announcement.html
│ │ │ ├── home-page-news.html
│ │ │ ├── jobs.html
│ │ │ ├── legal-keyword-modal.html
│ │ │ ├── legal-news.html
│ │ │ ├── oig-most-recent.html
│ │ │ ├── press-feed.html
│ │ │ ├── raising-spending.html
│ │ │ ├── section-nav.html
│ │ │ └── tips-for-treasurers.html
│ │ └── purgecss-homepage
│ │ │ ├── banners.html
│ │ │ ├── commissioners.html
│ │ │ ├── full.html
│ │ │ ├── hero.html
│ │ │ ├── navs.html
│ │ │ ├── readme.txt
│ │ │ └── toggled.html
│ ├── templatetags
│ │ ├── __init__.py
│ │ ├── audit_search.py
│ │ ├── author_groups.py
│ │ ├── commissioners.py
│ │ ├── document_feed.py
│ │ ├── elections_lookup.py
│ │ ├── filters.py
│ │ ├── home_page.py
│ │ ├── legal_news.py
│ │ ├── oig_most_recent.py
│ │ ├── open_jobs.py
│ │ ├── tips_for_treasurers.py
│ │ ├── top_entities.py
│ │ └── updates.py
│ ├── tests
│ │ ├── __init__.py
│ │ ├── test_filters.py
│ │ ├── test_pages.py
│ │ ├── test_usajobs.py
│ │ └── test_views.py
│ ├── utils
│ │ └── link_reroute.py
│ ├── views.py
│ └── wagtail_hooks.py
├── legal
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── templates
│ │ ├── layouts
│ │ │ ├── legal-doc-landing.jinja
│ │ │ └── legal-doc-search-results.jinja
│ │ ├── legal-admin_fine.jinja
│ │ ├── legal-adr.jinja
│ │ ├── legal-advisory-opinion.jinja
│ │ ├── legal-advisory-opinions-landing.jinja
│ │ ├── legal-archived-mur.jinja
│ │ ├── legal-current-mur.jinja
│ │ ├── legal-search-results-adrs.jinja
│ │ ├── legal-search-results-advisory_opinions.jinja
│ │ ├── legal-search-results-afs.jinja
│ │ ├── legal-search-results-murs.jinja
│ │ ├── legal-search-results-regulations.jinja
│ │ ├── legal-search-results-statutes.jinja
│ │ ├── legal-search-results.jinja
│ │ ├── legal-statutes-landing.jinja
│ │ ├── macros
│ │ │ └── legal.jinja
│ │ └── partials
│ │ │ ├── legal-disclaimer.jinja
│ │ │ ├── legal-keyword-modal.jinja
│ │ │ ├── legal-pagination.jinja
│ │ │ ├── legal-regulations-pagination.jinja
│ │ │ ├── legal-search-results-adrs.jinja
│ │ │ ├── legal-search-results-advisory-opinion.jinja
│ │ │ ├── legal-search-results-afs.jinja
│ │ │ ├── legal-search-results-mur.jinja
│ │ │ ├── legal-search-results-regulation.jinja
│ │ │ └── legal-search-results-statute.jinja
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── manage.py
├── search
│ ├── __init__.py
│ ├── management
│ │ └── data
│ │ │ ├── sitemap_html.xml
│ │ │ └── sitemap_pdf.xml
│ ├── templates
│ │ └── search
│ │ │ ├── policy_guidance_search_page.html
│ │ │ └── search.html
│ ├── tests
│ │ ├── __init__.py
│ │ └── test_views.py
│ └── views.py
└── webpack.config.cjs
├── karma.conf.js
├── locust_helpers
├── helpers.py
└── urls.py
├── locustfile.py
├── manifest_dev.yml
├── manifest_feature.yml
├── manifest_prod.yml
├── manifest_stage.yml
├── package-lock.json
├── package.json
├── pytest.ini
├── requirements-dev.txt
├── requirements.txt
├── runtime.txt
└── tasks.py
/.coveragerc:
--------------------------------------------------------------------------------
1 | [run]
2 | omit=*migrations*
3 | source = .
4 |
--------------------------------------------------------------------------------
/.cspell/custom-dictionary-workspace.txt:
--------------------------------------------------------------------------------
1 | # Custom Dictionary Words
2 | blockquote
3 | bythenumbers
4 | camelcase
5 | draftail
6 | Draftail
7 | labelledby
8 | wagtailcore
9 | wagtailimages
10 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | fec/fec/static/js/vendor/*
2 |
--------------------------------------------------------------------------------
/.flake8:
--------------------------------------------------------------------------------
1 | [flake8]
2 | exclude = .git,__pycache__,dist,node_modules,fec/home/migrations
3 | max-line-length = 120
4 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature-request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Template to help guide feature requests
4 | title: Feature Request
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Thank you for your interest in helping improve the FEC CMS.**
11 |
12 | Below, you'll find questions to help us visualize your request.
13 |
14 | ### Summary
15 |
16 | _Briefly describe what you'd like to see changed and why._
17 |
18 | ### Current Situation
19 |
20 | _What happens now?_
21 |
22 | ### Use Case
23 |
24 | _Who would benefit from this requested feature?_
25 |
26 | ### Misc
27 |
28 | _If you'd like to include anything else that may be of interest, do that here._
29 |
--------------------------------------------------------------------------------
/.hound.yml:
--------------------------------------------------------------------------------
1 | javascript:
2 | config_file: .eslintrc
3 |
--------------------------------------------------------------------------------
/.jshintignore:
--------------------------------------------------------------------------------
1 | tests/react/**
2 | static/js/legal/**
3 | node_modules/**
4 | dist/**
5 |
--------------------------------------------------------------------------------
/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "asi": false,
3 | "bitwise": true,
4 | "browser": true,
5 | "camelcase": true,
6 | "curly": true,
7 | "esversion": 6,
8 | "expr": true,
9 | "forin": true,
10 | "immed": true,
11 | "latedef": "nofunc",
12 | "maxlen": 100,
13 | "newcap": true,
14 | "noarg": true,
15 | "node": true,
16 | "noempty": true,
17 | "nonew": false,
18 | "predef": [
19 | "require",
20 | "module",
21 | "window",
22 | "document",
23 | "describe",
24 | "before",
25 | "beforeEach",
26 | "after",
27 | "afterEach",
28 | "it"
29 | ],
30 | "quotmark": true,
31 | "trailing": true,
32 | "undef": true,
33 | "unused": true
34 | }
35 |
--------------------------------------------------------------------------------
/.pre-commit-config.yaml:
--------------------------------------------------------------------------------
1 | repos:
2 | - repo: https://github.com/pre-commit/pre-commit-hooks
3 | rev: v4.4.0
4 | hooks:
5 | - id: end-of-file-fixer
6 |
7 | - repo: https://github.com/PyCQA/flake8
8 | rev: 6.0.0
9 | hooks:
10 | - id: flake8
11 | args: [--max-line-length=120]
12 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # Ignore artifacts:
2 | build
3 | coverage
4 | icons
5 | *.cjs
6 | *.hbs
7 | *.html
8 | *.html
9 | *.jinja
10 | *.js
11 | *.json
12 | *.md
13 | *.yaml
14 | *.yml
15 | _icon-variables.scss
16 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "singleQuote": true
3 | }
4 |
--------------------------------------------------------------------------------
/.puppeteerrc.cjs:
--------------------------------------------------------------------------------
1 | const {join} = require('path');
2 |
3 | /**
4 | * @type {import("puppeteer").Configuration}
5 | */
6 | module.exports = {
7 | // Changes the cache location for Puppeteer.
8 | cacheDirectory: join(__dirname, '.cache', 'puppeteer'),
9 | };
10 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | # Licensing and attribution
2 |
3 | This project includes a mix of the following:
4 |
5 | * Open source works that are not in the public domain
6 | * Open source work by the U.S. government that is in the public domain
7 |
8 | This project is covered by the FEC's [Default License](https://github.com/fecgov/FEC/blob/master/LICENSE.md).
9 |
--------------------------------------------------------------------------------
/Procfile:
--------------------------------------------------------------------------------
1 | web: bin/run.sh
2 |
--------------------------------------------------------------------------------
/babel.config.json:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["@babel/preset-env"]
3 | }
4 |
--------------------------------------------------------------------------------
/bin/run.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Set environment options to exit immediately if a non-zero status code
4 | # appears from a command or within a pipe
5 | set -o errexit
6 | set -o pipefail
7 |
8 | cd fec
9 | # Run migrations
10 | ./manage.py makemigrations
11 | ./manage.py migrate --noinput
12 |
13 | # Run application
14 | gunicorn -k gevent -w 2 fec.wsgi:application
15 |
--------------------------------------------------------------------------------
/fec/.coveragerc:
--------------------------------------------------------------------------------
1 | [run]
2 | branch = true
3 | source = .
4 |
--------------------------------------------------------------------------------
/fec/data/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/data/__init__.py
--------------------------------------------------------------------------------
/fec/data/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin # noqa: F401
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/fec/data/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class DataConfig(AppConfig):
5 | name = 'data'
6 |
--------------------------------------------------------------------------------
/fec/data/jinja2.py:
--------------------------------------------------------------------------------
1 | import jinja2
2 | from compressor.contrib.jinja2ext import CompressorExtension
3 |
4 |
5 | def environment(**options):
6 | """Create a jinja2 environment with the CompressorExtension added in"""
7 | options['extensions'] += [CompressorExtension]
8 | options['autoescape'] = True # This was already True but we want to set it explicitly
9 | env = jinja2.Environment(**options)
10 | return env
11 |
--------------------------------------------------------------------------------
/fec/data/templates/macros/document.jinja:
--------------------------------------------------------------------------------
1 | {% macro thumbnail(title, url, img="", size='', type="PDF") %}
2 |
3 |
4 |
5 |
6 |
7 | {{ title }}
8 | {% if size %}
9 | {% set metadata = [size, type] %}
10 | {% else %}
11 | {% set metadata = [type] %}
12 | {% endif %}
13 | ({{ ' '.join(metadata) }})
14 |
15 |
16 | {% endmacro %}
17 |
--------------------------------------------------------------------------------
/fec/data/templates/macros/filters/parties.jinja:
--------------------------------------------------------------------------------
1 | {% macro checkbox(id_suffix='', name='party') %}
2 |
3 | {% import 'macros/filters/checkbox.jinja' as checkbox %}
4 |
5 | {{ checkbox.checkbox_dropdown(
6 | name=name,
7 | label='Political party',
8 | selected=constants.parties,
9 | options=constants.parties_extended,
10 | ) }}
11 |
12 | {% endmacro %}
13 |
--------------------------------------------------------------------------------
/fec/data/templates/macros/null.jinja:
--------------------------------------------------------------------------------
1 | {% macro null(value) %}
2 | {% if value is not none or value is not defined %}
3 | {{ value }}
4 | {% else %}
5 | None
6 | {% endif %}
7 | {% endmacro %}
8 |
--------------------------------------------------------------------------------
/fec/data/templates/macros/widgets.jinja:
--------------------------------------------------------------------------------
1 | {% macro select__election_year(election_years, election_year, elementID, electionType = 'H') %}
2 | Running in:
3 |
4 | {% for eachYear in election_years | sort(reverse=True) %}
5 | {% if electionType != 'P' or eachYear % 4 == 0 %}
6 | {{ eachYear }}
10 | {% endif %}
11 | {% endfor %}
12 |
13 | {% endmacro %}
14 |
--------------------------------------------------------------------------------
/fec/data/templates/partials/browse-data/historical.jinja:
--------------------------------------------------------------------------------
1 |
2 | Campaign finance statistics
3 | Data tables that summarize financial activity by election cycle and coverage period for congressional candidates, political parties, political action committees and communication filings (independent expenditures, electioneering communications and communication costs).
4 | Find statistics
5 |
6 |
--------------------------------------------------------------------------------
/fec/data/templates/partials/committee-totals-ie-only.jinja:
--------------------------------------------------------------------------------
1 | {% with committee=context() %}
2 | {% import 'macros/tables.jinja' as tables %}
3 |
4 | {{ tables.totals('Contributions received', totals.0.total_independent_contributions) }}
5 | {{ tables.totals('Independent expenditures', totals.0.total_independent_expenditures) }}
6 |
7 | {% endwith %}
8 |
--------------------------------------------------------------------------------
/fec/data/templates/partials/filters/active-candidates.jinja:
--------------------------------------------------------------------------------
1 |
2 |
3 | Candidate status
4 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/fec/data/templates/partials/filters/form-type.jinja:
--------------------------------------------------------------------------------
1 | {% import 'macros/filters/checkbox.jinja' as checkbox %}
2 |
3 | {{ checkbox.checkbox_dropdown(
4 | 'id_suffix',
5 | 'form_type',
6 | 'Form Type',
7 | options=constants.form_types,
8 | ) }}
9 |
--------------------------------------------------------------------------------
/fec/data/templates/partials/loading-tab.jinja:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/fec/data/templates/widgets/aggregate-totals.jinja:
--------------------------------------------------------------------------------
1 | {% extends 'layouts/widgets.jinja' %}
2 | {% import 'macros/page-header.jinja' as header %}
3 |
4 | {% block title %}{{ title }}{% endblock %}
5 |
6 | {% block css %}
7 |
8 |
14 | {% endblock %}
15 |
16 | {% block body %}{% endblock %}
17 |
18 | {% block scripts %}
19 |
20 | {% endblock %}
21 |
--------------------------------------------------------------------------------
/fec/data/templatetags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/data/templatetags/__init__.py
--------------------------------------------------------------------------------
/fec/data/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/data/tests/__init__.py
--------------------------------------------------------------------------------
/fec/extend_admin/wagtailadmin/base.html:
--------------------------------------------------------------------------------
1 | {% overextends "wagtailadmin/base.html" %}
2 |
3 | {% block branding_logo %}
4 | Federal Election Commission
5 | {% endblock %}
--------------------------------------------------------------------------------
/fec/extend_admin/wagtailadmin/widgets/chooser.html:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/fec/fec/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/__init__.py
--------------------------------------------------------------------------------
/fec/fec/draftail/anchor.py:
--------------------------------------------------------------------------------
1 | from draftjs_exporter.dom import DOM
2 | from wagtail.admin.rich_text.converters.html_to_contentstate import InlineEntityElementHandler
3 |
4 |
5 | def anchor_entity_decorator(props):
6 |
7 | return DOM.create_element('span', {
8 | 'data-anchor': props['anchor'],
9 | 'id': props['anchor'],
10 | }, props['children'])
11 |
12 |
13 | class AnchorEntityElementHandler(InlineEntityElementHandler):
14 | mutability = 'IMMUTABLE'
15 |
16 | def get_attribute_data(self, attrs):
17 | return {
18 | 'anchor': attrs['data-anchor'],
19 | }
20 |
--------------------------------------------------------------------------------
/fec/fec/settings/__init__.py:
--------------------------------------------------------------------------------
1 | from .dev import * # noqa F401
2 |
--------------------------------------------------------------------------------
/fec/fec/settings/dev.py:
--------------------------------------------------------------------------------
1 | from .base import * # noqa: F403
2 |
3 | # These settings are for local development only.
4 |
5 | # SECURITY WARNING: don't run with debug turned on in production!
6 | DEBUG = True
7 | for t in TEMPLATES: # noqa: F405
8 | t.setdefault('OPTIONS', {})
9 | t['OPTIONS']['debug'] = True
10 |
11 | EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
12 |
13 | try:
14 | from .local import * # noqa: F401, F403
15 | except ImportError:
16 | pass
17 |
--------------------------------------------------------------------------------
/fec/fec/settings/env.py:
--------------------------------------------------------------------------------
1 | import cfenv
2 |
3 | env = cfenv.AppEnv()
4 |
--------------------------------------------------------------------------------
/fec/fec/settings/production.py:
--------------------------------------------------------------------------------
1 | from .base import * # noqa: F401, F403
2 | from .env import env
3 |
4 | SECRET_KEY = env.get_credential('DJANGO_SECRET_KEY')
5 |
6 | # These settings are used for all public environments:
7 | # dev, stage, feature, and production
8 |
9 | DEBUG = False
10 | TEMPLATE_DEBUG = False
11 |
12 | SESSION_COOKIE_SECURE = True
13 | SESSION_COOKIE_HTTPONLY = True
14 | CSRF_COOKIE_SECURE = True
15 | CSRF_COOKIE_HTTPONLY = True
16 |
17 | ALLOWED_HOSTS = [
18 | '.fec.gov',
19 | '.app.cloud.gov'
20 | ]
21 |
22 | try:
23 | from .local import * # noqa: F401, F403
24 | except ImportError:
25 | pass
26 |
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bold.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bold.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bold.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bold.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bolditalic.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bolditalic.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bolditalic.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-bolditalic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-bolditalic.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-italic.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-italic.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-italic.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-italic.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-regular.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-regular.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-regular.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/fec-currencymono-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/fec-currencymono-regular.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bold.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bold.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bold.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bold.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bolditalic.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bolditalic.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bolditalic.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-bolditalic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-bolditalic.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-italic.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-italic.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-italic.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-italic.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-regular.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-regular.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-regular.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/gandhiserif-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/gandhiserif-regular.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-bold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-bold.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-bold.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-bold.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-bold.woff2
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-regular.eot
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-regular.ttf
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-regular.woff
--------------------------------------------------------------------------------
/fec/fec/static/fonts/karla-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/fonts/karla-regular.woff2
--------------------------------------------------------------------------------
/fec/fec/static/icons/icon-template.scss:
--------------------------------------------------------------------------------
1 | // NOTE: Do note edit _icon-variables.scss directly;
2 | // It is generated by Gulp from fec/fec/static/icons/icon-template.scss
3 | // so make any necessary edits there.
4 |
5 | // Variables for all icons
6 | <% _.each(icons, function(svg) { %>$<%= svg.name %>: 'data:image/svg+xml;charset=utf8, <%= svg.content %>';
7 | <% }); %>
8 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/arrow-down-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/arrow-left-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/arrow-right-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/arrow-up-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/bang-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/check-circle-outline.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/clock-reverse.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/direction-sign.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/file-box.svg:
--------------------------------------------------------------------------------
1 | file-box
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/grid.svg:
--------------------------------------------------------------------------------
1 | grid
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/info-circle-outline.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/info-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/mallet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/moving-envelope-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/point-down-circle.svg:
--------------------------------------------------------------------------------
1 |
2 | betaFEC_icons
3 |
4 |
5 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/question-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/shield.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/table.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 | betaFEC_icons
10 |
11 |
12 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/input/telephone-circle.svg:
--------------------------------------------------------------------------------
1 | betaFEC_icons
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/all-files.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-down-border.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-down-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-left-border.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-left-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-right-border.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-right-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-target.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-up-border.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-up-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/bang-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/bang.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/bluesky-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/book.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/bulk.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/cal-add.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/check-circle-outline.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/check-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/check.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/clock-reverse.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/dash.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/direction-sign.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/document.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/download.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/exclamation-bubble.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/facebook-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/file-box.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/filter.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/folder-with-person.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/folder.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/github-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/graph-horizontal-ordered.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/graph-horizontal-unordered.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/graph.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/grid.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/info-circle-outline.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/info-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/magnifying-glass-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/magnifying-glass.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/mallet.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/map-pin.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/menu.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/minus-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/moving-envelope-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/notebook.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/org-chart.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/papers.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/play-button.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/plus-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/plus.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/point-down-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/pop-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/question-bubble.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/question-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/scale.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/share.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/shield.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/signal.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/sort-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/sort-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/sort.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/speaker.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/star.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/table.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/telephone-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/updates.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/x-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/x-twitter-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/x.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/icons/output/youtube-circle.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/fec/fec/static/img/Homepage-hero-image-flag.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/Homepage-hero-image-flag.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/TV-Gray-Wall-Only-850.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/TV-Gray-Wall-Only-850.png
--------------------------------------------------------------------------------
/fec/fec/static/img/angle-arrow-down-primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/angle-arrow-down-primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/angle-arrow-down-primary.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/img/angle-arrow-up-primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/angle-arrow-up-primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/angle-arrow-up-primary.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/data/favicon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/data/favicon-120x120.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/data/favicon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/data/favicon-152x152.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/data/favicon-167x167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/data/favicon-167x167.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/data/favicon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/data/favicon-180x180.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/data/favicon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/data/favicon-192x192.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/favicon-16x16.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/favicon-32x32.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/favicon.ico
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-120x120.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-152x152.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-167x167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-167x167.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-180x180.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-192x192.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-200x200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-200x200.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/general/favicon-48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/general/favicon-48x48.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/help/favicon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/help/favicon-120x120.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/help/favicon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/help/favicon-152x152.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/help/favicon-167x167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/help/favicon-167x167.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/help/favicon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/help/favicon-180x180.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/help/favicon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/help/favicon-192x192.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/legal/favicon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/legal/favicon-120x120.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/legal/favicon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/legal/favicon-152x152.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/legal/favicon-167x167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/legal/favicon-167x167.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/legal/favicon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/legal/favicon-180x180.png
--------------------------------------------------------------------------------
/fec/fec/static/img/favicon/legal/favicon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/favicon/legal/favicon-192x192.png
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--candidate-support.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--candidate-support.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--compare-candidates.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--compare-candidates.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--contributions-narrow.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--contributions-narrow.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--contributions.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--contributions.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--data.png
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--dates.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--dates.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--filing.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--filing.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--forms.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--forms.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--legal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--legal.png
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--reporting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--reporting.png
--------------------------------------------------------------------------------
/fec/fec/static/img/feature--training.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/feature--training.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/fec-office.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/fec-office.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--goodman.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--goodman.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--hunter.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--hunter.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--no-photo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--no-photo.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--petersen.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--petersen.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--walther.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--walther.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/headshot--weintraub.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/headshot--weintraub.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-about.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-about.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-data.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-data.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-home.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-home.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-legal.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-legal.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-oig.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-oig.png
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-press.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-press.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/hero-registration.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/hero-registration.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/i-bluesky--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-bluesky--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-complex--calendar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-complex--calendar.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-complex--data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-complex--data.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-complex--legal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-complex--legal.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-complex--regreport.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-complex--regreport.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-elections--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-elections--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-email--inverse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-email--inverse.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-email--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-email--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-github--inverse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-github--inverse.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-github--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-github--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-mail--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-mail--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-phone--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-phone--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-twitter--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-twitter--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/i-x-twitter--primary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/i-x-twitter--primary.png
--------------------------------------------------------------------------------
/fec/fec/static/img/icon-dot-gov.svg:
--------------------------------------------------------------------------------
1 | dot gov icon
--------------------------------------------------------------------------------
/fec/fec/static/img/icon-https.svg:
--------------------------------------------------------------------------------
1 | https icon
--------------------------------------------------------------------------------
/fec/fec/static/img/loading--primary.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/loading--primary.gif
--------------------------------------------------------------------------------
/fec/fec/static/img/loading-ellipsis-gray.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/loading-ellipsis-gray.gif
--------------------------------------------------------------------------------
/fec/fec/static/img/loading-ellipsis.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/loading-ellipsis.gif
--------------------------------------------------------------------------------
/fec/fec/static/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/loading.gif
--------------------------------------------------------------------------------
/fec/fec/static/img/map-election-search-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/map-election-search-default.png
--------------------------------------------------------------------------------
/fec/fec/static/img/new-tv-bkgd-wide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/new-tv-bkgd-wide.png
--------------------------------------------------------------------------------
/fec/fec/static/img/print-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/print-logo.png
--------------------------------------------------------------------------------
/fec/fec/static/img/seal--cropped.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/seal--cropped.png
--------------------------------------------------------------------------------
/fec/fec/static/img/seal--inverse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/seal--inverse.png
--------------------------------------------------------------------------------
/fec/fec/static/img/seal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/seal.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-data.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-help.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-legal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-legal.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-logo.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-microphone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-microphone.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-microphones.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-microphones.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-pen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-pen.png
--------------------------------------------------------------------------------
/fec/fec/static/img/social/fec-seal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/social/fec-seal.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--ao-brochure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--ao-brochure.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--ao-statistics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--ao-statistics.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--audio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--audio.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--candidates.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--candidates.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--captions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--captions.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--citizens-guide-brochure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--citizens-guide-brochure.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--enforcement-process.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--enforcement-process.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--feca.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--feca.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--filing-a-complaint.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--filing-a-complaint.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--nonconnected.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--nonconnected.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--orgs.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--orgs.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--parties.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--parties.jpg
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--pdf-guide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--pdf-guide.png
--------------------------------------------------------------------------------
/fec/fec/static/img/thumbnail--video.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/thumbnail--video.png
--------------------------------------------------------------------------------
/fec/fec/static/img/us_flag_small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/us_flag_small.png
--------------------------------------------------------------------------------
/fec/fec/static/img/wordmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/static/img/wordmark.png
--------------------------------------------------------------------------------
/fec/fec/static/js/draftail/App.js:
--------------------------------------------------------------------------------
1 | import { default as anchor } from './Anchor.js';
2 | import { default as glossary } from './Glossary.js';
3 | import { default as sansserif } from './SansSerif.js';
4 |
5 | window.draftail.registerPlugin(anchor);
6 | window.draftail.registerPlugin(glossary);
7 | window.draftail.registerPlugin(sansserif);
8 |
--------------------------------------------------------------------------------
/fec/fec/static/js/draftail/utils.js:
--------------------------------------------------------------------------------
1 | export function slugify(text) {
2 | return text
3 | .toString()
4 | .toLowerCase()
5 | .replace(/\s+/g, '-')
6 | .replace(/[^\w\-]+/g, '')
7 | .replace(/\-\-+/g, '-')
8 | .replace(/^-+/, '')
9 | .replace(/-+$/, '');
10 | }
11 |
--------------------------------------------------------------------------------
/fec/fec/static/js/modules/accessibility.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Utilities for setting or removing tabindex on all focusable elements
3 | * in a parent div. Useful for hiding elements off-canvas without setting
4 | * display:none, while still removing from the tab order
5 | */
6 |
7 | export function removeTabindex($elm) {
8 | $elm.find('a, button, :input, [tabindex]').attr('tabindex', '-1');
9 | }
10 |
11 | export function restoreTabindex($elm) {
12 | $elm.find('a, button, :input, [tabindex]').attr('tabindex', '0');
13 | }
14 |
--------------------------------------------------------------------------------
/fec/fec/static/js/modules/events.js:
--------------------------------------------------------------------------------
1 |
2 | const EventEmitter2 = require('eventemitter2');
3 | // const emitter = EventEmitter2();
4 | // window.events = window.events || new EventEmitter2();
5 |
6 | export default function initEvents() {
7 | window.events = window.events || new EventEmitter2();
8 | return window.events;
9 | }
10 |
--------------------------------------------------------------------------------
/fec/fec/static/js/modules/listeners.js:
--------------------------------------------------------------------------------
1 | import { default as _toArray } from 'underscore/modules/toArray.js';
2 |
3 | export default function Listeners() {
4 | this.listeners = [];
5 | }
6 |
7 | Listeners.prototype.on = function(elm) {
8 | var $elm = $(elm);
9 | var args = _toArray(arguments).slice(1);
10 | this.listeners = this._listeners || [];
11 | this.listeners.push({ $elm: $elm, args: args });
12 | $elm.on.apply($elm, args);
13 | };
14 |
15 | Listeners.prototype.clear = function() {
16 | this.listeners.forEach(function(listener) {
17 | var $elm = listener.$elm;
18 | var args = listener.args;
19 | $elm.off.apply($elm, args);
20 | });
21 | };
22 |
--------------------------------------------------------------------------------
/fec/fec/static/js/pages/bythenumbers.js:
--------------------------------------------------------------------------------
1 | import { customEvent } from '../modules/analytics.js';
2 | import { TopEntities } from '../modules/top-entities.js';
3 |
4 | new TopEntities('.js-top-entities', window.context.type);
5 |
6 | $('.js-ga-event').each(function() {
7 | var eventName = $(this).data('ga-event');
8 | $(this).on('click', function() {
9 | customEvent({
10 | event: 'Widget Interaction',
11 | eventName: 'fecCustomEvent',
12 | eventCategory: 'Misc. events',
13 | eventAction: eventName,
14 | eventValue: 1
15 | });
16 | });
17 | });
18 |
--------------------------------------------------------------------------------
/fec/fec/static/js/pages/data-landing.js:
--------------------------------------------------------------------------------
1 | import { customEvent } from '../modules/analytics.js';
2 | import ElectionLookup from '../modules/election-lookup.js';
3 |
4 | $(function() {
5 | new ElectionLookup('#election-lookup', false);
6 | });
7 |
8 | $('.js-ga-event').each(function() {
9 | var eventName = $(this).data('ga-event');
10 | $(this).on('click', function() {
11 | customEvent({
12 | eventName: 'fecCustomEvent',
13 | eventCategory: 'Misc. events',
14 | eventAction: eventName,
15 | eventValue: 1
16 | });
17 | });
18 | });
19 |
--------------------------------------------------------------------------------
/fec/fec/static/js/pages/election-lookup.js:
--------------------------------------------------------------------------------
1 | // var lookup = require('../modules/election-search');
2 | import ElectionSearch from '../modules/election-search.js';
3 |
4 | $(function() {
5 | new ElectionSearch('#election-lookup', true);
6 | });
7 |
--------------------------------------------------------------------------------
/fec/fec/static/js/pages/legal.js:
--------------------------------------------------------------------------------
1 | import FilterPanel from '../modules/filters/filter-panel.js';
2 | import KeywordModal from '../modules/keyword-modal.js';
3 |
4 | new FilterPanel();
5 |
6 | if (document.querySelector('.js-keyword-modal')) {
7 | new KeywordModal();
8 | }
9 |
--------------------------------------------------------------------------------
/fec/fec/static/js/pages/statistical-summary-archive.js:
--------------------------------------------------------------------------------
1 | // TODO: is this still necessary?
2 | import StatisticalSummaryArchive from '../modules/statistical-summary-archive.js';
3 |
4 | new StatisticalSummaryArchive();
5 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/audit_tags.hbs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/calendar/download.hbs:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/calendar/listToggles.hbs:
--------------------------------------------------------------------------------
1 |
2 | Sort by:
3 | Date
7 | |
8 | Category
12 |
13 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/calendar/subscribe.hbs:
--------------------------------------------------------------------------------
1 |
9 |
10 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/candidateStateMap.hbs:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{#each this}}
4 |
5 | {{ this.candidate_name }}
6 |
7 | {{/each}}
8 |
9 |
Show two candidates
10 |
Hide map
11 |
12 |
13 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/coverageEndDate.hbs:
--------------------------------------------------------------------------------
1 | {{#if coverage_end_date }}
2 | Coverage ending: {{ coverage_end_date }}
3 |
4 | {{#if url}}
5 | View all
6 | {{/if}}
7 | {{else}}
8 | No processed data this period.
9 | {{/if}}
10 |
11 |
12 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/districts.hbs:
--------------------------------------------------------------------------------
1 | Select district
2 | {{#if senate }}
3 | Senate
4 | {{/if}}
5 | {{#if atLargeHouse }}
6 | At-large House district
7 | {{/if}}
8 | {{#if districts }}
9 |
10 | {{#each this.districts }}
11 | {{this}}
12 | {{/each}}
13 |
14 | {{/if}}
15 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/download/container.hbs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Your downloads
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/election-cycles.hbs:
--------------------------------------------------------------------------------
1 | {{#each this}}
2 |
3 |
10 |
11 | {{#if full}}
12 | All years:
13 | {{/if}}
14 | {{min}}–{{max}}
15 |
16 |
17 | {{/each}}
18 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/electionCycle.hbs:
--------------------------------------------------------------------------------
1 | Time period:
2 | {{min}}–{{max}}
3 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/electionNoResults.hbs:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{#if this.zip}}
4 | We can't find any results for this ZIP code
5 | {{else}}
6 | We can't find any results for this location
7 | {{/if}}
8 |
9 |
Double-check that you entered it correctly, and if it still doesn't work, let us know:
10 |
14 |
15 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/electionOffices.hbs:
--------------------------------------------------------------------------------
1 | {{#each this}}
2 |
3 |
4 |
5 |
6 |
7 |
{{ office_name }}
8 | {{ address_line1 }}
9 | {{ city }}, {{ state }} {{ zip_code }}
10 | {{ website_url1 }}
11 |
12 |
{{ primary_phone_number }}
13 |
14 |
15 |
16 |
17 | {{/each}}
18 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/electionResult.hbs:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{#if district}}
4 |
5 | {{/if}}
6 | {{electionName}}
7 |
8 |
9 | {{electionType}}:
10 | {{electionDate}}
11 |
12 |
16 |
17 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/electionZipWarning.hbs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
ZIP code {{zip}} includes multiple congressional districts with elections in {{cycle}}.
4 |
Find your district on house.gov .
5 |
6 |
7 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/homepage/events-and-deadlines.hbs:
--------------------------------------------------------------------------------
1 | {{#if startDate}}
2 | {{ startDate }} |
3 | {{#if url}}{{ summary }}
4 | {{else}}
5 | {{ summary }}
6 | {{/if}}
7 | {{else}}
8 | None scheduled.
9 | {{/if}}
10 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/tables/exportWidget.hbs:
--------------------------------------------------------------------------------
1 |
2 |
{{this.title}}
3 | {{#if this.export }}
4 |
5 |
6 |
7 |
8 |
10 | Export
11 |
12 |
13 |
14 | {{/if}}
15 |
16 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/tables/title.hbs:
--------------------------------------------------------------------------------
1 |
2 |
{{this.title}}
3 |
4 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/top-entity-row.hbs:
--------------------------------------------------------------------------------
1 |
2 |
{{ rank }}
{{ name }}
3 | {{#if party_code}}
4 | {{ party_code }}
5 | {{/if}}
6 |
7 |
{{ amount }}
8 |
--------------------------------------------------------------------------------
/fec/fec/static/js/templates/upcomingPresidential.hbs:
--------------------------------------------------------------------------------
1 |
2 |
You might also like:
3 |
6 |
7 | {{electionType}}:
8 | {{electionDate}}
9 |
10 |
14 |
15 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/calendar.scss:
--------------------------------------------------------------------------------
1 | @import 'global-common';
2 |
3 | @import 'components/accordions';
4 | @import 'components/filters';
5 | @import 'components/data-container';
6 | @import 'components/calendar';
7 | @import 'components/datatables';
8 | @import 'components/dropdowns';
9 | @import 'components/tags';
10 | @import 'components/toggles';
11 | @import 'components/tooltips';
12 | @import 'components/type-styles';
13 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/common.scss:
--------------------------------------------------------------------------------
1 | @import 'global-common';
2 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/components/_breakdowns.scss:
--------------------------------------------------------------------------------
1 | // Raising and Spending breakdown
2 | //
3 | //
6 | //
7 |
8 | .breakdown-cycle {
9 | border-top: 4px solid $primary;
10 | padding: u(2rem 0);
11 |
12 | select {
13 | width: 100%;
14 | }
15 | }
16 |
17 | .breakdown__title {
18 | line-height: u(3.4rem);
19 | margin: 0;
20 | }
21 |
22 | .input__label-home {
23 | line-height: u(2.5rem);
24 | margin: 0;
25 | }
26 | .bar-container {
27 | margin-left: 0;
28 | background: $gray-lightest;
29 | }
30 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/components/_candidate-page.scss:
--------------------------------------------------------------------------------
1 | // Candidate page
2 | //
3 | // Specific styles for parts of the candidate page
4 | //
5 |
6 | @include media($lg) {
7 | .candidate__totals {
8 | @include span-columns(6);
9 | }
10 |
11 | .candidate__committees {
12 | @include span-columns(6);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/components/_data-landing-callouts.scss:
--------------------------------------------------------------------------------
1 | // Data Landing Callouts
2 | //
3 | // Used on:
4 | // data landing page, callout width overrides
5 | //
6 |
7 | @include media($med) {
8 | .callout-holder .grid__item {
9 | width: 100%; // We want them full-width until we get to $lg
10 | }
11 | }
12 | @include media($lg) {
13 | .callout-holder .grid__item {
14 | width: 48.82117%; // borrowed from the grid__item definition in the framework
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/datatables.scss:
--------------------------------------------------------------------------------
1 | @import 'global-common';
2 |
3 | @import 'components/accordions';
4 | @import 'components/messages';
5 | @import 'components/datatable-panel';
6 | @import 'components/datatables';
7 | @import 'components/results-info';
8 | @import 'components/downloads';
9 | @import 'components/data-container';
10 | @import 'components/filters';
11 | @import 'components/date-grid';
12 | @import 'components/dropdowns';
13 | @import 'components/tags';
14 | @import 'components/toggles';
15 | @import 'components/tooltips';
16 | @import 'components/type-styles';
17 | @import 'components/overlay';
18 | @import 'components/pagination';
19 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/elections.scss:
--------------------------------------------------------------------------------
1 | @import '../../../../node_modules/leaflet/dist/leaflet';
2 |
3 | @import 'common';
4 | @import 'components/agendas';
5 | @import 'components/articles';
6 | @import 'components/data-container';
7 | @import 'components/datatables';
8 | @import 'components/downloads';
9 | @import 'components/fec-org-chart';
10 | @import 'components/filters';
11 | @import 'components/entity-header';
12 | @import 'components/maps';
13 | @import 'components/responsive-object';
14 | @import 'components/results-info';
15 | @import 'components/richtext';
16 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/elements/_images.scss:
--------------------------------------------------------------------------------
1 | // Images and Figures
2 |
3 | img,
4 | picture {
5 | margin: 0;
6 | max-width: 100%;
7 | }
8 |
9 | figure {
10 | margin: 0;
11 | padding: 0;
12 | }
13 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/elements/_links.scss:
--------------------------------------------------------------------------------
1 | // Links
2 | //
3 |
4 | a {
5 | border-bottom: 1px dotted $primary;
6 | color: inherit;
7 | cursor: pointer;
8 | text-decoration: none;
9 | transition: color 0.1s linear;
10 |
11 | &:active,
12 | &:hover {
13 | border-bottom-color: $primary-contrast;
14 | }
15 |
16 | img {
17 | border: none;
18 | }
19 |
20 | &.no-decoration {
21 | border: none !important;
22 | padding: 0;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/elements/_tables.scss:
--------------------------------------------------------------------------------
1 | // Tables
2 | //
3 |
4 | table {
5 | border-collapse: collapse;
6 | margin: 0;
7 | table-layout: fixed;
8 | width: 100%;
9 | @include font-feature-settings('kern', 'liga', 'tnum');
10 | }
11 |
12 | th {
13 | font-weight: 600;
14 | padding: 0;
15 | text-align: left;
16 | }
17 |
18 | td {
19 | padding: 0;
20 | }
21 |
22 | tr,
23 | td,
24 | th {
25 | vertical-align: middle;
26 | }
27 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/entity.scss:
--------------------------------------------------------------------------------
1 | /* Used inside candidate-single and committee-single */
2 | @import 'base';
3 |
4 | @import 'common';
5 | @import 'components/entity-header';
6 | @import 'components/candidate-page';
7 | @import 'components/data-container';
8 | @import 'components/datatable-panel';
9 | @import 'components/downloads';
10 | @import 'components/datatables';
11 | @import 'components/datatable-panel';
12 | @import 'components/downloads';
13 | @import 'components/table-styles';
14 | @import 'components/results-info';
15 | @import 'components/callouts';
16 | @import 'components/committee-snapshot';
17 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/legal-common.scss:
--------------------------------------------------------------------------------
1 | @import 'global';
2 |
3 | @import 'common';
4 |
5 | @import 'components/legal-search';
6 | @import 'components/search-controls';
7 | @import 'components/posts';
8 | @import 'components/table-styles';
9 | @import 'datatables';
10 | @import 'components/entity-header';
11 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/legal.scss:
--------------------------------------------------------------------------------
1 | @import 'global';
2 |
3 | @import 'common';
4 | @import 'datatables';
5 | @import 'components/legal-search';
6 | @import 'components/search-controls';
7 | @import 'components/posts';
8 | @import 'components/headings';
9 | @import 'components/table-styles';
10 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/mixins/_icon-mixins.scss:
--------------------------------------------------------------------------------
1 | // Icon mixins
2 | //
3 |
4 | @function str-replace($string, $search, $replace: '') {
5 | $index: str-index($string, $search);
6 |
7 | @if $index {
8 | @return str-slice($string, 1, $index - 1) + $replace +
9 | str-replace(
10 | str-slice($string, $index + str-length($search)),
11 | $search,
12 | $replace
13 | );
14 | }
15 |
16 | @return $string;
17 | }
18 |
19 | @function svg-fill($svg, $color) {
20 | $fillColor: str-replace(#{$color}, '#', '%23');
21 | @return str-replace($svg, '%3Csvg', '%3Csvg%20%20fill%3D%27#{$fillColor}%27');
22 | }
23 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/addons/_clearfix.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Provides an easy way to include a clearfix for containing floats.
4 | ///
5 | /// @link http://cssmojo.com/latest_new_clearfix_so_far/
6 | ///
7 | /// @example scss - Usage
8 | /// .element {
9 | /// @include clearfix;
10 | /// }
11 | ///
12 | /// @example css - CSS Output
13 | /// .element::after {
14 | /// clear: both;
15 | /// content: "";
16 | /// display: table;
17 | /// }
18 |
19 | @mixin clearfix {
20 | &::after {
21 | clear: both;
22 | content: '';
23 | display: table;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_appearance.scss:
--------------------------------------------------------------------------------
1 | @mixin appearance($value) {
2 | @include prefixer(appearance, $value, webkit moz ms o spec);
3 | }
4 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_backface-visibility.scss:
--------------------------------------------------------------------------------
1 | @mixin backface-visibility($visibility) {
2 | @include prefixer(backface-visibility, $visibility, webkit spec);
3 | }
4 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_calc.scss:
--------------------------------------------------------------------------------
1 | @mixin calc($property, $value) {
2 | #{$property}: -webkit-calc(#{$value});
3 | #{$property}: calc(#{$value});
4 | }
5 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_filter.scss:
--------------------------------------------------------------------------------
1 | @mixin filter($function: none) {
2 | //
[
3 | @include prefixer(perspective, $depth, webkit moz spec);
4 | }
5 |
6 | @mixin perspective-origin($value: 50% 50%) {
7 | @include prefixer(perspective-origin, $value, webkit moz spec);
8 | }
9 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_placeholder.scss:
--------------------------------------------------------------------------------
1 | @mixin placeholder {
2 | $placeholders: ':-webkit-input' ':-moz' '-moz' '-ms-input';
3 | @each $placeholder in $placeholders {
4 | &:#{$placeholder}-placeholder {
5 | @content;
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_transform.scss:
--------------------------------------------------------------------------------
1 | @mixin transform($property: none) {
2 | // none |
3 | @include prefixer(transform, $property, webkit moz ms o spec);
4 | }
5 |
6 | @mixin transform-origin($axes: 50%) {
7 | // x-axis - left | center | right | length | %
8 | // y-axis - top | center | bottom | length | %
9 | // z-axis - length
10 | @include prefixer(transform-origin, $axes, webkit moz ms o spec);
11 | }
12 |
13 | @mixin transform-style($style: flat) {
14 | @include prefixer(transform-style, $style, webkit moz ms o spec);
15 | }
16 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/css3/_user-select.scss:
--------------------------------------------------------------------------------
1 | @mixin user-select($value: none) {
2 | @include prefixer(user-select, $value, webkit moz ms spec);
3 | }
4 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_assign-inputs.scss:
--------------------------------------------------------------------------------
1 | @function assign-inputs($inputs, $pseudo: null) {
2 | $list: ();
3 |
4 | @each $input in $inputs {
5 | $input: unquote($input);
6 | $input: if($pseudo, $input + ':' + $pseudo, $input);
7 | $list: append($list, $input, comma);
8 | }
9 |
10 | @return $list;
11 | }
12 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_contains-falsy.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Checks if a list does not contains a value.
4 | ///
5 | /// @access private
6 | ///
7 | /// @param {List} $list
8 | /// The list to check against.
9 | ///
10 | /// @return {Bool}
11 |
12 | @function contains-falsy($list) {
13 | @each $item in $list {
14 | @if not $item {
15 | @return true;
16 | }
17 | }
18 |
19 | @return false;
20 | }
21 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_contains.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Checks if a list contains a value(s).
4 | ///
5 | /// @access private
6 | ///
7 | /// @param {List} $list
8 | /// The list to check against.
9 | ///
10 | /// @param {List} $values
11 | /// A single value or list of values to check for.
12 | ///
13 | /// @example scss - Usage
14 | /// contains($list, $value)
15 | ///
16 | /// @return {Bool}
17 |
18 | @function contains($list, $values...) {
19 | @each $value in $values {
20 | @if type-of(index($list, $value)) != 'number' {
21 | @return false;
22 | }
23 | }
24 |
25 | @return true;
26 | }
27 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_is-length.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Checks for a valid CSS length.
4 | ///
5 | /// @param {string} $value
6 |
7 | @function is-length($value) {
8 | @return type-of($value) != 'null' and
9 | (
10 | str-slice($value + '', 1, 4) == 'calc' or
11 | index(auto inherit initial 0, $value) or
12 | (type-of($value) == 'number' and not(unitless($value)))
13 | );
14 | }
15 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_is-number.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Checks for a valid number.
4 | ///
5 | /// @param {number} $value
6 | ///
7 | /// @require {function} contains
8 |
9 | @function is-number($value) {
10 | @return contains(
11 | '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 0 1 2 3 4 5 6 7 8 9,
12 | $value
13 | );
14 | }
15 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_is-size.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Checks for a valid CSS size.
4 | ///
5 | /// @param {string} $value
6 | ///
7 | /// @require {function} contains
8 | /// @require {function} is-length
9 |
10 | @function is-size($value) {
11 | @return is-length($value) or
12 | contains('fill' 'fit-content' 'min-content' 'max-content', $value);
13 | }
14 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_px-to-em.scss:
--------------------------------------------------------------------------------
1 | // Convert pixels to ems
2 | // eg. for a relational value of 12px write em(12) when the parent is 16px
3 | // if the parent is another value say 24px write em(12, 24)
4 | @use 'sass:math';
5 | @function em($pxval, $base: $em-base) {
6 | @if not unitless($pxval) {
7 | $pxval: strip-units($pxval);
8 | }
9 | @if not unitless($base) {
10 | $base: strip-units($base);
11 | }
12 | @return math.div($pxval, $base) * 1em;
13 | }
14 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_px-to-rem.scss:
--------------------------------------------------------------------------------
1 | // Convert pixels to rems
2 | // eg. for a relational value of 12px write rem(12)
3 | // Assumes $em-base is the font-size of
4 |
5 | @use 'sass:math';
6 | @function rem($pxval) {
7 | @if not unitless($pxval) {
8 | $pxval: strip-units($pxval);
9 | }
10 |
11 | $base: $em-base;
12 | @if not unitless($base) {
13 | $base: strip-units($base);
14 | }
15 | @return math.div($pxval, $base) * 1rem;
16 | }
17 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_shade.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Mixes a color with black.
4 | ///
5 | /// @param {Color} $color
6 | ///
7 | /// @param {number (Percentage)} $percent
8 | /// The amount of black to be mixed in.
9 | ///
10 | /// @example scss - Usage
11 | /// .element {
12 | /// background-color: shade(#ffbb52, 60%);
13 | /// }
14 | ///
15 | /// @example css - CSS Output
16 | /// .element {
17 | /// background-color: #664a20;
18 | /// }
19 | ///
20 | /// @return {Color}
21 |
22 | @function shade($color, $percent) {
23 | @return mix(#000, $color, $percent);
24 | }
25 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_strip-units.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 | @use 'sass:math';
3 |
4 | /// Strips the unit from a number.
5 | ///
6 | /// @param {number (With Unit)} $value
7 | ///
8 | /// @example scss - Usage
9 | /// $dimension: strip-units(10em);
10 | ///
11 | /// @example css - CSS Output
12 | /// $dimension: 10;
13 | ///
14 | /// @return {number (Unitless)}
15 |
16 | @function strip-units($value) {
17 | @return math.div($value, ($value * 0 + 1));
18 | }
19 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/functions/_tint.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Mixes a color with white.
4 | ///
5 | /// @param {Color} $color
6 | ///
7 | /// @param {number (Percentage)} $percent
8 | /// The amount of white to be mixed in.
9 | ///
10 | /// @example scss - Usage
11 | /// .element {
12 | /// background-color: tint(#6ecaa6, 40%);
13 | /// }
14 | ///
15 | /// @example css - CSS Output
16 | /// .element {
17 | /// background-color: #a8dfc9;
18 | /// }
19 | ///
20 | /// @return {Color}
21 |
22 | @function tint($color, $percent) {
23 | @return mix(#fff, $color, $percent);
24 | }
25 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/helpers/_gradient-positions-parser.scss:
--------------------------------------------------------------------------------
1 | @function _gradient-positions-parser($gradient-type, $gradient-positions) {
2 | @if $gradient-positions and
3 | ($gradient-type == linear) and
4 | (type-of($gradient-positions) != color)
5 | {
6 | $gradient-positions: _linear-positions-parser($gradient-positions);
7 | } @else if
8 | $gradient-positions and
9 | ($gradient-type == radial) and
10 | (type-of($gradient-positions) != color)
11 | {
12 | $gradient-positions: _radial-positions-parser($gradient-positions);
13 | }
14 | @return $gradient-positions;
15 | }
16 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/helpers/_radial-positions-parser.scss:
--------------------------------------------------------------------------------
1 | @function _radial-positions-parser($gradient-pos) {
2 | $shape-size: nth($gradient-pos, 1);
3 | $pos: nth($gradient-pos, 2);
4 | $shape-size-spec: _shape-size-stripper($shape-size);
5 |
6 | $pre-spec: unquote(if($pos, '#{$pos}, ', null))
7 | unquote(if($shape-size, '#{$shape-size},', null));
8 | $pos-spec: if($pos, 'at #{$pos}', null);
9 |
10 | $spec: '#{$shape-size-spec} #{$pos-spec}';
11 |
12 | // Add comma
13 | @if ($spec != ' ') {
14 | $spec: '#{$spec},';
15 | }
16 |
17 | @return $pre-spec $spec;
18 | }
19 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/helpers/_shape-size-stripper.scss:
--------------------------------------------------------------------------------
1 | @function _shape-size-stripper($shape-size) {
2 | $shape-size-spec: null;
3 | @each $value in $shape-size {
4 | @if ($value == 'cover') or ($value == 'contain') {
5 | $value: null;
6 | }
7 | $shape-size-spec: '#{$shape-size-spec} #{$value}';
8 | }
9 | @return $shape-size-spec;
10 | }
11 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/settings/_asset-pipeline.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// A global setting to enable or disable the `$asset-pipeline` variable for all functions that accept it.
4 | ///
5 | /// @type Bool
6 |
7 | $asset-pipeline: false !default;
8 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/settings/_prefixer.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Global variables to enable or disable vendor prefixes
4 |
5 | $prefix-for-webkit: true !default;
6 | $prefix-for-mozilla: true !default;
7 | $prefix-for-microsoft: true !default;
8 | $prefix-for-opera: true !default;
9 | $prefix-for-spec: true !default;
10 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/bourbon/settings/_px-to-em.scss:
--------------------------------------------------------------------------------
1 | $em-base: 16px !default;
2 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/neat/_neat-helpers.scss:
--------------------------------------------------------------------------------
1 | // Functions
2 | @import 'functions/private';
3 | @import 'functions/new-breakpoint';
4 |
5 | // Settings
6 | @import 'settings/grid';
7 | @import 'settings/visual-grid';
8 | @import 'settings/disable-warnings';
9 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/neat/_neat.scss:
--------------------------------------------------------------------------------
1 | // Neat 1.7.2
2 | // http://neat.bourbon.io
3 | // Copyright 2012-2015 thoughtbot, inc.
4 | // MIT License
5 |
6 | // Helpers
7 | @import 'neat-helpers';
8 |
9 | // Grid
10 | @import 'grid/private';
11 | @import 'grid/box-sizing';
12 | @import 'grid/omega';
13 | @import 'grid/outer-container';
14 | @import 'grid/span-columns';
15 | @import 'grid/row';
16 | @import 'grid/shift';
17 | @import 'grid/pad';
18 | @import 'grid/fill-parent';
19 | @import 'grid/media';
20 | @import 'grid/to-deprecate';
21 | @import 'grid/visual-grid';
22 | @import 'grid/display-context';
23 | @import 'grid/direction-context';
24 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/neat/grid/_box-sizing.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | @if $border-box-sizing == true {
4 | html {
5 | // http://bit.ly/1qk2tVR
6 | box-sizing: border-box;
7 | }
8 |
9 | * {
10 | &,
11 | &::after,
12 | &::before {
13 | box-sizing: inherit;
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/neat/grid/_fill-parent.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Forces the element to fill its parent container.
4 | ///
5 | /// @example scss - Usage
6 | /// .element {
7 | /// @include fill-parent;
8 | /// }
9 | ///
10 | /// @example css - CSS Output
11 | /// .element {
12 | /// width: 100%;
13 | /// box-sizing: border-box;
14 | /// }
15 |
16 | @mixin fill-parent() {
17 | width: 100%;
18 |
19 | @if $border-box-sizing == false {
20 | box-sizing: border-box;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/fec/fec/static/scss/vendor/neat/settings/_disable-warnings.scss:
--------------------------------------------------------------------------------
1 | @charset "UTF-8";
2 |
3 | /// Disable all deprecation warnings. Defaults to `false`. Set with a `!global` flag.
4 | ///
5 | /// @type Bool
6 |
7 | $disable-warnings: false !default;
8 |
9 | @mixin -neat-warn($message) {
10 | @if $disable-warnings == false {
11 | @warn "#{$message}";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/fec/fec/templates/partials/disclaimer.html:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/fec/fec/templates/partials/search-hero.html:
--------------------------------------------------------------------------------
1 | {% block content %}
2 |
3 |
4 |
5 |
Legal resources
6 |
Explore relevant statutes, regulations, Commission actions and court cases. Making these resources public clarifies campaign finance legal requirements.
7 |
8 |
9 | {% endblock %}
10 |
--------------------------------------------------------------------------------
/fec/fec/templates/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow: /
3 |
--------------------------------------------------------------------------------
/fec/fec/templates/uaa_client/login_error.html:
--------------------------------------------------------------------------------
1 | Login Error
2 | {% if error_code == 'authenticate_failed' %}
3 |
4 | Either you don't have permission to log in to this system, or
5 | an error occurred when trying to log you in.
6 |
7 | {% else %}
8 | Unfortunately, an error occurred when trying to log you in.
9 | Error code: {{ error_code }}
10 | {% endif %}
--------------------------------------------------------------------------------
/fec/fec/tests/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends": [
3 | "../../../.eslintrc"
4 | ],
5 | "env": {
6 | "browser": true,
7 | "es6": true,
8 | "jquery": true,
9 | "mocha": true,
10 | "node": true
11 | },
12 | "parser": "@babel/eslint-parser",
13 | "parserOptions": {
14 | "babelOptions": {
15 | "configFile": "./babel.config.json"
16 | }
17 | // "requireConfigFile": false,
18 | // "ecmaVersion": 2018,
19 | // "sourceType": "module"
20 | },
21 | "rules": {
22 | "import/order": "off"
23 | }
24 | // "globals": {
25 | // "$": false
26 | // }
27 | }
28 |
--------------------------------------------------------------------------------
/fec/fec/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/fec/tests/__init__.py
--------------------------------------------------------------------------------
/fec/fec/tests/fixtures/context.js:
--------------------------------------------------------------------------------
1 | export default {
2 | election: {
3 | cycle: '2016',
4 | office: 'house',
5 | state: 'AZ',
6 | stateFull: 'Arizona',
7 | district: '09'
8 | },
9 | timePeriod: '2015–2016'
10 | };
11 |
--------------------------------------------------------------------------------
/fec/fec/tests/js/analytics.js:
--------------------------------------------------------------------------------
1 | // TODO: Do we still need this test if we aren't calling sortQuery from anywhere else in the repo?
2 |
3 | import { expect } from 'chai';
4 | import { sortQuery } from '../../static/js/modules/analytics.js';
5 |
6 | describe('analytics', function() {
7 | it('sorts query parameters', function() {
8 | var query = {
9 | cycle: [2016, 2014],
10 | sort: 'name'
11 | };
12 | expect(sortQuery(query)).to.equal(
13 | 'cycle=2014&cycle=2016&sort=name'
14 | );
15 | });
16 | });
17 |
--------------------------------------------------------------------------------
/fec/fec/tests/js/babel.config.json:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["@babel/preset-env"]
3 | }
4 |
--------------------------------------------------------------------------------
/fec/fec/tests/js/draftail/setup.js:
--------------------------------------------------------------------------------
1 | import Enzyme from 'enzyme';
2 | import Adapter from 'enzyme-adapter-react-16';
3 |
4 | Enzyme.configure({ adapter: new Adapter() });
5 |
--------------------------------------------------------------------------------
/fec/fec/utils.py:
--------------------------------------------------------------------------------
1 | """Custom SASS compiler that fixes paths for relative includes.
2 | From https://github.com/django-compressor/django-compressor/issues/226.
3 | """
4 | from compressor.filters.css_default import CssAbsoluteFilter
5 | from django_libsass import SassCompiler
6 |
7 |
8 | class PatchedSCSSCompiler(SassCompiler):
9 | def input(self, **kwargs):
10 | content = super(PatchedSCSSCompiler, self).input(**kwargs)
11 | kwargs.setdefault('filename', self.filename)
12 | return CssAbsoluteFilter(content).input(**kwargs)
13 |
--------------------------------------------------------------------------------
/fec/fec/wagtail_npm_dependencies/ace-builds:
--------------------------------------------------------------------------------
1 | ../../../node_modules/ace-builds/
--------------------------------------------------------------------------------
/fec/fec/wagtail_npm_dependencies/jquery:
--------------------------------------------------------------------------------
1 | ../../../node_modules/jquery
--------------------------------------------------------------------------------
/fec/fec/wsgi.py:
--------------------------------------------------------------------------------
1 | """
2 | WSGI config for fec project.
3 |
4 | It exposes the WSGI callable as a module-level variable named ``application``.
5 |
6 | For more information on this file, see
7 | https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/
8 | """
9 |
10 | import os
11 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'fec.settings.production')
12 |
13 | from django.core.wsgi import get_wsgi_application # noqa: E402
14 |
15 | from fec.settings.env import env # noqa E402
16 |
17 | application = get_wsgi_application()
18 |
--------------------------------------------------------------------------------
/fec/home/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/home/__init__.py
--------------------------------------------------------------------------------
/fec/home/migrations/0021_merge.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-09-09 23:23
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0019_auto_20160907_2152'),
12 | ('home', '0020_auto_20160909_0139'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0023_remove_presslandingpage_feed_intro.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-09-29 22:20
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0022_auto_20160923_0004'),
12 | ]
13 |
14 | operations = [
15 | migrations.RemoveField(
16 | model_name='presslandingpage',
17 | name='feed_intro',
18 | ),
19 | ]
20 |
--------------------------------------------------------------------------------
/fec/home/migrations/0025_merge.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-10-04 16:19
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0022_auto_20160921_2230'),
12 | ('home', '0024_presslandingpage_feed_intro'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0026_auto_20161004_1620.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-10-04 16:20
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0025_merge'),
12 | ]
13 |
14 | operations = [
15 | migrations.RemoveField(
16 | model_name='presslandingpage',
17 | name='digest_intro',
18 | ),
19 | migrations.RemoveField(
20 | model_name='presslandingpage',
21 | name='release_intro',
22 | ),
23 | ]
24 |
--------------------------------------------------------------------------------
/fec/home/migrations/0028_merge.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.10 on 2016-10-06 17:23
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0025_auto_20161006_1415'),
12 | ('home', '0027_auto_20161004_1620'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0030_pressreleasepage_formatted_title.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-12-01 19:20
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0029_auto_20161107_0304'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='pressreleasepage',
17 | name='formatted_title',
18 | field=models.CharField(blank=True, help_text='Use if you need italics in the title', max_length=255, null=True),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0031_auto_20161201_2123.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-12-01 21:23
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0030_pressreleasepage_formatted_title'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameField(
16 | model_name='pressreleasepage',
17 | old_name='formatted_title',
18 | new_name='rich_title',
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0032_auto_20161201_2124.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-12-01 21:24
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0031_auto_20161201_2123'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameField(
16 | model_name='pressreleasepage',
17 | old_name='rich_title',
18 | new_name='formatted_title',
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0033_auto_20161201_2126.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.9 on 2016-12-01 21:26
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0032_auto_20161201_2124'),
12 | ]
13 |
14 | operations = [
15 | migrations.AlterField(
16 | model_name='pressreleasepage',
17 | name='formatted_title',
18 | field=models.CharField(blank=True, default='', help_text='Use if you need italics in the title. e.g. Italicized words ', max_length=255, null=True),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0034_pressreleasepage_homepage_pin.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-16 01:36
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0033_auto_20161201_2126'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='pressreleasepage',
17 | name='homepage_pin',
18 | field=models.BooleanField(default=False),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0035_pressreleasepage_homepage_hide.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-16 01:37
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0034_pressreleasepage_homepage_pin'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='pressreleasepage',
17 | name='homepage_hide',
18 | field=models.BooleanField(default=False),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0035_recordpage_monthly_issue.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-21 19:23
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0034_auto_20161221_1920'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='recordpage',
17 | name='monthly_issue',
18 | field=models.CharField(blank=True, default='', max_length=255),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0037_recordpage_monthly_issue_url.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-23 15:54
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0036_auto_20161221_2007'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='recordpage',
17 | name='monthly_issue_url',
18 | field=models.CharField(blank=True, default='', max_length=255),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0038_merge_20161223_1820.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-23 18:20
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0037_recordpage_monthly_issue_url'),
12 | ('home', '0037_auto_20161216_0222'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0042_auto_20161227_1526.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-27 15:26
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0041_auto_20161227_1524'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameField(
16 | model_name='aboutlandingpage',
17 | old_name='org_intro',
18 | new_name='leadership_intro',
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0042_auto_20161229_2001.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-29 20:01
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0041_enforcementpage'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameModel(
16 | old_name='LegalResourcesLanding',
17 | new_name='LegalResourcesLandingPage',
18 | ),
19 | ]
20 |
--------------------------------------------------------------------------------
/fec/home/migrations/0043_auto_20161227_1538.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-27 15:38
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0042_auto_20161227_1526'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameField(
16 | model_name='aboutlandingpage',
17 | old_name='org_report_intro',
18 | new_name='reports_intro',
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0043_merge_20161230_0122.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2016-12-30 01:22
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0038_merge_20161223_1820'),
12 | ('home', '0042_auto_20161229_2001'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0045_merge_20170105_0036.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-01-05 00:36
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0044_auto_20170105_0006'),
12 | ('home', '0044_aboutlandingpage_option_blocks'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0048_auto_20170105_0049.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-01-05 00:49
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0047_auto_20170105_0044'),
12 | ]
13 |
14 | operations = [
15 | migrations.AlterField(
16 | model_name='resourcepage',
17 | name='intro',
18 | field=models.CharField(max_length=1000, null=True),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0049_auto_20170105_0052.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-01-05 00:52
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 | import wagtail.blocks
7 | import wagtail.fields
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 | ('home', '0048_auto_20170105_0049'),
14 | ]
15 |
16 | operations = [
17 | migrations.AlterField(
18 | model_name='resourcepage',
19 | name='intro',
20 | field=wagtail.fields.StreamField((('body', wagtail.blocks.RichTextBlock()),), null=True),
21 | ),
22 | ]
23 |
--------------------------------------------------------------------------------
/fec/home/migrations/0050_auto_20170105_0055.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-01-05 00:55
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 | import wagtail.blocks
7 | import wagtail.fields
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 | ('home', '0049_auto_20170105_0052'),
14 | ]
15 |
16 | operations = [
17 | migrations.AlterField(
18 | model_name='resourcepage',
19 | name='intro',
20 | field=wagtail.fields.StreamField((('paragraph', wagtail.blocks.RichTextBlock()),), null=True),
21 | ),
22 | ]
23 |
--------------------------------------------------------------------------------
/fec/home/migrations/0056_merge_20170127_1735.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-01-27 17:35
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0055_tipsfortreasurerspage'),
12 | ('home', '0055_auto_20170123_2232'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0059_auto_20170209_0151.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-02-09 01:51
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0058_documentfeedpage_documentpage'),
12 | ]
13 |
14 | operations = [
15 | migrations.AlterField(
16 | model_name='documentpage',
17 | name='size',
18 | field=models.CharField(blank=True, max_length=255, null=True),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0061_merge_20170210_2230.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-02-10 22:30
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0060_auto_20170209_2030'),
12 | ('home', '0058_auto_20170210_2136'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0066_remove_documentpage_file_name.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-02-24 15:03
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0065_auto_20170221_0345'),
12 | ]
13 |
14 | operations = [
15 | migrations.RemoveField(
16 | model_name='documentpage',
17 | name='file_name',
18 | ),
19 | ]
20 |
--------------------------------------------------------------------------------
/fec/home/migrations/0067_documentpage_year_only.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-03-07 23:20
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0066_remove_documentpage_file_name'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='documentpage',
17 | name='year_only',
18 | field=models.BooleanField(default=False),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0068_merge_20170310_0002.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-03-10 00:02
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0067_documentpage_year_only'),
12 | ('home', '0067_agendapage'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0070_merge_20170322_1940.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-03-22 19:40
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0069_auto_20170316_0006'),
12 | ('home', '0069_auto_20170318_0005'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0071_agendapage_imported_html.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.6 on 2017-03-23 00:59
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 | import wagtail.blocks
7 | import wagtail.fields
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 | ('home', '0070_merge_20170322_1940'),
14 | ]
15 |
16 | operations = [
17 | migrations.AddField(
18 | model_name='agendapage',
19 | name='imported_html',
20 | field=wagtail.fields.StreamField((('html_block', wagtail.blocks.RawHTMLBlock()),), blank=True, null=True),
21 | ),
22 | ]
23 |
--------------------------------------------------------------------------------
/fec/home/migrations/0074_merge_20170330_2316.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-03-30 23:16
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0073_auto_20170330_1915'),
12 | ('home', '0073_auto_20170330_1840'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0075_merge_20170331_0608.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-03-31 06:08
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0073_auto_20170329_2112'),
12 | ('home', '0074_auto_20170330_2222'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0076_merge_20170331_1633.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-03-31 16:33
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0074_merge_20170330_2316'),
12 | ('home', '0075_auto_20170330_2354'),
13 | ('home', '0075_merge_20170331_0608'),
14 | ]
15 |
16 | operations = [
17 | ]
18 |
--------------------------------------------------------------------------------
/fec/home/migrations/0082_merge_20170504_2212.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.6 on 2017-05-04 22:12
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0081_genericupdate'),
12 | ('home', '0081_auto_20170501_2216'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0082_merge_20170505_0025.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-05-05 00:25
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0079_auto_20170414_0021'),
12 | ('home', '0081_genericupdate'),
13 | ('home', '0081_auto_20170501_2216'),
14 | ]
15 |
16 | operations = [
17 | ]
18 |
--------------------------------------------------------------------------------
/fec/home/migrations/0084_merge_20170509_0021.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-05-09 00:21
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0083_auto_20170506_0059'),
12 | ('home', '0083_auto_20170504_2215'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0085_auto_20170510_1928.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-05-10 19:28
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0084_merge_20170509_0021'),
12 | ]
13 |
14 | operations = [
15 | migrations.RenameModel(
16 | old_name='AgendaPage',
17 | new_name='MeetingPage',
18 | ),
19 | ]
20 |
--------------------------------------------------------------------------------
/fec/home/migrations/0087_meetingpage_homepage_hide.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-05-19 21:38
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0086_auto_20170519_1726'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='meetingpage',
17 | name='homepage_hide',
18 | field=models.BooleanField(default=False),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/fec/home/migrations/0091_merge_20170811_2035.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-08-11 20:35
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0090_auto_20170811_1840'),
12 | ('home', '0088_folder'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0091_merge_20170814_0055.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-08-14 00:55
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0088_folder'),
12 | ('home', '0090_auto_20170811_1840'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0093_merge_20170814_2229.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-08-14 22:29
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0092_auto_20170814_0109'),
12 | ('home', '0091_merge_20170811_2035'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0094_auto_20170829_1640.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 |
3 | # Generated by Django 1.10.7 on 2017-08-25 10:52
4 |
5 | from __future__ import unicode_literals
6 |
7 | from django.db import migrations
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 |
14 | ('home', '0093_merge_20170814_2229'),
15 | ('home', '0091_merge_20170814_0055'),
16 | ]
17 |
18 | operations = [
19 | migrations.RemoveField(
20 | model_name='folder',
21 | name='page_ptr',
22 | ),
23 | migrations.DeleteModel(
24 | name='Folder',
25 | ),
26 | ]
27 |
--------------------------------------------------------------------------------
/fec/home/migrations/0096_merge_20170907_2031.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.7 on 2017-09-07 20:31
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0095_auto_20170831_2013'),
12 | ('home', '0095_meetingpage_sunshine_act_doc_upld'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0097_auto_20170929_2329.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.8 on 2017-09-25 19:52
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 | from django.db import migrations, models
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 | ('wagtailforms', '0003_capitalizeverbose'),
14 | ('wagtailcore', '0032_add_bulk_delete_page_permission'),
15 | ('wagtailredirects', '0005_capitalizeverbose'),
16 | ('wagtailsearchpromotions', '0002_capitalizeverbose'),
17 | ('home', '0096_merge_20170907_2031'),
18 | ]
19 |
20 | operations = [
21 | ]
--------------------------------------------------------------------------------
/fec/home/migrations/0099_merge_20171109_1546.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.4 on 2017-11-09 20:46
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('home', '0097_auto_20170925_1952'),
12 | ('home', '0098_auto_20170930_0054'),
13 | ]
14 |
15 | operations = [
16 | ]
17 |
--------------------------------------------------------------------------------
/fec/home/migrations/0123_merge_20220308_1116.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 3.1.14 on 2022-03-08 16:16
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 |
8 | dependencies = [
9 | ('home', '0122_auto_20220303_1357'),
10 | ('home', '0122_auto_20220302_2114'),
11 | ]
12 |
13 | operations = [
14 | ]
15 |
--------------------------------------------------------------------------------
/fec/home/migrations/0128_merge_0125_officepage_0126_auto_20230123_1927.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 3.2.18 on 2023-05-03 15:34
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 |
8 | dependencies = [
9 | ('home', '0125_officepage'),
10 | ('home', '0127_auto_20230123_1927'),
11 | ]
12 |
13 | operations = [
14 | ]
15 |
--------------------------------------------------------------------------------
/fec/home/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/home/migrations/__init__.py
--------------------------------------------------------------------------------
/fec/home/templates/blocks/audit.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load audit_search %}
3 |
4 | {% search_audits %}
5 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/button.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 | {% if self.internal_page %}
4 | {{ self.text }}
5 | {% else %}
6 | {{ self.text }}
7 | {% endif %}
8 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/careers.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load open_jobs %}
3 |
4 | {% get_jobs %}
--------------------------------------------------------------------------------
/fec/home/templates/blocks/commissioners.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load commissioners %}
3 |
4 |
8 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/custom_table.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 | {% for block in self.custom_table %}
4 |
5 | {% if block.block_type == "title" %}
6 | {{ block }}
7 |
8 | {% elif block.block_type == "table_intro" %}
9 | {{ block }}
10 |
11 | {% elif block.block_type == "table" %}
12 | {{ block }}
13 |
14 | {% elif block.block_type == "footnote" %}
15 |
16 |
17 | {% endif %}
18 |
19 | {% endfor %}
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/disabled-page-links.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 |
4 | {{ self }}
5 |
6 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/document-list.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load filters %}
3 |
4 |
5 | {% for block in self %}
6 |
7 |
{{ block.title }}
8 | {% if block.document %}
9 |
{{ block.document.title}} | {{ block.document.url | get_file_type }}
10 | {% elif block.external_document %}
11 |
{{ block.title }} | {{ block.external_document | get_file_type }}
12 | {% endif %}
13 |
14 | {% endfor %}
15 |
16 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/embed-info-message.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 | {{ self.text | richtext}}
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/embed-table.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 |
4 |
5 |
6 | {{ self.text | richtext}}
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/example-forms.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load wagtailimages_tags %}
3 |
4 | {{ self.title }}
5 |
6 | {% for block in self.forms %}
7 |
13 | {% endfor %}
14 |
15 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/example-image.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load wagtailimages_tags %}
3 |
4 | {% if self.title %}
5 | {{ self.title }}
6 | {% endif %}
7 |
8 |
9 | {% image self.image original class="example__image"%}
10 |
11 |
12 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/example-paragraph.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 | {{ self.title }}
4 |
5 |
{{ self.paragraph }}
6 |
7 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/page-links.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 |
3 |
4 | {{ self }}
5 |
6 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/related-media.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load wagtailimages_tags %}
3 | {% load static %}
4 |
5 |
6 |
7 | {% for blocks in self.media %}
8 | {% with blocks.value as blocks %}
9 | {% for block in blocks %}
10 |
11 | {% image block.image original %}
12 |
{{ block.media_type }}
13 |
{{ block.text }}
14 |
15 | {% endfor %}
16 | {% endwith %}
17 | {% endfor %}
18 |
19 |
20 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/reporting-dates-table-block.html:
--------------------------------------------------------------------------------
1 | {% load table_block_tags %}
2 | {% load wagtailcore_tags %}
3 |
4 |
5 | {% for row in self.table.data %}
6 | {% if forloop.first %}
7 |
8 | {% for cell in row %}
9 | {{ cell | safe }}
10 | {% endfor %}
11 |
12 | {% else %}
13 |
14 | {% for cell in row %}
15 | {{ cell | safe }}
16 | {% endfor %}
17 |
18 | {% endif %}
19 | {% endfor %}
20 |
21 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/section-documents.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load wagtailimages_tags %}
3 |
4 |
5 | {% for block in self %}
6 |
14 | {% endfor %}
15 |
16 |
--------------------------------------------------------------------------------
/fec/home/templates/blocks/simple-document-list.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load filters %}
3 |
4 | {% for block in self %}
5 |
6 | {{ block.title}} | {{ block.document.url | get_file_type}}
7 |
8 | {% endfor %}
--------------------------------------------------------------------------------
/fec/home/templates/blocks/simple-document.html:
--------------------------------------------------------------------------------
1 | {% load wagtailcore_tags %}
2 | {% load filters %}
3 |
4 |
5 |
6 | {{ self.title}} | {{ self.document.url | get_file_type}}
7 |
8 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/document-feed.html:
--------------------------------------------------------------------------------
1 | {% comment %}
2 | This partial is used by the document_feed inclusion tag in document_feed.py
3 | {% endcomment %}
4 |
5 | {% for document in documents %}
6 | {% include 'partials/document.html' with document=document category=category%}
7 | {% endfor %}
8 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/home-page-news.html:
--------------------------------------------------------------------------------
1 | {% load filters %}
2 |
15 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/legal-news.html:
--------------------------------------------------------------------------------
1 | {% load filters %}
2 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/oig-most-recent.html:
--------------------------------------------------------------------------------
1 | {% load filters %}
2 | {# List to display the most recent OIG report items #}
3 |
11 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/press-feed.html:
--------------------------------------------------------------------------------
1 | {% comment %}
2 | This partial is used by the press_updates inclusion tag in updates.py
3 | {% endcomment %}
4 |
5 | {% for update in updates %}
6 | {% include 'partials/update.html' with update=update show_tag=False%}
7 | {% endfor %}
8 |
--------------------------------------------------------------------------------
/fec/home/templates/partials/tips-for-treasurers.html:
--------------------------------------------------------------------------------
1 | {% load filters %}
2 |
3 | {% for tip in tips_for_treasurers %}
4 |
5 | {% formatted_title tip %}
6 | {{ tip.date|date:'F j, Y' }}
7 |
8 | {% endfor %}
9 |
10 |
--------------------------------------------------------------------------------
/fec/home/templates/purgecss-homepage/hero.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
Protecting the integrity of the campaign finance process
9 |
More about the FEC
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/fec/home/templatetags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/home/templatetags/__init__.py
--------------------------------------------------------------------------------
/fec/home/templatetags/audit_search.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from data import constants
3 |
4 | register = template.Library()
5 |
6 |
7 | @register.inclusion_tag('partials/audit-search.html')
8 | def search_audits():
9 | findings = [item for item in constants.audit_primary_categories_options]
10 | return {'findings': findings}
11 |
--------------------------------------------------------------------------------
/fec/home/templatetags/author_groups.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from home.models import Author
3 |
4 | register = template.Library()
5 |
6 | """"
7 | Inside author-list.html, the this templatetag is called with an argument wich maps to
8 | the group var. - In template: {% author_group first_author.author.name %})
9 | The group var then maps to an author_group of the same name in the Author model.
10 | """
11 |
12 |
13 | @register.inclusion_tag('partials/author-groups.html')
14 | def author_group(group):
15 | authors = Author.objects.filter(author_group__exact=group)
16 | return {
17 | 'authors': authors,
18 | }
19 |
--------------------------------------------------------------------------------
/fec/home/templatetags/elections_lookup.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from data import constants
3 |
4 | from django.conf import settings
5 | from data import utils
6 |
7 | register = template.Library()
8 |
9 |
10 | @register.inclusion_tag('partials/elections-lookup.html')
11 | def elections_lookup(request):
12 |
13 | cycle = constants.DEFAULT_ELECTION_YEAR
14 | cycles = utils.get_cycles(cycle + 4)
15 | FEATURES = settings.FEATURES
16 | states = constants.states
17 |
18 | return {'parent': 'data', 'cycles': cycles, 'cycle': cycle, 'states': states, 'FEATURES': FEATURES}
19 |
--------------------------------------------------------------------------------
/fec/home/templatetags/legal_news.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from home.models import RecordPage
3 |
4 | register = template.Library()
5 |
6 |
7 | @register.inclusion_tag('partials/legal-news.html')
8 | def legal_news_feed():
9 |
10 | records = RecordPage.objects.live().filter(homepage_hide=False, homepage_pin=False).order_by('-date')[:4]
11 |
12 | return {
13 | 'records': records
14 | }
15 |
--------------------------------------------------------------------------------
/fec/home/templatetags/tips_for_treasurers.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from home.models import TipsForTreasurersPage
3 |
4 | register = template.Library()
5 |
6 |
7 | @register.inclusion_tag('partials/tips-for-treasurers.html')
8 | def tips_for_treasurers_feed():
9 | # get one of each update type (not featured)
10 |
11 | tips_for_treasurers = TipsForTreasurersPage.objects.live().order_by('-date')[:4]
12 |
13 | return {
14 | 'tips_for_treasurers': tips_for_treasurers
15 | }
16 |
--------------------------------------------------------------------------------
/fec/home/templatetags/updates.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | from home.models import DigestPage
3 | from home.models import PressReleasePage
4 |
5 | register = template.Library()
6 |
7 |
8 | @register.inclusion_tag('partials/press-feed.html')
9 | def press_releases():
10 | press_releases = PressReleasePage.objects.live().order_by('-date')[:3]
11 | return {'updates': press_releases}
12 |
13 |
14 | @register.inclusion_tag('partials/press-feed.html')
15 | def weekly_digests():
16 | digests = DigestPage.objects.live().order_by('-date')[:3]
17 | return {'updates': digests}
18 |
--------------------------------------------------------------------------------
/fec/home/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/home/tests/__init__.py
--------------------------------------------------------------------------------
/fec/legal/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/legal/__init__.py
--------------------------------------------------------------------------------
/fec/legal/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin # noqa: F401
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/fec/legal/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class LegalConfig(AppConfig):
5 | name = 'legal'
6 |
--------------------------------------------------------------------------------
/fec/legal/templates/partials/legal-disclaimer.jinja:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/fec/manage.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | import os
3 | import sys
4 |
5 | if __name__ == "__main__":
6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "fec.settings")
7 |
8 | from django.core.management import execute_from_command_line
9 |
10 | execute_from_command_line(sys.argv)
11 |
--------------------------------------------------------------------------------
/fec/search/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/search/__init__.py
--------------------------------------------------------------------------------
/fec/search/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fecgov/fec-cms/c37a1f9d1c4403cd31b945625114f4b3abecea45/fec/search/tests/__init__.py
--------------------------------------------------------------------------------
/manifest_dev.yml:
--------------------------------------------------------------------------------
1 | ---
2 | applications:
3 | - name: cms
4 | instances: 1
5 | memory: 512M
6 | disk_quota: 1G
7 | stack: cflinuxfs4
8 | buildpacks:
9 | - python_buildpack
10 | routes:
11 | - route: fec-dev-cms.apps.internal
12 | services:
13 | - cms-creds-dev
14 | - fec-creds-dev
15 | - fec-dev-cms
16 | - content-s3
17 | env:
18 | DISABLE_COLLECTSTATIC: 1
19 | DJANGO_SETTINGS_MODULE: fec.settings.production
20 | FEC_API_URL: "https://fec-dev-api.app.cloud.gov"
21 | FEC_APP_URL: "/data"
22 | FEC_CMS_DEBUG: false
23 | FEC_CMS_ENVIRONMENT: dev
24 |
--------------------------------------------------------------------------------
/manifest_prod.yml:
--------------------------------------------------------------------------------
1 | ---
2 | applications:
3 | - name: cms
4 | instances: 6
5 | memory: 1.5G
6 | disk_quota: 1G
7 | stack: cflinuxfs4
8 | buildpacks:
9 | - python_buildpack
10 | routes:
11 | - route: fec-prod-cms.apps.internal
12 | services:
13 | - cms-creds-prod
14 | - fec-creds-prod
15 | - fec-cms-prod
16 | - content-s3
17 | env:
18 | DISABLE_COLLECTSTATIC: 1
19 | DJANGO_SETTINGS_MODULE: fec.settings.production
20 | FEC_API_URL: "https://api.open.fec.gov"
21 | FEC_APP_URL: "/data"
22 | FEC_CMS_DEBUG: false
23 | FEC_CMS_ENVIRONMENT: prod
24 |
--------------------------------------------------------------------------------
/manifest_stage.yml:
--------------------------------------------------------------------------------
1 | ---
2 | applications:
3 | - name: cms
4 | instances: 1
5 | memory: 512M
6 | disk_quota: 1G
7 | stack: cflinuxfs4
8 | buildpacks:
9 | - python_buildpack
10 | routes:
11 | - route: fec-stage-cms.apps.internal
12 | services:
13 | - cms-creds-stage
14 | - fec-creds-stage
15 | - fec-stage-cms
16 | - content-s3
17 | env:
18 | DISABLE_COLLECTSTATIC: 1
19 | DJANGO_SETTINGS_MODULE: fec.settings.production
20 | FEC_API_URL: https://api-stage.open.fec.gov
21 | FEC_APP_URL: '/data'
22 | FEC_CMS_DEBUG: false
23 | FEC_CMS_ENVIRONMENT: stage
24 |
--------------------------------------------------------------------------------
/pytest.ini:
--------------------------------------------------------------------------------
1 | # The flake8 settings here are used by `/pytest` and `/pytest --linting`
2 |
3 | [pytest]
4 | addopts = --cov=fec fec --cov-report term-missing -ra
5 | DJANGO_SETTINGS_MODULE = fec.settings.dev
6 |
7 | norecursedirs = migrations wagtail_npm_dependencies static
8 | # norecursedirs are to keep pytest linting from checking
9 | # auto-generated code and code that isn't ours
10 |
--------------------------------------------------------------------------------
/requirements-dev.txt:
--------------------------------------------------------------------------------
1 | locust==2.29.1
2 |
--------------------------------------------------------------------------------
/runtime.txt:
--------------------------------------------------------------------------------
1 | python-3.11.x
2 |
--------------------------------------------------------------------------------