Saikuro Results

Saikuro analyzes ruby code for cyclomatic complexity.

Analyzed Methods

Method Name Complexity # Lines
AdminHelper#mandatory_field 39 172
ArchivePetitionJob#perform 19 105
ConstituencyPetitionJournal::#for 17 55
CountryPetitionJournal::#for 15 47
PetitionCreator#validate_creator 13 25
#search 11 40
CacheHelper::CacheKey::Dependencies::Keys#for 11 29
Archived::Signature::#search 10 38
ArchiveSignaturesJob#perform 10 63
Invalidation#matching_signatures 10 13
UpdateSignatureCountsJob#perform 8 43
RateLimit#exceeded? 8 13
TrendingIpsByPetitionJob#perform 8 21
AutoLinkHelper::AutoLinker#auto_link_urls 8 30
DeprecatedAttributes#deprecate_attribute 8 20
TrendingDomainsByPetitionJob#perform 8 21
PageTitleHelper::PageTitleBuilder#options 7 21
PetitionCreator#validate_petition 7 10
Admin#create 7 17
PackageBuilder#track_progress 6 27
AutoLinkHelper::AutoLinker#auto_link_email_addresses 6 17
BackfillConstituenciesJob#perform 6 18
FlashRender#render 6 16
PetitionCreator#save 6 34
Statistics::#moderation 6 30
AdminUser#update_with_password 6 18
Admin#update 6 20
Invalidation#invalidate! 6 21
ActiveSupport::Cache::AtomicDalliStore#ttl_set 5 6
CacheHelper::CacheKey::Dependencies::Keys#cache_key_for 5 10
HealthCheck#database_persistence 5 7
Admin#search_params 5 14
#unsubscribe! 5 14
Archived::Signature::#unsubscribe! 5 14
PackageBuilder#deploy! 5 13
BackfillCanonicalEmailsJob#perform 5 15
FlashI18n#redirect_to 5 14
Constituency::ApiQuery#parse 5 20
RateLimit#threshold_reached? 5 7
Admin#update 5 12
PetitionMailer#i18n_options 5 18
AutoLinkHelper::AutoLinker#generate 5 13
ActiveSupport::Cache::AtomicDalliStore#fetch 5 18
EmailReminder#self.threshold_email_reminder 5 17
BackfillSignatureUuidsJob#perform 5 15
ActiveSupport::Cache::AtomicDalliStore#ttl_get 5 6
ActiveSupport::Cache::AtomicDalliStore#ttl_add 5 6
ActiveSupport::Cache::AtomicDalliStore#ttl_delete 5 6
Admin#create 4 12
Admin#scope 4 12
#find_by_postcode 4 14
Admin#update 4 8
Admin#create 4 17
ArchivePetitionsJob#perform 4 9
Admin#update 4 17
CacheHelper::CacheKey::Dependencies#for 4 9
Admin#update 4 8
#trending_ips_by_petition 4 18
Admin#update 4 8
ApplicationHelper#referer_url 4 7
Admin#create 4 8
PetitionsController#create 4 8
#in_moderation 4 10
ActiveSupport::Cache::AtomicDalliStore#read 4 6
StopPetitionsEarlyJob#send_notification 4 9
Admin#create 4 8
PackageBuilder#notify_appsignal 4 22
Admin#scope 4 12
EmailValidator#validate_each 4 9
Admin#create 4 17
Domain#local 4 10
ArchivedPetitionHelper#petition_duration_to_words 4 12
Admin#update 4 8
PetitionCountJob#perform 4 8
FeedbackController#create 4 9
Browseable::Search#inspect 4 9
Admin#update 4 17
GovernmentResponse#default_responded_on 4 8
SignatureLogs#fetch_validate_events 4 16
RateLimit#convert_glob 4 8
Task#retry_lock 4 14
SignatureLogs#overlapping? 4 6
Constituency::ApiQuery#fetch 4 13
Archived::DebateOutcome#validate_commons_image_dimensions 4 22
Admin#update 4 8
SignaturesController#confirm 4 4
Archived::PetitionMailer#i18n_options 4 14
DebateOutcome#validate_commons_image_dimensions 4 22
SponsorsController#send_sponsor_support_notification_email_to_petition_owner 4 8
Invalidation#percent_completed 4 6
Admin#create 4 8
SearchHelper#paginate 4 14
ApiPaginationLinksPresenter#prev_url 4 13
Archived::Signature#unsubscribe! 3 8
Admin#update 3 13
Admin#update 3 13
Admin#update 3 13
PetitionsController#redirect_to_archived_petition_if_archived 3 4
RefreshConstituencyPartyJob#parse 3 13
RefreshConstituencyPartyJob#load_members 3 11
RefreshConstituencyPartyJob#perform 3 8
EmailReminder#self.special_resend_of_signature_email_validation 3 15
SponsorsController#send_email_to_petition_signer 3 8
SponsorsController#retrieve_petition 3 10
FetchCountryRegisterJob#perform 3 12
Admin#index 3 5
Admin#update 3 13
RateLimiting#perform 3 16
Admin#show 3 8
Admin#update 3 13
AdminHubHelper#summary_class_name_for_in_moderation 3 8
DeletePetitionsJob#perform 3 8
FlashI18n#translate_flash 3 9
DateTimeHelper#api_date_format 3 8
RejectionHelper#rejection_reasons 3 8
Invalidation#date_range_scope 3 10
ApplicationController#url_without_format 3 6
EmailAllPetitionSignatories#enqueue_send_email_jobs 3 6
SignaturesController#send_email_to_petition_signer 3 8
SignaturesController#expired_form_requests 3 4
SignaturesController#signed 3 8
Task#run 3 7
EmailDelivery#mailer 3 9
NotifyEveryoneOfModerationDecisionJob#perform 3 9
QuietLogger#call 3 6
Browseable::Search#new_params 3 7
Admin#update 3 13
CountryPetitionJournal::#reset_signature_counts_for 3 7
Browseable::Facets#facet_count_query 3 8
CountryPetitionJournal::#increment_signature_counts_for 3 5
Browseable::Facets#slice 3 4
SocialMetaHelper#twitter_card_tag 3 8
Domain::#candidates 3 2
Domain::#normalize 3 8
HomeHelper#trending_petitions 3 5
SocialMetaHelper#open_graph_tag 3 8
Admin#index 3 5
StopPetitionsEarlyJob#perform 3 11
DebateOutcomeHelper#debate_outcome_links 3 9
PackageBuilder#deployment_config_name 3 11
Admin#count 3 10
Admin#cancel 3 10
Admin#destroy 3 10
Admin#edit 3 8
PackageBuilder#build! 3 18
ConstituencyPetitionJournal::#reset_signature_counts_for 3 7
ConstituencyPetitionJournal::#increment_signature_counts_for 3 5
AdminUser#destroy 3 8
#validated 3 5
#validate! 3 8
#subscribe! 3 8
#trending_domains_by_petition 3 12
GeoipLookup::ClassMethods#country_name_for 3 4
GeoipLookup::ClassMethods#iso_code_for 3 4
GeoipLookup#ip_location 3 8
#invalidate! 3 8
FormHelper#form_row 3 5
HealthCheck#checkup 3 9
ImportConstituenciesJob#perform 3 12
Taggable#tags_exist 3 4
#destroy! 3 8
Archived::GovernmentResponse#default_responded_on 3 6
PetitionHelper#signatures_threshold_percentage 3 9
ModerationDelay#attributes= 3 8
PetitionsCSVPresenter#render 3 8
Archived::Signature::#subscribe! 3 8
EnqueuePetitionStatisticsUpdatesJob#perform 3 6
Archived::Signature::#destroy! 3 8
Admin#start 3 10
FetchCountryRegisterJob#fetch_register 2 5
Admin#edit 2 4
DateTimeHelper#waiting_for_in_words 2 8
ApplicationController#site_protected? 2 2
Invalidation#applied_conditions 2 2
Archived::Signature::#column_name_for 2 4
RejectionHelper#rejection_description 2 4
Admin#new 2 4
RejectionHelper#rejection_reason 2 4
SearchHelper#petition_result_path 2 6
DateTimeHelper#date_time_format 2 6
Invalidation#domain_scope 2 6
Invalidation#email_scope 2 6
#column_name_for 2 4
SearchHelper#filtered_petition_count 2 4
Invalidation#name_scope 2 6
DebateOutcome#debate_state 2 2
SponsorsController#verify 2 8
Site::#constraints_for_public 2 6
SponsorsController#retrieve_signature 2 7
AdminUserSession#failed_login_count 2 2
ApplicationController#authenticate 2 4
AdminUserSession#time_remaining 2 2
Site::#constraints_for_moderation 2 6
Invalidation#start! 2 5
Invalidation#count! 2 4
SponsorsController#build_signature 2 6
PetitionCSVPresenter#notes 2 2
Invalidation#cancel! 2 4
Admin#unsubscribe 2 6
Admin#bulk_unsubscribe 2 8
Admin#subscribe 2 6
AutoLinkHelper::AutoLinker#sanitize? 2 3
CacheHelper::CacheKey::Dependencies#csv_cache 2 7
SignaturesController#redirect_to_petition_page_if_closed_for_signing 2 4
SignaturesController#redirect_to_petition_page_if_closed 2 4
SignaturesController#redirect_to_petition_page_if_rejected 2 4
AutoLinkHelper::AutoLinker#sanitized_text 2 2
Admin#bulk_subscribe 2 8
SignaturesController#build_signature 2 6
SignaturesController#retrieve_signature 2 7
SponsorsController#redirect_to_new_sponsor_page_if_validated 2 4
SignaturesController#verify_unsubscribe_token 2 4
SignaturesController#verify_signed_token 2 4
SignaturesController#verify_token 2 4
Admin#destroy 2 6
SignaturesController#expire_signed_tokens 2 2
Admin#bulk_destroy 2 8
Admin#index 2 4
EmailAllPetitionSignatories#perform 2 8
SponsorsController#redirect_to_petition_page_if_moderated 2 4
SponsorsController#redirect_to_moderation_info_page_if_sponsored 2 4
Admin#update 2 6
EmailReminder#self.logger 2 6
SignaturesController#form_request_timestamps 2 2
Archived::DeliverDebateScheduledEmailJob#create_email 2 6
SignaturesController#expire_form_requests 2 5
Archived::PetitionMailer#notify_creator_of_debate_outcome 2 10
Archived::PetitionMailer#notify_signer_of_debate_outcome 2 10
PetitionMailer#notify_creator_of_debate_outcome 2 10
SignaturesController#thank_you 2 4
SignaturesController#unsubscribe 2 6
SignaturesController#verify 2 7
Admin#update 2 6
SignaturesController#create 2 7
Archived::DebateOutcome#debate_state 2 2
SignaturesController#new 2 4
SignatureLogs#each 2 2
PetitionMailer#notify_signer_of_debate_outcome 2 10
Admin::TaskRunner#run 2 2
Task::#task_for 2 6
SignatureLogs#logs 2 2
SignatureLogs#fetch_events 2 6
SignatureLogs#fetch_create_events 2 13
RateLimit#use_country_rate? 2 6
Admin#csv_filename 2 6
RateLimit#validate_domain! 2 6
Site::#default_url 2 6
Authentication#logout_stale_session 2 2
RateLimit#country_for_ip 2 8
SignatureLogs#fetch_combined_events 2 13
Admin#parliament 2 4
Authentication#require_sysadmin 2 4
RateLimit#build_ignored_domains 2 2
RateLimit#ip_blocked? 2 2
RateLimit#build_blocked_ips 2 5
RateLimit#ip_allowed? 2 2
RateLimit#build_allowed_ips 2 5
RateLimit#domain_blocked? 2 2
RateLimit#build_blocked_domains 2 5
RateLimit#domain_allowed? 2 2
RateLimit#build_allowed_domains 2 5
Authentication#check_for_password_change 2 4
Authentication#require_admin 2 4
Admin#moderation 2 6
Admin#index 2 4
Authentication#current_user 2 3
Admin#index_url 2 6
Authentication#current_session 2 3
TrendingIp::#search 2 11
PerishableTokenGenerator#has_perishable_token 2 4
Admin#scope 2 2
DeliverDebateScheduledEmailJob#create_email 2 6
Site::#default_moderate_url 2 6
Admin#unsubscribe 2 6
Admin#bulk_unsubscribe 2 8
Admin#subscribe 2 6
Admin#bulk_subscribe 2 8
NotifyCreatorsThatModerationIsDelayedJob#perform 2 4
Admin#destroy 2 6
Admin#bulk_destroy 2 8
Admin#invalidate 2 8
Admin#bulk_invalidate 2 8
Admin#validate 2 8
Admin#bulk_validate 2 8
Admin#index 2 4
NotifyEveryoneOfModerationDecisionJob#notify_everyone_of_rejection 2 6
NotifyEveryoneOfModerationDecisionJob#notify_everyone_of_publication 2 6
Admin#edit 2 4
Constituency::ApiClient#faraday 2 6
Browseable::Search#execute_search 2 10
QuietLogger#silence_request? 2 2
LocalPetitionsController#index 2 4
Constituency::ApiClient#call 2 5
Admin#index 2 4
SignatureLogs::Log#ip_address 2 4
Browseable::Search#in_batches 2 4
EmailDelivery#perform 2 10
NotifyCreatorsThatParliamentIsDissolvingJob#perform 2 4
FeedbackController#build_feedback 2 2
Browseable::Search#scope 2 2
Admin#enqeue_job 2 15
FeedbackController#thanks 2 4
SignatureLogs::Log#timestamp 2 4
Admin#moderation_delay_params 2 6
FeedbackController#new 2 4
SignatureLogs::Log#method 2 2
Admin#new 2 4
Admin#update 2 6
Admin#show 2 5
Admin#destroy 2 6
Admin#update 2 6
SignatureLogs::Log#uri 2 2
Admin#create 2 8
LocalPetitionsController#show 2 6
CountryPetitionJournal::#invalidate_signature_for 2 4
Admin#destroy 2 8
LocalPetitionsController#all 2 6
TrackersController#verify_petition 2 4
TrackersController#verify_form_token 2 4
Browseable::Facets#each 2 4
Admin#destroy 2 6
SignatureLogs::Log#response 2 2
Domain::#default_domain 2 6
Domain::#rule 2 2
Domain::#rules 2 2
PetitionHelper#current_threshold 2 6
Archived::Signature#formatted_postcode 2 6
HomeHelper::ActionedPetitionsDecorator#generate_actioned 2 7
SignatureLogs::Log#referrer 2 2
Admin#edit 2 4
SignatureLogs::Log#agent 2 2
PackageBuilder#write_scripts 2 9
Domain#domain 2 2
SignatureLogs::Log#== 2 3
HomeHelper::ActionedPetitionsDecorator#empty? 2 2
Domain#normalize 2 4
RefreshConstituencyPartyJob#faraday 2 6
Domain#strip_extension 2 2
Domain#strip_extension? 2 2
PackageBuilder#website_url 2 6
Domain#strip_characters 2 2
Domain#strip_characters? 2 2
HomeHelper#fetch_trending_petitions 2 6
RefreshConstituencyPartyJob#fetch_members 2 5
Archived::DeliverPetitionEmailJob#create_email 2 6
Archived::Signature#domain 2 4
HomeHelper#no_petitions_yet? 2 3
Admin#show 2 4
Admin::TaskRunner#tasks 2 2
Admin::TaskRunner::#run 2 5
Rejection#state_for_petition 2 2
Admin#index 2 4
PackageBuilder#notify_slack 2 5
Archived::Signature::#ip_search? 2 4
ActiveSupport::Cache::AtomicDalliStore#lock! 2 3
Admin#new 2 4
PetitionsController#index 2 6
ActiveSupport::Cache::AtomicDalliStore#write 2 4
PetitionsController#show 2 5
PetitionsController#count 2 4
PackageBuilder#package_gems 2 7
PetitionsController#check 2 4
Admin#update 2 6
HomeHelper#actioned_petitions 2 3
ArchivedPetitionHelper#archived_threshold 2 6
PackageBuilder#deployment_key 2 2
Archived::Signature#account 2 4
PetitionCSVPresenter#values 2 2
DebateOutcomeHelper#debate_outcome_links? 2 2
Admin#invalidation_params 2 6
PetitionsController#check_results 2 4
NotifyCreatorOfValidatedPetitionBeingStoppedJob#perform 2 4
ConstituenciesController#index 2 6
PackageBuilder#create_deployment! 2 9
Archived::DeliverThresholdResponseEmailJob#create_email 2 6
PetitionsController#new 2 4
PackageBuilder#build_package 2 11
EmailRequestedReceipt#set 2 3
PetitionsController#gathering_support 2 4
Admin#new 2 4
Admin#index 2 4
PetitionsController#moderation_info 2 4
DebateOutcomeHelper#debate_outcome_image 2 3
#open_at_dissolution 2 13
DeliverDebateOutcomeEmailJob#create_email 2 6
AdminUser#account_disabled= 2 2
TrendingDomain::#search 2 11
ConstituencyPetitionJournal::#invalidate_signature_for 2 4
EmailRequestedReceipt#get 2 3
#in_need_of_stopping 2 3
NotifyCreatorOfSponsoredPetitionBeingStoppedJob#perform 2 4
PetitionsController#thank_you 2 4
Admin#edit 2 4
Admin#update 2 6
Admin#destroy 2 8
PetitionsController#redirect_to_home_page_if_dissolved 2 2
#ip_search? 2 4
PetitionsController#redirect_to_home_page_unless_opened 2 2
AdminUser#current_password 2 2
SponsorSignedEmailOnThresholdEmailJob#perform 2 4
FormHelper#error_messages_for_field 2 5
#stop_petitions_early! 2 4
#close_petitions_early! 2 4
PetitionsController#request_format 2 2
#close_petitions! 2 4
Admin#send_notifications 2 4
Archived#redirect_to_valid_state 2 4
ApiPaginationLinksPresenter#last_url 2 7
LocalPetitionsController#redirect_to_constituency 2 6
EmailValidator#plus_address? 2 4
Archived#fetch_petition 2 7
LocalPetitionsController#csv_filename 2 6
Archived#fetch_parliament 2 6
GeoipLookup::ClassMethods#geoip_lookup 2 4
CacheHelper::CacheKey::Dependencies::Keys#dependency_keys 2 2
Admin#update 2 6
PetitionsController#redirect_to_valid_state 2 4
Archived#show 2 5
Archived#index 2 6
HealthCheck#database_integrity 2 3
ApiPaginationLinksPresenter#next_url 2 6
#missing_constituency_id 2 6
HealthCheck#database_connection 2 6
Archived::Signature#location 2 6
TrackersController#show 2 6
HealthCheck#stringify 2 2
CacheHelper::CacheKey::Dependencies::Keys#method_missing 2 6
Admin#tag_params 2 6
SponsorSignedEmailBelowThresholdEmailJob#perform 2 4
Site#port_string 2 2
Site#database_migrating? 2 2
Admin#show 2 4
Site#update_all 2 6
Admin#domain_params 2 6
Site#opened_at_for_closing 2 8
Site#password= 2 6
Admin#update 2 7
Site#constraints_for_moderation 2 4
Admin#update 2 7
#refresh! 2 2
Site#standard_port 2 5
ImportConstituenciesJob#fetch_constituencies 2 6
Site#constraints_for_public 2 4
Archived::SignaturesController#retrieve_signature 2 7
Admin#destroy 2 6
Admin#update 2 6
Admin#create 2 6
Admin#show 2 6
HealthCheckMiddleware#call 2 12
Admin#send_notifications 2 4
Archived::SignaturesController#verify_unsubscribe_token 2 4
AuditLogger#error 2 8
CacheHelper::CacheKey::Dependencies::Keys#petition 2 2
AuditLogger#format_message 2 3
Archived::SignaturesController#unsubscribe 2 6
AuditLogger#initialize 2 4
NotifyCreatorThatParliamentIsDissolvingJob#perform 2 4
DeliverPetitionEmailJob#create_email 2 6
ImportConstituenciesJob#faraday 2 6
DeliverThresholdResponseEmailJob#create_email 2 6
PetitionCreator#validate 2 6
Site#type_cast_feature_flag 2 2
Admin#create 2 8
Admin#index 2 4
Archived::DeliverDebateOutcomeEmailJob#create_email 2 6
ImportConstituenciesJob#current_constituencies 2 2
Admin#destroy 2 6
Admin#update 2 6
Admin#create 2 6
Admin#show 2 6
PagesController#manifest 2 6
Parliament#archive! 2 5
Parliament#notify_creators! 2 4
Parliament#schedule_closure! 2 5
Parliament#start_archiving! 2 5
PagesController#browserconfig 2 6
PagesController#privacy 2 4
PagesController#help 2 4
PagesController#index 2 4
PostcodeValidator#validate_each 2 4
Admin#update 2 6
PetitionCreator#to_param 2 6
Admin#edit 2 4
PetitionCreator#stage 2 2
ImportConstituenciesJob#constituencies 2 10
Parliament#period 2 4
Admin#fetch_parliament 2 6
Admin#destroy 2 3
FetchCountryRegisterJob#countries 2 2
CloudFrontRemoteIp::CloudFrontGetIp#filter_proxies 2 9
FetchCountryRegisterJob#faraday 2 7
Archived::Rejection#state_for_petition 2 2
Admin#index 2 4
Archived#fetch_petitions 1 2
Archived#petition_id 1 2
Archived#parliament_id 1 2
HealthCheck#utctime 1 2
HealthCheck#localtime 1 2
HealthCheck#client_ip 1 2
HealthCheck#url 1 2
HealthCheck#hostname 1 2
HealthCheck#initialize 1 2
HealthCheck#self.checkup 1 2
Admin#send_preview_email 1 2
Admin#schedule_email_petitioners_job 1 2
Admin#send_preview_email? 1 2
Admin#send_email_to_petitioners? 1 2
Admin#feedback_signature 1 2
Admin#email_params 1 2
Admin#fetch_email 1 2
Admin#build_email 1 2
Admin#fetch_petition 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#send_preview_email 1 2
Admin#schedule_email_petitioners_job 1 2
Admin#send_preview_email? 1 2
Admin#send_email_to_petitioners? 1 2
Admin#feedback_signature 1 2
Admin#email_params 1 2
Admin#fetch_email 1 2
Admin#build_email 1 2
Admin#fetch_petition 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#domain_attributes 1 2
Admin#build_domain 1 2
Admin#find_domain 1 2
Admin#fetch_domains 1 2
LocalPetitionsController#set_content_disposition 1 2
LocalPetitionsController#find_all_petitions 1 2
LocalPetitionsController#find_petitions 1 2
LocalPetitionsController#constituency? 1 2
LocalPetitionsController#find_by_slug 1 2
LocalPetitionsController#find_by_postcode 1 2
LocalPetitionsController#postcode? 1 2
LocalPetitionsController#sanitize_postcode 1 2
Admin#redirect_to_index_url 1 2
Admin#index_url 1 2
Admin#destroy_tag 1 2
Admin#build_tag 1 2
Admin#find_tag 1 2
Admin#find_tags 1 2
Admin#destroy 1 2
SignatureLogs::#find 1 2
SignatureLogs::Log#sec 1 0
SignatureLogs::Log#min 1 0
SignatureLogs::Log#hour 1 0
SignatureLogs::Log#day 1 0
SignatureLogs::Log#month 1 0
SignatureLogs::Log#year 1 0
SignatureLogs::Log#blank? 1 2
SignatureLogs::Log#initialize 1 3
SignatureLogs#ms 1 2
SignatureLogs#log_group_name 1 2
SignatureLogs#client 1 2
SignatureLogs#initialize 1 2
SponsorsController#validate_creator 1 2
SponsorsController#signed_token_failure_url 1 2
SponsorsController#thank_you_url 1 2
Admin#csv_filename 1 2
Admin#set_streaming_headers 1 5
Admin#set_file_headers 1 3
Admin#render_csv 1 6
Admin#fetch_petition 1 2
Admin#fetch_petitions 1 2
Admin#parliament_id 1 2
Admin#redirect_to_admin_hub 1 2
Admin#redirect_to_show_page 1 2
Admin#parliament_present? 1 2
Admin#petition_id? 1 2
#example_postcodes 1 2
#query 1 2
#by_ons_code 1 2
Parliament::#current_or_create 1 2
Parliament::#reload 1 2
Parliament::#registration_closed? 1 2
Parliament::#dissolution_announced? 1 2
Parliament::#dissolved? 1 2
Parliament::#dissolution_faq_url? 1 2
Parliament::#dissolution_faq_url 1 2
Parliament::#dissolved_message 1 2
Parliament::#dissolved_heading 1 2
Parliament::#dissolution_message 1 2
Parliament::#dissolution_heading 1 2
Parliament::#notification_cutoff_at 1 2
Parliament::#dissolution_at 1 2
Parliament::#opened? 1 2
Parliament::#opening_at 1 2
Parliament::#government 1 2
Parliament::#current 1 2
Parliament::#archived 1 2
Parliament::#instance 1 2
Parliament::#before_remove_const 1 2
Parliament#show_on_a_map? 1 2
Parliament#formatted_threshold_for_debate 1 2
Parliament#formatted_threshold_for_response 1 2
Parliament#can_archive? 1 2
Parliament#can_archive_petitions? 1 2
Parliament#archiving_finished? 1 2
Parliament#archiving? 1 2
Parliament#archived? 1 2
Parliament#registration_closed? 1 2
Parliament#dissolution_announced? 1 2
Parliament#dissolved? 1 2
Parliament#period? 1 2
Parliament#opened? 1 2
Parliament#name 1 2
ApplicationController#current_time 1 2
ApplicationController#do_not_cache 1 2
ApplicationController#public_petition_facets 1 2
ApplicationController#show_cookie_message? 1 2
ApplicationController#set_cors_headers 1 4
ApplicationController#set_seen_cookie_message 1 2
ApplicationController#redirect_to_home_page 1 2
ApplicationController#parliament_dissolved? 1 2
ApplicationController#site_enabled? 1 2
ApplicationController#service_unavailable 1 2
ApplicationController#reload_parliament 1 2
ApplicationController#reload_site 1 2
ApplicationController#redirect_to_url_without_format 1 2
ApplicationController#unknown_format? 1 2
ApplicationController#json_request? 1 2
ApplicationController#csv_request? 1 2
ApplicationController#admin_request? 1 2
AutoLinkHelper::AutoLinker#auto_link_all 1 2
AutoLinkHelper::AutoLinker#auto_linked? 1 3
AutoLinkHelper::AutoLinker#html_options 1 2
AutoLinkHelper::AutoLinker#sanitize_options 1 2
AutoLinkHelper::AutoLinker#scope 1 2
AutoLinkHelper::AutoLinker#initialize 1 5
AutoLinkHelper::AutoLinker#self.generate 1 2
AutoLinkHelper#auto_link 1 2
PetitionMailer#unsubscribe_url 1 2
PetitionMailer#signature_belongs_to_creator? 1 2
PetitionMailer#subject_for 1 2
PetitionMailer#notify_creator_that_moderation_is_delayed 1 7
PetitionMailer#notify_creator_of_debate_scheduled 1 5
PetitionMailer#notify_signer_of_debate_scheduled 1 6
PetitionMailer#gather_sponsors_for_petition 1 3
PetitionMailer#notify_creator_of_validated_petition_being_stopped 1 3
PetitionMailer#notify_creator_of_sponsored_petition_being_stopped 1 3
PetitionMailer#notify_creator_of_closing_date_change 1 8
PetitionMailer#notify_creator_of_threshold_response 1 6
PetitionMailer#notify_signer_of_threshold_response 1 6
PetitionMailer#notify_sponsor_that_petition_was_rejected 1 3
PetitionMailer#notify_creator_that_petition_was_rejected 1 3
PetitionMailer#notify_sponsor_that_petition_is_published 1 3
PetitionMailer#notify_creator_that_petition_is_published 1 6
PetitionMailer#special_resend_of_email_confirmation_for_signer 1 3
PetitionMailer#email_creator 1 5
PetitionMailer#email_signer 1 6
PetitionMailer#email_duplicate_signatures 1 3
PetitionMailer#email_confirmation_for_signer 1 3
Admin#search_params 1 2
Admin#fetch_signature 1 2
Admin#fetch_signatures 1 2
Admin#fetch_petition 1 2
Admin#petition_scope? 1 2
Browseable::ClassMethods#search 1 2
Browseable::ClassMethods#filter 1 2
Browseable::ClassMethods#facet 1 2
Browseable::Search#star 1 2
Browseable::Search#execute_search_with_pagination 1 2
Browseable::Search#results 1 2
Browseable::Search#model 1 2
Browseable::Search#to_a 1 2
Browseable::Search#search? 1 2
Browseable::Search#scoped? 1 2
Browseable::Search#next_params 1 2
Browseable::Search#previous_params 1 2
Browseable::Search#page_size 1 2
Browseable::Search#query 1 2
Browseable::Search#last_page? 1 2
Browseable::Search#second_page? 1 2
Browseable::Search#first_page? 1 2
Browseable::Search#filters 1 2
Browseable::Search#facets 1 2
Browseable::Search#find_each 1 2
Browseable::Search#each 1 2
Browseable::Search#current_page 1 2
Browseable::Search#initialize 1 2
Browseable::Filters#to_hash 1 2
Browseable::Filters#initialize 1 2
Browseable::Facets#facet_scope 1 2
Browseable::Facets#facet_counts 1 2
Browseable::Facets#[] 1 2
Browseable::Facets#initialize 1 2
Domain::#by_name 1 2
Domain::#default_scope 1 2
Domain#extension_regexp 1 3
Domain#characters_regexp 1 2
Domain#find_canonical_domain 1 2
Domain#name= 1 2
Domain#alias 1 2
Domain#alias? 1 2
Domain#aliased_domains 1 2
Domain#aliased_domain? 1 2
Domain#aliased_domain 1 2
ActiveSupport::Cache::AtomicDalliStore#ttl_key 1 2
ActiveSupport::Cache::AtomicDalliStore#delete 1 2
Admin#redirect_to_index_url 1 2
Admin#index_url 1 2
Admin#find_invalidations 1 2
Admin#find_invalidation 1 2
Admin#build_invalidation 1 2
Admin#invalidation_attributes 1 2
AdminUser#time_remaining 1 2
AdminUser#elapsed_time 1 2
AdminUser#account_disabled 1 2
AdminUser#can_edit_responses? 1 2
AdminUser#can_take_petitions_down? 1 2
AdminUser#has_to_change_password? 1 2
AdminUser#is_a_moderator? 1 2
AdminUser#is_a_sysadmin? 1 2
AdminUser#pretty_name 1 2
AdminUser#name 1 2
AdminUser#current_password= 1 2
CacheHelper::CacheKey::Dependencies::Keys::#load_yaml 1 2
CacheHelper::CacheKey::Dependencies::Keys::#reset_fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys::#fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys::#build 1 2
CacheHelper::CacheKey::Dependencies::Keys::Fragment#initialize 1 5
CacheHelper::CacheKey::Dependencies::Keys#version 1 2
CacheHelper::CacheKey::Dependencies::Keys#fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys#fragment_keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#dependencies 1 2
CacheHelper::CacheKey::Dependencies::Keys#digest_keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#digest 1 2
CacheHelper::CacheKey::Dependencies::Keys#cache_key 1 2
CacheHelper::CacheKey::Dependencies::Keys#build 1 2
CacheHelper::CacheKey::Dependencies::Keys#initialize 1 3
CacheHelper::CacheKey::Dependencies::Keys#value_for 1 2
CacheHelper::CacheKey::Dependencies::Keys#url 1 2
CacheHelper::CacheKey::Dependencies::Keys#site_updated_at 1 2
CacheHelper::CacheKey::Dependencies::Keys#reveal_response 1 2
CacheHelper::CacheKey::Dependencies::Keys#petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#last_petition_created_at 1 2
CacheHelper::CacheKey::Dependencies::Keys#home_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#open_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#create_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#constituency 1 2
CacheHelper::CacheKey::Dependencies::Keys#archived_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#initialize 1 2
CacheHelper::CacheKey::Dependencies#last_debate_outcome_updated_at 1 2
CacheHelper::CacheKey::Dependencies#last_government_response_updated_at 1 2
CacheHelper::CacheKey::Dependencies#last_signature_at 1 2
CacheHelper::CacheKey::Dependencies#cache_for 1 2
CacheHelper::CacheKey::Dependencies#dependencies_for 1 2
CacheHelper::CacheKey::Dependencies#initialize 1 2
AdminHelper#selected_tags 1 2
Archived::Signature::#normalize_domain 1 2
Archived::Signature::#normalize_user 1 2
Archived::Signature::#normalize_email 1 2
Archived::Signature::#sector_search? 1 2
Archived::Signature::#postcode_search? 1 2
Archived::Signature::#petition_search? 1 2
Archived::Signature::#email_search? 1 2
Archived::Signature::#domain_search? 1 2
Archived::Signature::#sponsors 1 2
Archived::Signature::#creator 1 2
Archived::Signature::#validated 1 2
Archived::Signature::#subscribed 1 2
Archived::Signature::#need_emailing_for 1 2
Archived::Signature::#for_timestamp 1 3
Archived::Signature::#for_sector 1 2
Archived::Signature::#for_postcode 1 2
Archived::Signature::#for_petition 1 2
Archived::Signature::#for_name 1 2
Archived::Signature::#for_ip 1 2
Archived::Signature::#for_email 1 2
Archived::Signature::#for_domain 1 2
Archived::Signature::#by_most_recent 1 2
Archived::Signature::#batch 1 2
Archived::Signature#column_name_for 1 2
Archived::Signature#united_kingdom? 1 2
Archived::Signature#invalid_unsubscribe_token? 1 2
Archived::Signature#already_unsubscribed? 1 2
Archived::Signature#unsubscribed? 1 2
Archived::Signature#subscribed? 1 2
Archived::Signature#invalidated? 1 2
Archived::Signature#validated? 1 2
Archived::Signature#fraudulent? 1 2
Archived::Signature#pending? 1 2
Archived::Signature#set_email_sent_at_for 1 2
Archived::Signature#get_email_sent_at_for 1 2
PetitionsController#set_content_disposition 1 2
PetitionsController#csv_filename 1 2
PetitionsController#redirect_to_petition_url 1 2
PetitionsController#redirect_to_stopped_page 1 2
PetitionsController#stopped? 1 2
PetitionsController#moderated? 1 2
PetitionsController#redirect_to_moderation_info_url 1 2
PetitionsController#in_moderation? 1 2
PetitionsController#redirect_to_gathering_support_url 1 2
PetitionsController#collecting_sponsors? 1 2
PetitionsController#search_params 1 2
PetitionsController#valid_state? 1 2
PetitionsController#state_present? 1 2
PetitionsController#build_petition_creator 1 2
PetitionsController#retrieve_petition 1 2
PetitionsController#retrieve_petitions 1 2
PetitionsController#petition_id 1 2
Site::#default_constraints_for_moderation 1 2
Site::#default_constraints_for_public 1 2
Site::#default_threshold_for_debate 1 2
Site::#default_threshold_for_response 1 2
Site::#default_threshold_for_moderation_delay 1 2
Site::#default_threshold_for_moderation 1 2
Site::#default_maximum_number_of_sponsors 1 2
Site::#default_minimum_number_of_sponsors 1 2
Site::#default_petition_duration 1 2
Site::#default_login_timeout 1 2
Site::#default_protected 1 2
Site::#default_enabled 1 2
Site::#default_password 1 2
Site::#default_username 1 2
Site::#default_feedback_email 1 2
Site::#default_email_from 1 2
Site::#default_port 1 2
Site::#default_moderate_host 1 2
Site::#default_moderate_url_components 1 2
Site::#default_domain 1 2
Site::#default_host 1 2
Site::#default_url_components 1 2
Site::#default_protocol 1 2
Site::#default_scheme 1 2
Site::#default_title 1 2
Site::#defaults 1 20
Site::#moderation_near_overdue_in_days 1 2
Site::#moderation_overdue_in_days 1 2
Site::#signature_count_updated_at! 1 2
Site::#last_petition_created_at! 1 2
Site::#last_checked_at! 1 2
Site::#enable_signature_counts! 1 2
Site::#disable_signature_counts! 1 2
Site::#touch 1 2
Site::#reload 1 2
Site::#login_timeout 1 2
Site::#protected? 1 2
Site::#port 1 2
Site::#closed_at_for_opening 1 2
Site::#opened_at_for_closing 1 2
Site::#moderate_host_with_port 1 2
Site::#moderate_host 1 2
Site::#host_with_port 1 2
Site::#host 1 2
Site::#formatted_threshold_for_debate 1 2
Site::#formatted_threshold_for_response 1 2
Site::#formatted_threshold_for_moderation 1 2
Site::#enabled? 1 2
Site::#email_protocol 1 2
Site::#authenticate 1 2
Site::#instance 1 2
Site::#before_remove_const 1 2
#by_most_popular 1 2
Site#moderate_uri 1 2
Site#uri 1 2
Site#standard_port? 1 2
Site#scope 1 2
Site#closed_at_for_opening 1 2
Site#password_digest 1 2
Site#moderate_protocol 1 2
Site#moderate_port 1 2
Site#moderate_host_with_port 1 2
Site#moderate_host 1 2
Site#protocol 1 2
Site#port 1 2
Site#host_with_port 1 2
Site#host 1 2
Site#formatted_threshold_for_debate 1 2
Site#formatted_threshold_for_response 1 2
Site#formatted_threshold_for_moderation 1 2
Site#email_protocol 1 2
Site#authenticate 1 2
PetitionCreator#send_email_to_gather_sponsors 1 2
PetitionCreator#constituency_id 1 2
PetitionCreator#constituency 1 2
PetitionCreator#postcode_validator 1 2
PetitionCreator#email_validator 1 2
PetitionCreator#done? 1 2
PetitionCreator#replay_email? 1 2
PetitionCreator#valid? 1 4
PetitionCreator#next_stage 1 2
PetitionCreator#previous_stage 1 2
PetitionCreator#stage_index 1 2
PetitionCreator#moving_backwards? 1 2
PetitionCreator#petition_creator_params 1 2
PetitionCreator#stage_param 1 2
PetitionCreator#query_param 1 2
PetitionCreator#notify_by_email 1 2
PetitionCreator#uk_citizenship 1 2
PetitionCreator#location_code 1 2
PetitionCreator#postcode 1 2
PetitionCreator#email 1 2
PetitionCreator#name 1 2
PetitionCreator#additional_details 1 2
PetitionCreator#background? 1 2
PetitionCreator#background 1 2
PetitionCreator#action? 1 2
PetitionCreator#action 1 2
PetitionCreator#duplicates 1 2
PetitionCreator#to_partial_path 1 2
PetitionCreator#read_attribute_for_validation 1 2
PetitionCreator#initialize 1 4
Invalidation::#started 1 2
Invalidation::#running 1 2
Invalidation::#pending 1 2
Invalidation::#not_completed 1 2
Invalidation::#enqueued 1 2
Invalidation::#completed 1 2
Invalidation::#cancelled 1 2
Invalidation::#by_longest_running 1 2
Invalidation::#by_most_recent 1 2
Invalidation#calculate_percent_complete 1 2
Invalidation#table 1 2
Invalidation#date_range? 1 2
Invalidation#location_code_scope 1 2
Invalidation#constituency_id_scope 1 2
Invalidation#ip_address_scope 1 2
Invalidation#postcode_scope 1 2
Invalidation#petition_scope 1 2
Invalidation#running? 1 2
Invalidation#pending? 1 2
Invalidation#enqueued? 1 2
Invalidation#started? 1 2
Invalidation#completed? 1 2
Invalidation#cancelled? 1 2
SignaturesController#signature_attributes 1 2
SignaturesController#signature_params_for_create 1 7
SignaturesController#signature_params 1 2
SignaturesController#signature_params_for_new 1 6
SignaturesController#signed_token_failure_url 1 2
SignaturesController#thank_you_url 1 2
SignaturesController#retrieve_petition 1 2
SignaturesController#store_signed_token_in_session 1 2
SignaturesController#signed_token_hash 1 2
SignaturesController#session_signed_token 1 2
SignaturesController#signed_tokens 1 2
SignaturesController#delete_form_request 1 3
SignaturesController#form_request_expired? 1 2
SignaturesController#form_request_max_age 1 2
SignaturesController#last_form_request_timestamp 1 2
SignaturesController#token_param 1 2
SignaturesController#signature_id 1 2
SignaturesController#petition_id 1 2
RateLimit#sustained_rate_exceeded? 1 2
RateLimit#burst_rate_exceeded? 1 2
RateLimit#rate_exceeded? 1 2
RateLimit#country_sustained_rate_exceeded? 1 2
RateLimit#country_burst_rate_exceeded? 1 2
RateLimit#country_rate_exceeded? 1 2
RateLimit#normalize_lines 1 2
RateLimit#geoip_db 1 2
RateLimit#country_blocked? 1 2
RateLimit#ip_geoblocked? 1 2
RateLimit#build_allowed_countries 1 2
RateLimit#strip_blank_lines 1 2
RateLimit#strip_comments 1 2
RateLimit#ignored_domains_list 1 2
RateLimit#ignored_domains= 1 3
RateLimit#countries= 1 3
RateLimit#allowed_countries 1 2
RateLimit#blocked_ips_list 1 2
RateLimit#blocked_ips= 1 3
RateLimit#allowed_ips_list 1 2
RateLimit#allowed_ips= 1 3
RateLimit#blocked_domains_list 1 2
RateLimit#blocked_domains= 1 3
RateLimit#allowed_domains_list 1 2
RateLimit#allowed_domains= 1 3
RateLimit#ignore_ip? 1 2
RateLimit#ignore_domain? 1 2
RateLimit#reload 1 9
#scheduled_for_debate 1 2
#threshold_for_debate_reached 1 2
#scheduled_debate_state 1 2
#debate_date_in_the_past 1 2
#in_debate_queue 1 2
#mark_petitions_as_debated! 1 2
#in_need_of_marking_as_debated 1 2
#visible 1 2
#with_debated_outcome 1 2
#with_debate_outcome 1 2
#not_scheduled 1 2
#debate_scheduled 1 2
#debate_threshold_reached 1 2
#not_debated 1 2
#debated 1 2
#debateable 1 2
#hidden 1 2
#rejected 1 2
#closed 1 2
#stopped 1 2
#moderated 1 2
#published 1 2
#response_threshold_reached 1 2
#with_response 1 2
#not_responded 1 2
#awaiting_response 1 2
#awaiting_debate_date 1 2
#by_waiting_for_response_longest 1 2
#by_most_signatures 1 2
#by_most_recent 1 2
#by_waiting_for_debate_longest 1 2
#by_most_recent_debate_outcome 1 2
#by_created_at 1 2
#for_state 1 2
PackageBuilder::#deploy! 1 2
PackageBuilder::#build! 1 2
PackageBuilder#register_with_elb_script 1 2
PackageBuilder#deregister_from_elb_script 1 2
PackageBuilder#common_functions_script 1 2
PackageBuilder#register_with_elb_script_file 1 2
PackageBuilder#deregister_from_elb_script_file 1 2
PackageBuilder#common_functions_script_file 1 2
PackageBuilder#after_install_script 1 2
PackageBuilder#after_install_script_file 1 2
PackageBuilder#application_stop_script 1 2
PackageBuilder#application_stop_script_file 1 2
PackageBuilder#application_start_script 1 2
PackageBuilder#application_start_script_file 1 2
PackageBuilder#appspec_yaml 1 2
PackageBuilder#appspec_file 1 2
PackageBuilder#scripts_path 1 2
PackageBuilder#write_script 1 3
PackageBuilder#write_appspec 1 2
PackageBuilder#treeish 1 2
PackageBuilder#deployment_progress 1 8
PackageBuilder#deployment_complete 1 8
PackageBuilder#skip_gems? 1 2
PackageBuilder#skip_build? 1 2
PackageBuilder#commit_url 1 2
PackageBuilder#short_revision 1 2
PackageBuilder#revision_file 1 2
PackageBuilder#remove_artifacts 1 6
PackageBuilder#remove_archive 1 6
PackageBuilder#release_key 1 2
PackageBuilder#release_bucket 1 2
PackageBuilder#region 1 2
PackageBuilder#pull_request? 1 2
PackageBuilder#slack_options 1 2
PackageBuilder#slack_message 1 2
PackageBuilder#slack_webhook 1 2
PackageBuilder#username 1 2
PackageBuilder#appsignal_push_api_key 1 2
PackageBuilder#deploy_release? 1 2
PackageBuilder#profile 1 2
PackageBuilder#package_path 1 2
PackageBuilder#package_name 1 2
PackageBuilder#latest_key 1 2
PackageBuilder#info 1 2
PackageBuilder#extract_archive 1 7
PackageBuilder#description 1 2
PackageBuilder#deployment_group_name 1 2
PackageBuilder#deployment_config 1 16
PackageBuilder#deploy_build? 1 2
PackageBuilder#deploy_branch? 1 2
PackageBuilder#credentials 1 2
PackageBuilder#create_revision_file 1 2
PackageBuilder#create_archive 1 9
PackageBuilder#ci? 1 2
PackageBuilder#archive_path 1 2
PackageBuilder#archive_name 1 2
PackageBuilder#archive_file 1 2
PackageBuilder#application_name 1 2
PackageBuilder#upload! 1 12
PackageBuilder#initialize 1 6
#normalize_domain 1 2
#normalize_user 1 2
#normalize_email 1 2
#max_validated_at 1 2
#count_star 1 2
#validated_at 1 2
#sector_search? 1 2
#postcode_search? 1 2
#petition_search? 1 2
#email_search? 1 2
#domain_search? 1 2
#validated? 1 2
#validated_count_by_constituency_id 1 2
#validated_count_by_location_code 1 2
#validated_count 1 2
#unarchived 1 2
#uk 1 2
#trending_ips 1 8
#trending_domains 1 8
#fraudulent_ips 1 8
#fraudulent_domains 1 8
#subscribed 1 2
#sponsors 1 2
#creator 1 2
#petition_ids_signed_since 1 2
#total 1 2
#pending 1 2
#need_emailing_for 1 2
#invalidated 1 2
#fraudulent_domains 1 6
#fraudulent 1 2
#for_timestamp 1 3
#for_sector 1 2
#for_postcode 1 2
#for_petition 1 2
#for_name 1 2
#for_ip 1 2
#for_invalidating 1 2
#for_email 1 2
#for_domain 1 2
#similar 1 2
#pending_rate 1 2
#duplicate_emails 1 2
#duplicate 1 2
#by_most_recent 1 2
#batch 1 2
#scheduled_debate_state 1 2
#debate_date_in_the_past 1 2
#awaiting_debate_state 1 2
#scheduled_for_debate 1 2
#threshold_for_debate_reached 1 2
#popular_in 1 9
#moderation_overdue_at 1 2
#moderation_near_overdue_at 1 2
#moderation_threshold_reached_at 1 2
#signature_count_validated_at 1 2
#last_signed_at 1 2
#grouping 1 2
#in_need_of_validating 1 2
#signed_since 1 2
#untagged_in_moderation 1 2
#tagged_in_moderation 1 2
#overdue_in_moderation 1 2
#nearly_overdue_in_moderation 1 2
#recently_in_moderation 1 2
#unarchived 1 2
#mark_petitions_as_debated! 1 2
#in_need_of_marking_as_debated 1 2
#sanitized_tag 1 2
#all_popular_in_constituency 1 2
#popular_in_constituency 1 2
#created_after 1 2
#in_need_of_closing 1 2
#trending 1 9
#with_response 1 2
#with_debated_outcome 1 2
#with_debate_outcome 1 2
#visible 1 2
#todo_list 1 2
#threshold 1 2
#show 1 2
#stoppable 1 2
#selectable 1 2
#response_threshold_reached 1 2
#respondable 1 2
#not_scheduled 1 2
#not_responded 1 2
#not_hidden 1 2
#not_debated 1 2
#moderated 1 2
FeedbackMailer#send_feedback 1 6
Feedback#petition_link? 1 2
Archived::#table_name_prefix 1 2
ClosePetitionsJob#perform 1 2
UpdatePetitionStatisticsJob#perform 1 2
RefreshConstituenciesJob#perform 1 2
DeletePetitionJob#perform 1 2
DebatedPetitionsJob#perform 1 3
NotifyCreatorThatModerationIsDelayedJob#perform 1 2
ClosePetitionsEarlyJob::#schedule_for 1 2
ClosePetitionsEarlyJob#perform 1 2
EmailThresholdReminderJob#perform 1 2
PingController#ping 1 2
ModerationHelper#moderation_delay? 1 2
PostcodeSanitizer#self.call 1 2
SignatureHelper#siganture_count_options 1 2
SignatureHelper#signature_count 1 2
Admin#fetch_petition 1 2
Admin#update 1 3
ApplicationJob#reload_parliament 1 2
ApplicationJob#reload_site 1 2
InvalidateSignaturesJob#perform 1 2
CloudFrontRemoteIp#call 1 3
Tag::#by_name 1 2
Tag#remove_tag_from_archived_petitions 1 2
Tag#remove_tag_from_petitions 1 2
AdminMailer#threshold_email_reminder 1 3
NotifyCreatorsThatModerationIsDelayedJob#petitions 1 2
HealthCheckMiddleware#initialize 1 2
DeliverPetitionEmailJob#perform 1 3
Admin#set_appsignal_namespace 1 2
Admin#admin_request? 1 2
Admin#index 1 1
NotifyCreatorsThatParliamentIsDissolvingJob#petitions 1 2
SponsorMailer#petition_and_email_confirmation_for_sponsor 1 7
SponsorMailer#sponsor_signed_email_on_threshold 1 8
SponsorMailer#sponsor_signed_email_below_threshold 1 8
EmailDuplicateSignaturesEmailJob#rate_limit 1 2
EmailDuplicateSignaturesEmailJob#perform 1 3
Archived::DeliverPetitionEmailJob#perform 1 3
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Overlaps 1 2
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Contains 1 2
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Contained 1 2
Arel::Predications#overlaps 1 2
Arel::Predications#contains 1 2
Arel::Predications#contained 1 2
Arel::Nodes::Overlaps#operator 1 2
Arel::Nodes::Contains#operator 1 2
Arel::Nodes::Contained#operator 1 2
Admin#fetch_trending_ips 1 2
Admin#fetch_petition 1 2
Admin#fetch_trending_domains 1 2
Admin#fetch_petition 1 2
Admin#admin_user_params 1 4
Admin#edit 1 1
TrendingDomain::#log! 1 2
TrendingDomain::#default_scope 1 2
TrendingDomain#window 1 2
TrendingDomain#ends_at 1 2
ModerationDelay#attributes 1 2
PetitionsCSVPresenter#initialize 1 2
Admin#petition_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
TrendingIp::#log! 1 2
TrendingIp::#default_scope 1 2
TrendingIp#geoip_db 1 2
TrendingIp#window 1 2
TrendingIp#ends_at 1 2
EmailPetitionersJob#log_message 1 2
EmailPetitionersJob#log_exception 1 2
EmailPetitionersJob#mailer_arguments 1 2
EmailPetitionersJob#perform 1 3
Archived::Rejection#hide_petition? 1 2
Holiday::#defaults 1 7
Holiday::#easter? 1 2
Holiday::#christmas? 1 2
Holiday::#instance 1 2
Holiday::#before_remove_const 1 2
Holiday#easter 1 2
Holiday#christmas 1 2
Holiday#easter? 1 2
Holiday#christmas? 1 2
Admin#petition_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Archived::EmailPetitionersJob#log_message 1 2
Archived::EmailPetitionersJob#log_exception 1 2
Archived::EmailPetitionersJob#mailer_arguments 1 2
Archived::EmailPetitionersJob#perform 1 3
FeedbackEmailJob#feedback_sending_disabled? 1 2
FeedbackEmailJob#reschedule_job 1 2
Petition::Statistics#refresh_pending_rate 1 2
Petition::Statistics#refresh_duplicate_emails 1 2
Petition::Statistics#refreshed? 1 2
Petition::Statistics#refresh! 1 6
Rejection#hide_petition? 1 2
ResetPetitionSignatureCountJob#error_message 1 2
ResetPetitionSignatureCountJob#exception 1 2
ResetPetitionSignatureCountJob#send_notification 1 2
ResetPetitionSignatureCountJob#current_time 1 2
ResetPetitionSignatureCountJob#perform 1 3
Admin#petition_params 1 5
Admin#fetch_petition 1 2
Admin#show 1 1
JobLogger#logger 1 2
JobLogger#error 1 2
JobLogger#warn 1 2
JobLogger#info 1 2
JobLogger#debug 1 2
JobLogger#initialize 1 3
PetitionCountJob#petitions 1 2
PetitionCountJob#current_time 1 2
EmailJob#set_appsignal_namespace 1 2
EmailJob#log_message 1 2
EmailJob#log_exception 1 2
EmailJob#perform 1 2
FormHelper#countries_for_select 1 2
Archived::GovernmentResponse#responded_on 1 2
#rfc2822 1 2
#to_param 1 2
#unsubscribe_token 1 2
#email 1 2
#name 1 2
EmailRequestedReceipt#possible_timestamps 1 2
EmailRequestedReceipt#valid_timestamp? 1 2
Admin#petition_params 1 2
Admin#petition_attributes 1 2
Admin#fetch_petition 1 2
Admin#show 1 1
Admin#selected_tasks 1 2
Admin#missing_tasks? 1 2
Admin#redirect_to_tasks_tab 1 2
RateLimiting#rate_limit 1 2
Location::#end_date 1 2
Location::#start_date 1 2
Location::#menu 1 2
Location::#not_expired 1 2
Location::#not_pending 1 2
Location::#current 1 2
Location::#by_name 1 2
Admin#note_params 1 2
Admin#fetch_petition 1 2
Admin#fetch_note 1 2
Admin#show 1 2
GovernmentResponse#responded_on 1 2
QuietLogger#logger 1 2
QuietLogger#initialize 1 4
Admin#send_email_to_petitioners? 1 2
Admin#params_for_update 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
StopPetitionsEarlyJob::#schedule_for 1 2
Admin#note_params 1 2
Admin#fetch_petition 1 2
Admin#fetch_note 1 2
Admin#show 1 2
Admin#send_email_to_creator_and_sponsors? 1 2
Admin#moderation_params 1 2
Admin#fetch_petition 1 2
Constituency::ApiClient#sanitize 1 2
Constituency::ApiClient#escape_path 1 2
Constituency::ApiClient#path 1 2
MarkdownHelper#options_for_renderer 1 2
MarkdownHelper#options_for_parser 1 2
MarkdownHelper#markdown_parser 1 2
MarkdownHelper#text_renderer 1 2
MarkdownHelper#html_renderer 1 2
MarkdownHelper#markdown_to_text 1 2
MarkdownHelper#markdown_to_html 1 2
EmailValidator#parsed_email 1 2
Admin#send_email_to_petitioners? 1 2
Admin#params_for_update 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
TrackersController#fetch_petition 1 2
TrackersController#petition_id 1 2
Admin#site_params 1 12
Admin#fetch_site 1 2
Admin#send_email_to_creator_and_sponsors? 1 2
Admin#rejection_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Archived::SignaturesController#token_param 1 2
Archived::SignaturesController#signature_id 1 2
FormTracking#image_loaded_at 1 2
FormTracking#form_requested_at 1 2
FormTracking#form_token 1 2
FormTracking#form_request 1 3
FormTracking#form_requests 1 3
FormTracking#form_request_id 1 2
FormTracking#build_form_request 1 2
FormTracking#generate_form_token 1 2
Statistics::#select_rows 1 2
Statistics::#connection 1 2
RejectionHelper#rejection_descriptions 1 2
AdminUserSession#last_login_attempt? 1 2
Task::#run 1 2
Task#pending? 1 2
BackfillConstituenciesJob#reschedule? 1 2
BackfillConstituenciesJob#signatures_missing_constituency_id 1 2
Admin#set_content_disposition 1 2
Admin#csv_filename 1 2
Admin#fetch_petition 1 2
Admin#fetch_signature 1 2
Admin#fetch_logs 1 2
Admin#holiday_attributes 1 2
Admin#holiday_params 1 2
Admin#fetch_holiday 1 2
ArchivedPetitionHelper#archived_petition_facets_with_counts 1 2
ArchivedPetitionHelper#archived_parliaments 1 2
ArchivedPetitionHelper#archived_threshold_percentage 1 6
NotifyTrendingDomainJob#domain_address_link 1 2
NotifyTrendingDomainJob#petition_link 1 2
NotifyTrendingDomainJob#end_time 1 2
NotifyTrendingDomainJob#start_time 1 2
NotifyTrendingDomainJob#time_format 1 2
NotifyTrendingDomainJob#slack 1 2
NotifyTrendingDomainJob#rate_limit 1 2
NotifyTrendingDomainJob#message 1 9
NotifyTrendingDomainJob#perform 1 2
GeoipLookup::ClassMethods#geoip_db 1 2
GeoipLookup#country_name_for 1 2
GeoipLookup#iso_code_for 1 2
GeoipLookup#geoip_lookup 1 2
Admin#find_rate_limit 1 2
Admin#rate_limit_attributes 1 2
Admin#rate_limit_params 1 2
PetitionHelper#reveal_government_response? 1 2
PetitionHelper#petition_list_header? 1 2
PetitionHelper#petition_list_header 1 2
PetitionHelper#public_petition_facets_with_counts 1 2
NotifyTrendingIpJob#ip_address_link 1 2
NotifyTrendingIpJob#petition_link 1 2
NotifyTrendingIpJob#end_time 1 2
NotifyTrendingIpJob#start_time 1 2
NotifyTrendingIpJob#time_format 1 2
NotifyTrendingIpJob#slack 1 2
NotifyTrendingIpJob#rate_limit 1 2
NotifyTrendingIpJob#message 1 9
NotifyTrendingIpJob#perform 1 2
Admin#send_email_to_petitioners? 1 2
Admin#government_response_params 1 2
Admin#fetch_government_response 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Admin#send_email_to_petitioners? 1 2
Admin#government_response_params 1 2
Admin#fetch_government_response 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Admin::TaskRunner#run_task 1 2
Admin::TaskRunner#initialize 1 2
Admin#send_email_to_petitioners? 1 2
Admin#debate_outcome_attributes 1 2
Admin#debate_outcome_params 1 2
Admin#fetch_debate_outcome 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Admin#fetch_petition 1 2
Admin#last_request_update_allowed? 1 2
Admin#signature_search? 1 2
Admin#petition_search? 1 2
Admin#send_email_to_petitioners? 1 2
Admin#debate_outcome_attributes 1 2
Admin#debate_outcome_params 1 2
Admin#fetch_debate_outcome 1 2
Admin#fetch_petition 1 2
Admin#show 1 2
Admin#fetch_petition 1 2
Admin#last_request_update_allowed? 1 2
Admin#last_request_update_allowed? 1 2
Admin#user_session_params 1 2
Admin#continue 1 2
Admin#status 1 1
Admin#new 1 2
EmailAllPetitionSignatories::ClassMethods#random_interval 1 2
EmailAllPetitionSignatories::ClassMethods#midnight 1 2
EmailAllPetitionSignatories::ClassMethods#later_tonight 1 2
EmailAllPetitionSignatories::ClassMethods#requested_at_iso8601 1 2
EmailAllPetitionSignatories::ClassMethods#requested_at 1 2
EmailAllPetitionSignatories::ClassMethods#run_later_tonight 1 5
EmailAllPetitionSignatories#set_appsignal_namespace 1 2
EmailAllPetitionSignatories#signatures_to_email 1 2
EmailAllPetitionSignatories#petition_timestamp 1 2
EmailAllPetitionSignatories#petition_has_been_updated? 1 2
EmailAllPetitionSignatories#mailer_arguments 1 7
ArchiveSignaturesJob#reschedule_job 1 2
Constituency::ApiQuery#client 1 2
Constituency::ApiQuery#self.before_remove_const 1 2
Admin#set_content_disposition 1 2
Admin#period 1 2
BulkVerification#raise_bad_request 1 2
BulkVerification#verify_bulk_request_id 1 2
BulkVerification#verify_bulk_request 1 2
BulkVerification#all_ids 1 2
BulkVerification#selected_ids 1 2
BulkVerification#bulk_verifier 1 2
BulkVerification#bulk_verification_token 1 2
BulkVerification#bulk_request? 1 2
FeedbackController#user_agent 1 2
FeedbackController#feedback_attributes 1 2
FeedbackController#feedback_params 1 2
Admin#admin_user_params 1 6
Admin#find_user 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#index 1 2
HomeHelper::ActionedPetitionsDecorator#actioned 1 2
HomeHelper::ActionedPetitionsDecorator#with_result 1 2
HomeHelper::ActionedPetitionsDecorator#[] 1 2
HomeHelper#petition_count 1 2
HomeHelper#actioned_petitions_decorator 1 2
HomeHelper#explanation_petitions 1 2
HomeHelper#any_actioned_petitions? 1 2
Admin#archive_parliament? 1 2
Admin#archive_petitions? 1 2
Admin#schedule_closure? 1 2
Admin#email_creators? 1 2
Admin#parliament_params 1 8
Admin#fetch_parliament 1 2
Admin#show 1 1
ApplicationHelper#original_url 1 2
ApplicationHelper#noindex_page? 1 2
ApplicationHelper#back_url 1 2
ApplicationHelper#archived_petition_page? 1 2
ApplicationHelper#open_petition_page? 1 2
ApplicationHelper#petition_page? 1 2
ApplicationHelper#create_petition_page? 1 2
ApplicationHelper#home_page? 1 2
ApplicationHelper#increment 1 3
ImportConstituenciesJob#example_postcodes 1 2
Taggable#tag_names 1 2
Taggable#tags= 1 2
Taggable#normalize_tags 1 2
Taggable#normalize_tags 1 2
Taggable#tags_column 1 2
Taggable#untagged 1 2
Taggable#tagged 1 2
Taggable#tagged_with_any 1 2
Taggable#tagged_with_all 1 2
TrendingIpsByPetitionJob#ends_at 1 2
TrendingIpsByPetitionJob#starts_at 1 2
TrendingIpsByPetitionJob#window 1 2
TrendingIpsByPetitionJob#petitions 1 2
TrendingIpsByPetitionJob#trending_ips 1 2
TrendingIpsByPetitionJob#rate_limit 1 2
TrendingDomainsByPetitionJob#ends_at 1 2
TrendingDomainsByPetitionJob#starts_at 1 2
TrendingDomainsByPetitionJob#window 1 2
TrendingDomainsByPetitionJob#petitions 1 2
TrendingDomainsByPetitionJob#trending_domains 1 2
TrendingDomainsByPetitionJob#rate_limit 1 2
PetitionCSVPresenter#admin_url 1 2
PetitionCSVPresenter#public_url 1 2
PetitionCSVPresenter#self.timestamps 1 6
PetitionCSVPresenter#self.attributes 1 7
PetitionCSVPresenter#self.urls 1 2
PetitionCSVPresenter#to_csv 1 2
PetitionCSVPresenter#initialize 1 2
PetitionCSVPresenter#self.fields 1 2
ApiPaginationLinksPresenter#api_links_allowed_components 1 2
ApiPaginationLinksPresenter#url_params 1 2
ApiPaginationLinksPresenter#first_url 1 2
ApiPaginationLinksPresenter#current_page 1 2
ApiPaginationLinksPresenter#serialize 1 7
ApiPaginationLinksPresenter#initialize 1 2
RefreshConstituencyPartyJob#members 1 2
Archived::DebateOutcome#no_commons_image_queued 1 2
Archived::DebateOutcome#image_ratio 1 2
Archived::DebateOutcome#date 1 2
DebateOutcome#no_commons_image_queued 1 2
DebateOutcome#image_ratio 1 2
DebateOutcome#date 1 2
SharingHelper#share_button 1 2
SharingHelper#share_params 1 2
SharingHelper#share_title 1 2
SharingHelper#share_via_whatsapp_params 1 2
SharingHelper#share_via_twitter_params 1 2
SharingHelper#share_via_email_params 1 2
SharingHelper#share_via_facebook_params 1 2
SharingHelper#share_via_whatsapp_url 1 2
SharingHelper#share_via_whatsapp 1 2
SharingHelper#share_via_twitter_url 1 2
SharingHelper#share_via_twitter 1 2
SharingHelper#share_via_email_url 1 2
SharingHelper#share_via_email 1 2
SharingHelper#share_via_facebook_url 1 2
SharingHelper#share_via_facebook 1 2
PageTitleHelper::PageTitleBuilder::#build 1 2
PageTitleHelper::PageTitleBuilder#formatted_postcode 1 2
PageTitleHelper::PageTitleBuilder#key 1 2
PageTitleHelper::PageTitleBuilder#action 1 2
PageTitleHelper::PageTitleBuilder#controller 1 2
PageTitleHelper::PageTitleBuilder#build 1 2
PageTitleHelper::PageTitleBuilder#initialize 1 2
PageTitleHelper#page_title 1 2
AdminHubHelper::ActionCountsDecorator#generate_counts 1 4
AdminHubHelper::ActionCountsDecorator#counts 1 2
AdminHubHelper#action_count 1 2
AdminHubHelper#action_counts 1 3
AdminHubHelper#untagged_in_moderation_count 1 2
AdminHubHelper#tagged_in_moderation_count 1 2
AdminHubHelper#overdue_in_moderation_untagged_count 1 2
AdminHubHelper#overdue_in_moderation_count 1 2
AdminHubHelper#nearly_overdue_in_moderation_count 1 2
AdminHubHelper#nearly_overdue_in_moderation_untagged_count 1 2
AdminHubHelper#recently_in_moderation_untagged_count 1 2
AdminHubHelper#recently_in_moderation_count 1 2
AdminHubHelper#in_moderation_count 1 2
AdminHubHelper#archived_petition_total_count 1 2
AdminHubHelper#petition_total_count 1 2
UpdateSignatureCountsJob#scheduled_time 1 2
UpdateSignatureCountsJob#reschedule_job 1 2
UpdateSignatureCountsJob#petitions 1 2
UpdateSignatureCountsJob#petition_ids 1 2
UpdateSignatureCountsJob#log_message 1 2
UpdateSignatureCountsJob#log_exception 1 2
UpdateSignatureCountsJob#current_time 1 2
DateTimeHelper#easter_period? 1 2
DateTimeHelper#christmas_period? 1 2
DateTimeHelper#scheduled_for_debate_in_words 1 6
DateTimeHelper#last_updated_at_time 1 2
DateTimeHelper#local_date_time_format 1 2
DateTimeHelper#date_format_admin 1 2
DateTimeHelper#date_format 1 2
DateTimeHelper#short_date_time_format 1 2
DateTimeHelper#short_date_format 1 2
Admin#search_params 1 2
Admin#fetch_signature 1 2
Admin#fetch_signatures 1 2
Archived::PetitionMailer#unsubscribe_url 1 2
Archived::PetitionMailer#signature_belongs_to_creator? 1 2
Archived::PetitionMailer#subject_for 1 2
Archived::PetitionMailer#notify_creator_of_debate_scheduled 1 5
Archived::PetitionMailer#notify_signer_of_debate_scheduled 1 6
Archived::PetitionMailer#notify_creator_of_threshold_response 1 7
Archived::PetitionMailer#notify_signer_of_threshold_response 1 7
Archived::PetitionMailer#email_creator 1 5
Archived::PetitionMailer#email_signer 1 6
Authentication#set_login_timeout 1 2
Authentication#store_target_location 1 2
Authentication#redirect_to_target_or_default 1 3
Authentication#logged_in? 1 2
EmailDelivery#set_appsignal_namespace 1 2
EmailDelivery#email_not_previously_sent? 1 3
EmailDelivery#petition_has_not_been_updated? 1 2
EmailDelivery#petition_timestamp 1 2
EmailDelivery#record_email_sent 1 2
EmailDelivery#create_email 1 2
EmailDelivery#send_email 1 2
EmailDelivery#can_send_email? 1 2
EmailDelivery#log_message 1 2
EmailDelivery#log_exception 1 2
Admin#example_petition 1 2
Admin#feedback_signature 1 2
Admin#send_email_to_creators? 1 2
Admin#save_attributes_to_session 1 2
Admin#build_moderation_delay 1 2
CountryPetitionJournal::#update_all 1 2
CountryPetitionJournal::#decrement_signature_count 1 3
CountryPetitionJournal::#reset_signature_count 1 3
CountryPetitionJournal::#increment_signature_count 1 3
CountryPetitionJournal::#signature_counts 1 2
CountryPetitionJournal::#unrecordable? 1 2
CountryPetitionJournal::#last_signed_at 1 2
CountryPetitionJournal::#older_than 1 2
Admin#csv_filename 1 2
Admin#set_streaming_headers 1 5
Admin#set_file_headers 1 3
Admin#render_csv 1 6
Admin#fetch_petition 1 2
Admin#fetch_petitions 1 2
Admin#redirect_to_show_page 1 2
Admin#petition_id? 1 2
Admin#resend 1 3
ArchivePetitionJob#parliament 1 2
ConstituencyPetitionJournal::#update_all 1 2
ConstituencyPetitionJournal::#decrement_signature_count 1 3
ConstituencyPetitionJournal::#reset_signature_count 1 3
ConstituencyPetitionJournal::#increment_signature_count 1 3
ConstituencyPetitionJournal::#signature_counts 1 2
ConstituencyPetitionJournal::#unrecordable? 1 2
ConstituencyPetitionJournal::#last_signed_at 1 2
ConstituencyPetitionJournal::#with_signatures_for 1 2
ConstituencyPetitionJournal::#ordered 1 2
ConstituencyPetitionJournal::#older_than 1 2
Archived#set_content_disposition 1 2
Archived#archived_petition_facets 1 2
Archived#search_params 1 2
Archived#valid_state? 1 2
Archived#state_present? 1 2
Archived#csv_filename 1 2
#in_debate_queue 1 2
#for_state 1 2
#debated 1 2
#debateable 1 2
#debate_threshold_reached 1 2
#collecting_sponsors 1 2
#awaiting_response 1 2
#awaiting_debate_date 1 2
#awaiting_debate 1 2
#stopped_state 1 2
#sponsored_state 1 2
#rejected_state 1 2
#hidden_state 1 2
#closed_state 1 2
#open_state 1 2
#current 1 2
#by_waiting_for_response_longest 1 2
#by_waiting_for_debate_longest 1 2
#by_oldest 1 2
#by_most_relevant_debate_date 1 2
#by_most_recent_response 1 2
#by_most_recent_moderation_threshold_reached 1 2
#by_most_recent_debate_outcome 1 2
#by_most_recent 1 2
Site::#table_exists? 1 2

Analyzed Classes

Class Name Complexity # Lines
Petition 203 891
Signature 188 778
PackageBuilder 93 463
90 374
Archived::Petition 86 389
83 342
RateLimit 81 309
SignaturesController 67 252
Invalidation 64 221
PetitionCreator 62 233
Site:: 61 264
PetitionsController 56 181
Site 52 196
Archived::Signature:: 48 183
AdminHelper 40 179
AdminUser 36 122
Admin 36 133
CacheHelper::CacheKey::Dependencies::Keys 36 147
ActiveSupport::Cache::AtomicDalliStore 35 81
34 138
Domain 33 112
Browseable::Search 33 133
Admin 32 143
AutoLinkHelper::AutoLinker 30 119
PetitionMailer 30 178
ApplicationController 28 104
Parliament 27 111
Constituency 26 107
SponsorsController 25 100
Admin 25 100
SignatureLogs::Log 24 59
Archived::Signature 24 128
LocalPetitionsController 23 82
Admin 23 82
Admin 22 77
SignatureLogs 22 104
Admin 21 97
HealthCheck 21 72
Archived 21 87
ConstituencyPetitionJournal:: 21 78
Admin 21 97
ArchivePetitionJob 20 115
Admin 20 83
Parliament:: 20 80
CountryPetitionJournal:: 19 70
Admin 18 74
EmailDelivery 18 109
Admin 17 81
Authentication 17 63
17 52
Archived::PetitionMailer 17 104
AdminHubHelper 16 65
PageTitleHelper::PageTitleBuilder 16 68
DateTimeHelper 16 71
UpdateSignatureCountsJob 16 88
SharingHelper 15 62
DebateOutcome 15 73
Archived::DebateOutcome 15 74
RefreshConstituencyPartyJob 15 72
PetitionCSVPresenter 14 64
ApiPaginationLinksPresenter 14 72
Domain:: 14 40
Taggable 14 51
TrendingIpsByPetitionJob 14 56
TrendingDomainsByPetitionJob 14 55
Admin 13 60
FeedbackController 13 43
Admin 13 62
HomeHelper 13 45
ApplicationHelper 13 61
ImportConstituenciesJob 13 61
Browseable::Facets 12 47
Admin 11 43
CacheHelper::CacheKey::Dependencies 11 44
Admin 11 41
Constituency::ApiQuery 11 58
ArchiveSignaturesJob 11 73
EmailAllPetitionSignatories 11 68
BulkVerification 11 49
Admin 10 36
Admin 10 44
Admin 10 48
Admin 10 48
EmailReminder 10 45
Admin 10 44
PagesController 10 34
FetchCountryRegisterJob 10 44
Admin::TaskRunner 10 39
Invalidation:: 9 36
9 32
Admin 9 44
How 9 17
DeprecatedAttributes 9 26
NotifyTrendingIpJob 9 51
PetitionHelper 9 35
Admin 9 33
GeoipLookup::ClassMethods 9 24
NotifyTrendingDomainJob 9 51
ArchivedPetitionHelper 9 38
Admin 9 33
Admin 9 44
Statistics:: 8 42
FormTracking 8 38
Archived::SignaturesController 8 37
Admin 8 35
Admin 8 39
TrackersController 8 37
BackfillConstituenciesJob 8 32
Task 8 35
Admin 8 36
Privacy 8 94
NotifyEveryoneOfModerationDecisionJob 8 33
AdminUserSession 8 30
SearchHelper 8 30
RejectionHelper 8 26
FlashI18n 8 29
Admin 7 35
Location:: 7 30
Admin 7 33
GovernmentResponse 7 27
QuietLogger 7 26
HomeHelper::ActionedPetitionsDecorator 7 37
Admin 7 35
EmailValidator 7 23
MarkdownHelper 7 44
Constituency::ApiClient 7 33
Admin 7 31
Admin 7 33
DebateOutcomeHelper 7 22
StopPetitionsEarlyJob 7 30
British::If 6 68
GeoipLookup 6 26
RateLimiting 6 32
6 39
FlashRender 6 22
Admin 6 28
Admin 6 27
EmailRequestedReceipt 6 24
6 22
Archived::GovernmentResponse 6 25
FormHelper 6 18
EmailJob 6 50
SocialMetaHelper 6 20
PetitionCountJob 6 25
JobLogger 6 36
EmailAllPetitionSignatories::ClassMethods 6 29
AuditLogger 6 22
BackfillCanonicalEmailsJob 5 19
EmailPetitionersJob 5 31
Admin 5 24
BackfillSignatureUuidsJob 5 19
TrendingIp 5 35
Admin 5 26
ResetPetitionSignatureCountJob 5 27
Rejection 5 25
Petition::Statistics 5 28
FeedbackEmailJob 5 23
Archived::EmailPetitionersJob 5 31
Admin 5 24
5 33
Holiday:: 5 27
Archived::Rejection 5 25
CacheHelper::CacheKey::Dependencies::Keys:: 4 18
Holiday 4 20
TrendingIp:: 4 21
4 18
PetitionsCSVPresenter 4 16
ModerationDelay 4 21
ArchivePetitionsJob 4 13
TrendingDomain:: 4 21
Admin 4 19
Admin 4 19
4 27
Admin 4 19
Archived::DeliverPetitionEmailJob 3 17
DeliverPetitionEmailJob 3 17
Task:: 3 14
ConstituenciesController 3 11
EnqueuePetitionStatisticsUpdatesJob 3 12
NotifyCreatorsThatModerationIsDelayedJob 3 14
HealthCheckMiddleware 3 18
DeletePetitionsJob 3 12
Admin 3 23
Arel::Predications 3 12
PerishableTokenGenerator 3 10
NotifyCreatorsThatParliamentIsDissolvingJob 3 14
SponsorMailer 3 29
:: 3 13
Browseable::ClassMethods 3 12
3 21
Arel::Visitors::PostgreSQL 3 14
EmailDuplicateSignaturesEmailJob 3 18
NotifyCreatorOfValidatedPetitionBeingStoppedJob 2 11
Debate 2 6
SignatureHelper 2 10
Admin 2 14
Archived::DeliverThresholdResponseEmailJob 2 10
Archived::DeliverDebateOutcomeEmailJob 2 10
DeliverDebateScheduledEmailJob 2 10
SponsorSignedEmailOnThresholdEmailJob 2 9
SponsorSignedEmailBelowThresholdEmailJob 2 9
Archived::DeliverDebateScheduledEmailJob 2 10
ApplicationJob 2 13
NotifyCreatorThatParliamentIsDissolvingJob 2 11
DeliverThresholdResponseEmailJob 2 10
InvalidateSignaturesJob 2 10
PostcodeValidator 2 11
CloudFrontRemoteIp::CloudFrontGetIp 2 13
DeliverDebateOutcomeEmailJob 2 10
2 0
NotifyCreatorOfSponsoredPetitionBeingStoppedJob 2 11
Tag 2 25
Sign 2 2
Debate 2 6
2 0
AdminMailer 2 7
TrendingDomain 2 18
2 9
2 15
You 2 36
Admin::TaskRunner:: 2 7
AdminHubHelper::ActionCountsDecorator 2 14
Browseable::Filters 2 11
PackageBuilder:: 2 8
2 0
1 0
1 0
1 0
::::::View 1 3
1 43
1 0
1 0
1 0
:::::::::::::::::::: 1 5
Government 1 3
1 0
1 0
1 3
::You 1 3
StopPetitionsEarlyJob:: 1 4
ModerationHelper 1 4
PostcodeSanitizer 1 4
Other:: 1 8
1 0
Arel::Nodes::Overlaps 1 4
PageTitleHelper::PageTitleBuilder:: 1 4
Arel::Nodes::Contains 1 4
PageTitleHelper 1 6
Arel::Nodes::Contained 1 4
1 0
::Edit 1 4
1 0
::Edit 1 4
Government 1 3
Other:: 1 8
1 0
CacheHelper::CacheKey::Dependencies::Keys::Fragment 1 9
1 0
:: 1 6
Search::::Match 1 5
1 5
::::::Threshold 1 3
1 0
::Feedback 1 2
1 0
:: 1 2
::Other 1 3
1 0
::We’ve::If 1 6
PingController 1 7
EmailThresholdReminderJob 1 6
1 2
SignatureLogs:: 1 4
ClosePetitionsEarlyJob 1 8
ClosePetitionsEarlyJob:: 1 4
NotifyCreatorThatModerationIsDelayedJob 1 9
DebatedPetitionsJob 1 7
DeletePetitionJob 1 6
1 0
1 4
RefreshConstituenciesJob 1 6
UpdatePetitionStatisticsJob 1 6
1 0
AutoLinkHelper 1 6
ClosePetitionsJob 1 6
About 1 10
:::: 1 2
Archived:: 1 4
Feedback 1 8
FeedbackMailer 1 8
Browseable 1 18
ApplicationMailer 1 7
1 0
CloudFrontRemoteIp 1 10
1 0
1 0
1 0
1 0
Tag:: 1 4
1 0
1 0
1 0
1 0
1 0
1 1
1 0
:::::: 1 1
1 0
1 4
1 9
1 1
1 0
Archived 0 1
:: 0 3
:::: 0 1
:::::: 0 3
:::::::: 0 1
0 0
:::::::::: 0 3
:::::::::::: 0 1
:::::::::::::: 0 6
Location 0 5
0 0
Tags 0 3
GatherSponsorsForPetitionEmailJob 0 3
Local 0 2
EmailThresholdResponseJob 0 5
0 0
0 1
::Use 0 1
0 3
Constituency 0 2
0 3
0 11
0 2
0 2
NotifyCreatorThatPetitionWasRejectedEmailJob 0 3
0 1
::This 0 3
Archived 0 2
::This:: 0 1
::This::::Override 0 2
0 2
Statistics 0 2
NotifySponsorThatPetitionIsPublishedEmailJob 0 3
EmailConfirmationForSignerEmailJob 0 5
0 2
Head 0 24
0 0
0 2
British 0 8
0 2
0 4
0 1
0 0
0 0
0 0
0 0
0 1
:: 0 3
:::: 0 1
:::::: 0 1
:::::::: 0 0
0 2
:: 0 10
0 1
:: 0 1
:::: 0 4
::::::Summary 0 8
Archived::EmailDebateOutcomesJob 0 5
Blocked 0 34
Admin 0 2
0 10
0 0
0 7
Tags 0 3
0 3
Petition 0 2
Petition::Email 0 6
0 12
0 2
:: 0 6
0 2
:: 0 2
0 2
Constituency 0 2
:: 0 1
BulkVerification::InvalidBulkRequest 0 0
::::Edit 0 1
::::Edit:: 0 4
Take 0 0
Change 0 1
0 1
::Your 0 4
0 0
Archived 0 2
Archived::Petition 0 2
Archived::Petition::Email 0 6
0 0
0 1
:: 0 2
::::We 0 0
Archived 0 2
Archived 0 1
Archived::Note 0 4
0 0
0 1
NotifySponsorThatPetitionWasRejectedEmailJob 0 3
:: 0 2
:::: 0 1
::::::Show 0 2
::::::Show:: 0 1
0 2
Archived 0 2
0 2
Get 0 2
Example 0 1
Example::Introduce 0 3
Example::Introduce::Russia 0 4
CountryPetitionJournal 0 11
Start 0 0
0 1
:: 0 1
ConstituencyPetitionJournal 0 11
::::Find 0 0
::::Find::Get 0 2
0 0
Note 0 4
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 1
0 2
::Date 0 1
::Date:: 0 1
::Date:::: 0 3
0 0
0 0
Check 0 2
Check:: 0 0
0 2
PetitionAndEmailConfirmationForSponsorEmailJob 0 5
0 0
0 0
0 0
0 1
ActiveSupport::Cache 0 2
ActiveSupport 0 2
0 1
:::::: 0 3
:::: 0 1
:: 0 3
0 1
0 0
:::: 0 3
:: 0 1
0 1
:::: 0 1
:: 0 3
0 1
:::: 0 1
:: 0 3
0 1
0 0
0 0
Other 0 4
0 1
0 1
0 2
0 1
:: 0 1
0 2
:::: 0 1
:: 0 2
0 1
AdminUser::MustBeAtLeastOneAdminUser 0 0
:::::::: 0 1
AdminUser::CannotDeleteCurrentUser 0 0
:: 0 1
0 1
Archived 0 2
:: 0 1
Archived 0 2
:::: 0 1
CacheHelper::CacheKey 0 2
CacheHelper 0 1
0 5
Archived 0 2
0 1
0 2
::Rejected 0 12
0 0
Archived 0 2
0 1
::The 0 4
Site::ServiceUnavailable 0 0
Get 0 2
EmailDebateOutcomesJob 0 5
:::::: 0 3
0 0
Archived 0 2
Archived::EmailThresholdResponseJob 0 5
Archived 0 2
:::::::::: 0 3
:::::::::::: 0 1
:::::::::::::: 0 3
:::::::::::::::: 0 1
:::::::::::::::::: 0 3
0 0
0 1
Archived 0 2
::You:: 0 1
Arel::Visitors 0 2
::You::::Continue 0 4
Arel::Nodes 0 6
Arel 0 6
0 1
Other 0 4
Archived::EmailDebateScheduledJob 0 5
Search 0 8
Search:: 0 1
Archived 0 2
0 1
0 1
0 1
::We’ve 0 8
Archived 0 2
Archived 0 2
FeedbackEmailJob::SendingDisabledError 0 0
Petition 0 2
ResetPetitionSignatureCountJob::InvalidSignatureCount 0 0
Archived 0 2
0 0
0 1
0 1
Contact 0 6
Archived 0 2
EmailDebateScheduledJob 0 5
NotifyCreatorThatPetitionIsPublishedEmailJob 0 3
Make 0 1
0 0
0 1
:: 0 2
0 1
:::::::::::::::::::::::::::::::::::::::: 0 1
:::::::::::::::::::::::::::::::::::::: 0 3
:::::::::::::::::::::::::::::::::::: 0 1
:::::::::::::::::::::::::::::::::: 0 3
:::::::::::::::::::::::::::::::: 0 1
:::::::::::::::::::::::::::::: 0 3
:::::::::::::::::::::::::::: 0 1
:::::::::::::::::::::::::: 0 3
:::::::::::::::::::::::: 0 1
:::::::::::::::::::::: 0 3
:::::::::::::::::::: 0 1
:::::::::::::::::: 0 3
:::::::::::::::: 0 1
:::::::::::::: 0 3
:::::::::::: 0 1
:::::::::: 0 3
:::::::: 0 1
Search 0 3

Analyzed Files

app/models/petition.rb

Class :

Total complexity : 83
Total lines : 342
Method Complexity # Lines
#in_moderation 4 10
#stop_petitions_early! 2 4
#close_petitions_early! 2 4
#close_petitions! 2 4
#in_need_of_stopping 2 3
#open_at_dissolution 2 13
#moderation_overdue_at 1 2
#moderation_near_overdue_at 1 2
#moderation_threshold_reached_at 1 2
#signature_count_validated_at 1 2
#last_signed_at 1 2
#grouping 1 2
#in_need_of_validating 1 2
#signed_since 1 2
#untagged_in_moderation 1 2
#tagged_in_moderation 1 2
#overdue_in_moderation 1 2
#nearly_overdue_in_moderation 1 2
#recently_in_moderation 1 2
#unarchived 1 2
#mark_petitions_as_debated! 1 2
#in_need_of_marking_as_debated 1 2
#sanitized_tag 1 2
#all_popular_in_constituency 1 2
#popular_in_constituency 1 2
#created_after 1 2
#in_need_of_closing 1 2
#trending 1 9
#with_response 1 2
#with_debated_outcome 1 2
#with_debate_outcome 1 2
#visible 1 2
#todo_list 1 2
#threshold 1 2
#show 1 2
#stoppable 1 2
#selectable 1 2
#response_threshold_reached 1 2
#respondable 1 2
#not_scheduled 1 2
#not_responded 1 2
#not_hidden 1 2
#not_debated 1 2
#moderated 1 2
#by_most_popular 1 2
#debate_date_in_the_past 1 2
#awaiting_debate_state 1 2
#scheduled_for_debate 1 2
#threshold_for_debate_reached 1 2
#popular_in 1 9
#in_debate_queue 1 2
#for_state 1 2
#debated 1 2
#debateable 1 2
#debate_threshold_reached 1 2
#collecting_sponsors 1 2
#awaiting_response 1 2
#awaiting_debate_date 1 2
#awaiting_debate 1 2
#stopped_state 1 2
#sponsored_state 1 2
#rejected_state 1 2
#hidden_state 1 2
#closed_state 1 2
#open_state 1 2
#current 1 2
#by_waiting_for_response_longest 1 2
#by_waiting_for_debate_longest 1 2
#by_oldest 1 2
#by_most_relevant_debate_date 1 2
#by_most_recent_response 1 2
#by_most_recent_moderation_threshold_reached 1 2
#by_most_recent_debate_outcome 1 2
#by_most_recent 1 2
#scheduled_debate_state 1 2

app/models/signature.rb

Class :

Total complexity : 90
Total lines : 374
Method Complexity # Lines
#search 11 40
#unsubscribe! 5 14
#trending_ips_by_petition 4 18
#validate! 3 8
#destroy! 3 8
#subscribe! 3 8
#validated 3 5
#invalidate! 3 8
#trending_domains_by_petition 3 12
#column_name_for 2 4
#ip_search? 2 4
#missing_constituency_id 2 6
#validated_count_by_constituency_id 1 2
#validated_count_by_location_code 1 2
#validated_count 1 2
#unarchived 1 2
#uk 1 2
#trending_ips 1 8
#trending_domains 1 8
#fraudulent_ips 1 8
#fraudulent_domains 1 8
#subscribed 1 2
#sponsors 1 2
#creator 1 2
#petition_ids_signed_since 1 2
#total 1 2
#pending 1 2
#need_emailing_for 1 2
#invalidated 1 2
#fraudulent_domains 1 6
#fraudulent 1 2
#for_timestamp 1 3
#for_sector 1 2
#for_postcode 1 2
#for_petition 1 2
#for_name 1 2
#for_ip 1 2
#for_invalidating 1 2
#for_email 1 2
#for_domain 1 2
#similar 1 2
#pending_rate 1 2
#duplicate_emails 1 2
#duplicate 1 2
#batch 1 2
#normalize_user 1 2
#normalize_email 1 2
#max_validated_at 1 2
#count_star 1 2
#validated_at 1 2
#sector_search? 1 2
#postcode_search? 1 2
#petition_search? 1 2
#email_search? 1 2
#domain_search? 1 2
#validated? 1 2
#by_most_recent 1 2
#normalize_domain 1 2

lib/package_builder.rb

Class : PackageBuilder

Total complexity : 93
Total lines : 463
Method Complexity # Lines
PackageBuilder#track_progress 6 27
PackageBuilder#deploy! 5 13
PackageBuilder#notify_appsignal 4 22
PackageBuilder#build! 3 18
PackageBuilder#deployment_config_name 3 11
PackageBuilder#notify_slack 2 5
PackageBuilder#package_gems 2 7
PackageBuilder#create_deployment! 2 9
PackageBuilder#website_url 2 6
PackageBuilder#write_scripts 2 9
PackageBuilder#deployment_key 2 2
PackageBuilder#build_package 2 11
PackageBuilder#appspec_yaml 1 2
PackageBuilder#appspec_file 1 2
PackageBuilder#scripts_path 1 2
PackageBuilder#write_script 1 3
PackageBuilder#write_appspec 1 2
PackageBuilder#treeish 1 2
PackageBuilder#deployment_progress 1 8
PackageBuilder#deployment_complete 1 8
PackageBuilder#skip_gems? 1 2
PackageBuilder#skip_build? 1 2
PackageBuilder#commit_url 1 2
PackageBuilder#short_revision 1 2
PackageBuilder#revision_file 1 2
PackageBuilder#remove_artifacts 1 6
PackageBuilder#remove_archive 1 6
PackageBuilder#release_key 1 2
PackageBuilder#release_bucket 1 2
PackageBuilder#region 1 2
PackageBuilder#pull_request? 1 2
PackageBuilder#slack_options 1 2
PackageBuilder#slack_message 1 2
PackageBuilder#slack_webhook 1 2
PackageBuilder#username 1 2
PackageBuilder#appsignal_push_api_key 1 2
PackageBuilder#deploy_release? 1 2
PackageBuilder#profile 1 2
PackageBuilder#package_path 1 2
PackageBuilder#package_name 1 2
PackageBuilder#latest_key 1 2
PackageBuilder#info 1 2
PackageBuilder#extract_archive 1 7
PackageBuilder#description 1 2
PackageBuilder#deployment_group_name 1 2
PackageBuilder#deployment_config 1 16
PackageBuilder#deploy_build? 1 2
PackageBuilder#deploy_branch? 1 2
PackageBuilder#credentials 1 2
PackageBuilder#create_revision_file 1 2
PackageBuilder#create_archive 1 9
PackageBuilder#ci? 1 2
PackageBuilder#archive_path 1 2
PackageBuilder#archive_name 1 2
PackageBuilder#archive_file 1 2
PackageBuilder#application_name 1 2
PackageBuilder#upload! 1 12
PackageBuilder#initialize 1 6
PackageBuilder#deregister_from_elb_script 1 2
PackageBuilder#common_functions_script 1 2
PackageBuilder#register_with_elb_script_file 1 2
PackageBuilder#deregister_from_elb_script_file 1 2
PackageBuilder#common_functions_script_file 1 2
PackageBuilder#after_install_script 1 2
PackageBuilder#after_install_script_file 1 2
PackageBuilder#application_stop_script 1 2
PackageBuilder#application_stop_script_file 1 2
PackageBuilder#application_start_script 1 2
PackageBuilder#application_start_script_file 1 2
PackageBuilder#register_with_elb_script 1 2

lib/package_builder.rb

Class : PackageBuilder::

Total complexity : 2
Total lines : 8
Method Complexity # Lines
PackageBuilder::#deploy! 1 2
PackageBuilder::#build! 1 2

app/models/archived/petition.rb

Class :

Total complexity : 34
Total lines : 138
Method Complexity # Lines
#for_state 1 2
#threshold_for_debate_reached 1 2
#scheduled_debate_state 1 2
#debate_date_in_the_past 1 2
#in_debate_queue 1 2
#mark_petitions_as_debated! 1 2
#in_need_of_marking_as_debated 1 2
#visible 1 2
#with_debated_outcome 1 2
#with_debate_outcome 1 2
#not_scheduled 1 2
#debate_scheduled 1 2
#debate_threshold_reached 1 2
#not_debated 1 2
#debated 1 2
#debateable 1 2
#hidden 1 2
#rejected 1 2
#closed 1 2
#stopped 1 2
#moderated 1 2
#published 1 2
#response_threshold_reached 1 2
#with_response 1 2
#not_responded 1 2
#awaiting_response 1 2
#awaiting_debate_date 1 2
#by_waiting_for_response_longest 1 2
#by_most_signatures 1 2
#by_most_recent 1 2
#by_waiting_for_debate_longest 1 2
#by_most_recent_debate_outcome 1 2
#by_created_at 1 2
#scheduled_for_debate 1 2

app/models/rate_limit.rb

Class : RateLimit

Total complexity : 81
Total lines : 309
Method Complexity # Lines
RateLimit#exceeded? 8 13
RateLimit#threshold_reached? 5 7
RateLimit#convert_glob 4 8
RateLimit#use_country_rate? 2 6
RateLimit#validate_domain! 2 6
RateLimit#country_for_ip 2 8
RateLimit#ip_blocked? 2 2
RateLimit#build_blocked_ips 2 5
RateLimit#ip_allowed? 2 2
RateLimit#build_allowed_ips 2 5
RateLimit#domain_blocked? 2 2
RateLimit#build_blocked_domains 2 5
RateLimit#domain_allowed? 2 2
RateLimit#build_allowed_domains 2 5
RateLimit#build_ignored_domains 2 2
RateLimit#ip_geoblocked? 1 2
RateLimit#reload 1 9
RateLimit#allowed_ips= 1 3
RateLimit#blocked_domains_list 1 2
RateLimit#blocked_domains= 1 3
RateLimit#allowed_domains_list 1 2
RateLimit#allowed_domains= 1 3
RateLimit#ignore_ip? 1 2
RateLimit#ignore_domain? 1 2
RateLimit#sustained_rate_exceeded? 1 2
RateLimit#strip_blank_lines 1 2
RateLimit#strip_comments 1 2
RateLimit#ignored_domains_list 1 2
RateLimit#ignored_domains= 1 3
RateLimit#countries= 1 3
RateLimit#allowed_countries 1 2
RateLimit#rate_exceeded? 1 2
RateLimit#country_sustained_rate_exceeded? 1 2
RateLimit#country_burst_rate_exceeded? 1 2
RateLimit#country_rate_exceeded? 1 2
RateLimit#blocked_ips_list 1 2
RateLimit#normalize_lines 1 2
RateLimit#blocked_ips= 1 3
RateLimit#burst_rate_exceeded? 1 2
RateLimit#geoip_db 1 2
RateLimit#allowed_ips_list 1 2
RateLimit#country_blocked? 1 2
RateLimit#build_allowed_countries 1 2

app/controllers/signatures_controller.rb

Class : SignaturesController

Total complexity : 67
Total lines : 252
Method Complexity # Lines
SignaturesController#confirm 4 4
SignaturesController#send_email_to_petition_signer 3 8
SignaturesController#signed 3 8
SignaturesController#expired_form_requests 3 4
SignaturesController#form_request_timestamps 2 2
SignaturesController#expire_form_requests 2 5
SignaturesController#verify_signed_token 2 4
SignaturesController#verify_token 2 4
SignaturesController#redirect_to_petition_page_if_closed 2 4
SignaturesController#thank_you 2 4
SignaturesController#unsubscribe 2 6
SignaturesController#verify 2 7
SignaturesController#create 2 7
SignaturesController#build_signature 2 6
SignaturesController#retrieve_signature 2 7
SignaturesController#redirect_to_petition_page_if_closed_for_signing 2 4
SignaturesController#verify_unsubscribe_token 2 4
SignaturesController#expire_signed_tokens 2 2
SignaturesController#redirect_to_petition_page_if_rejected 2 4
SignaturesController#new 2 4
SignaturesController#signature_params_for_create 1 7
SignaturesController#signature_params 1 2
SignaturesController#signature_params_for_new 1 6
SignaturesController#signed_token_failure_url 1 2
SignaturesController#thank_you_url 1 2
SignaturesController#retrieve_petition 1 2
SignaturesController#store_signed_token_in_session 1 2
SignaturesController#signed_token_hash 1 2
SignaturesController#session_signed_token 1 2
SignaturesController#signed_tokens 1 2
SignaturesController#delete_form_request 1 3
SignaturesController#form_request_expired? 1 2
SignaturesController#form_request_max_age 1 2
SignaturesController#last_form_request_timestamp 1 2
SignaturesController#token_param 1 2
SignaturesController#signature_id 1 2
SignaturesController#petition_id 1 2
SignaturesController#signature_attributes 1 2

app/models/invalidation.rb

Class : Invalidation

Total complexity : 64
Total lines : 221
Method Complexity # Lines
Invalidation#matching_signatures 10 13
Invalidation#invalidate! 6 21
Invalidation#percent_completed 4 6
Invalidation#date_range_scope 3 10
Invalidation#cancel! 2 4
Invalidation#domain_scope 2 6
Invalidation#email_scope 2 6
Invalidation#name_scope 2 6
Invalidation#start! 2 5
Invalidation#count! 2 4
Invalidation#applied_conditions 2 2
Invalidation#postcode_scope 1 2
Invalidation#petition_scope 1 2
Invalidation#date_range? 1 2
Invalidation#table 1 2
Invalidation#calculate_percent_complete 1 2
Invalidation#running? 1 2
Invalidation#pending? 1 2
Invalidation#enqueued? 1 2
Invalidation#location_code_scope 1 2
Invalidation#constituency_id_scope 1 2
Invalidation#started? 1 2
Invalidation#completed? 1 2
Invalidation#ip_address_scope 1 2
Invalidation#cancelled? 1 2

app/models/invalidation.rb

Class : Invalidation::

Total complexity : 9
Total lines : 36
Method Complexity # Lines
Invalidation::#by_most_recent 1 2
Invalidation::#running 1 2
Invalidation::#pending 1 2
Invalidation::#not_completed 1 2
Invalidation::#enqueued 1 2
Invalidation::#completed 1 2
Invalidation::#cancelled 1 2
Invalidation::#by_longest_running 1 2
Invalidation::#started 1 2

app/models/petition_creator.rb

Class : PetitionCreator

Total complexity : 62
Total lines : 233
Method Complexity # Lines
PetitionCreator#validate_creator 13 25
PetitionCreator#validate_petition 7 10
PetitionCreator#save 6 34
PetitionCreator#validate 2 6
PetitionCreator#to_param 2 6
PetitionCreator#stage 2 2
PetitionCreator#replay_email? 1 2
PetitionCreator#valid? 1 4
PetitionCreator#next_stage 1 2
PetitionCreator#previous_stage 1 2
PetitionCreator#stage_index 1 2
PetitionCreator#moving_backwards? 1 2
PetitionCreator#petition_creator_params 1 2
PetitionCreator#stage_param 1 2
PetitionCreator#query_param 1 2
PetitionCreator#notify_by_email 1 2
PetitionCreator#uk_citizenship 1 2
PetitionCreator#location_code 1 2
PetitionCreator#postcode 1 2
PetitionCreator#email 1 2
PetitionCreator#name 1 2
PetitionCreator#additional_details 1 2
PetitionCreator#background? 1 2
PetitionCreator#background 1 2
PetitionCreator#action? 1 2
PetitionCreator#action 1 2
PetitionCreator#initialize 1 4
PetitionCreator#constituency_id 1 2
PetitionCreator#constituency 1 2
PetitionCreator#postcode_validator 1 2
PetitionCreator#email_validator 1 2
PetitionCreator#done? 1 2
PetitionCreator#duplicates 1 2
PetitionCreator#to_partial_path 1 2
PetitionCreator#read_attribute_for_validation 1 2
PetitionCreator#send_email_to_gather_sponsors 1 2

app/models/site.rb

Class : Site

Total complexity : 52
Total lines : 196
Method Complexity # Lines
Site#standard_port 2 5
Site#port_string 2 2
Site#database_migrating? 2 2
Site#update_all 2 6
Site#opened_at_for_closing 2 8
Site#password= 2 6
Site#constraints_for_moderation 2 4
Site#constraints_for_public 2 4
Site#type_cast_feature_flag 2 2
Site#host 1 2
Site#formatted_threshold_for_debate 1 2
Site#formatted_threshold_for_response 1 2
Site#password_digest 1 2
Site#formatted_threshold_for_moderation 1 2
Site#moderate_protocol 1 2
Site#moderate_port 1 2
Site#moderate_host_with_port 1 2
Site#moderate_host 1 2
Site#email_protocol 1 2
Site#authenticate 1 2
Site#moderate_uri 1 2
Site#uri 1 2
Site#standard_port? 1 2
Site#protocol 1 2
Site#port 1 2
Site#host_with_port 1 2
Site#scope 1 2
Site#closed_at_for_opening 1 2

app/models/site.rb

Class : Site::

Total complexity : 61
Total lines : 264
Method Complexity # Lines
Site::#constraints_for_moderation 2 6
Site::#default_moderate_url 2 6
Site::#default_url 2 6
Site::#constraints_for_public 2 6
Site::#default_threshold_for_moderation_delay 1 2
Site::#default_threshold_for_moderation 1 2
Site::#default_maximum_number_of_sponsors 1 2
Site::#default_minimum_number_of_sponsors 1 2
Site::#default_petition_duration 1 2
Site::#default_login_timeout 1 2
Site::#default_protected 1 2
Site::#default_enabled 1 2
Site::#default_password 1 2
Site::#default_username 1 2
Site::#default_feedback_email 1 2
Site::#default_email_from 1 2
Site::#default_port 1 2
Site::#default_moderate_host 1 2
Site::#default_moderate_url_components 1 2
Site::#default_domain 1 2
Site::#default_host 1 2
Site::#default_url_components 1 2
Site::#default_protocol 1 2
Site::#default_scheme 1 2
Site::#default_title 1 2
Site::#defaults 1 20
Site::#moderation_near_overdue_in_days 1 2
Site::#moderation_overdue_in_days 1 2
Site::#signature_count_updated_at! 1 2
Site::#last_petition_created_at! 1 2
Site::#last_checked_at! 1 2
Site::#enable_signature_counts! 1 2
Site::#disable_signature_counts! 1 2
Site::#touch 1 2
Site::#reload 1 2
Site::#login_timeout 1 2
Site::#protected? 1 2
Site::#port 1 2
Site::#closed_at_for_opening 1 2
Site::#opened_at_for_closing 1 2
Site::#moderate_host_with_port 1 2
Site::#moderate_host 1 2
Site::#table_exists? 1 2
Site::#default_constraints_for_public 1 2
Site::#default_threshold_for_debate 1 2
Site::#default_threshold_for_response 1 2
Site::#host_with_port 1 2
Site::#host 1 2
Site::#formatted_threshold_for_debate 1 2
Site::#formatted_threshold_for_response 1 2
Site::#formatted_threshold_for_moderation 1 2
Site::#enabled? 1 2
Site::#email_protocol 1 2
Site::#authenticate 1 2
Site::#instance 1 2
Site::#before_remove_const 1 2
Site::#default_constraints_for_moderation 1 2

app/controllers/petitions_controller.rb

Class : PetitionsController

Total complexity : 56
Total lines : 181
Method Complexity # Lines
PetitionsController#create 4 8
PetitionsController#redirect_to_archived_petition_if_archived 3 4
PetitionsController#redirect_to_home_page_unless_opened 2 2
PetitionsController#redirect_to_home_page_if_dissolved 2 2
PetitionsController#redirect_to_valid_state 2 4
PetitionsController#thank_you 2 4
PetitionsController#moderation_info 2 4
PetitionsController#gathering_support 2 4
PetitionsController#show 2 5
PetitionsController#request_format 2 2
PetitionsController#new 2 4
PetitionsController#check_results 2 4
PetitionsController#check 2 4
PetitionsController#count 2 4
PetitionsController#index 2 6
PetitionsController#petition_id 1 2
PetitionsController#csv_filename 1 2
PetitionsController#redirect_to_petition_url 1 2
PetitionsController#redirect_to_stopped_page 1 2
PetitionsController#stopped? 1 2
PetitionsController#moderated? 1 2
PetitionsController#redirect_to_moderation_info_url 1 2
PetitionsController#in_moderation? 1 2
PetitionsController#redirect_to_gathering_support_url 1 2
PetitionsController#collecting_sponsors? 1 2
PetitionsController#search_params 1 2
PetitionsController#valid_state? 1 2
PetitionsController#state_present? 1 2
PetitionsController#build_petition_creator 1 2
PetitionsController#retrieve_petition 1 2
PetitionsController#retrieve_petitions 1 2
PetitionsController#set_content_disposition 1 2

app/models/archived/signature.rb

Class : Archived::Signature

Total complexity : 24
Total lines : 128
Method Complexity # Lines
Archived::Signature#unsubscribe! 3 8
Archived::Signature#formatted_postcode 2 6
Archived::Signature#domain 2 4
Archived::Signature#account 2 4
Archived::Signature#location 2 6
Archived::Signature#column_name_for 1 2
Archived::Signature#united_kingdom? 1 2
Archived::Signature#invalid_unsubscribe_token? 1 2
Archived::Signature#already_unsubscribed? 1 2
Archived::Signature#unsubscribed? 1 2
Archived::Signature#subscribed? 1 2
Archived::Signature#invalidated? 1 2
Archived::Signature#validated? 1 2
Archived::Signature#fraudulent? 1 2
Archived::Signature#pending? 1 2
Archived::Signature#set_email_sent_at_for 1 2
Archived::Signature#get_email_sent_at_for 1 2

app/models/archived/signature.rb

Class : Archived::Signature::

Total complexity : 48
Total lines : 183
Method Complexity # Lines
Archived::Signature::#search 10 38
Archived::Signature::#unsubscribe! 5 14
Archived::Signature::#subscribe! 3 8
Archived::Signature::#destroy! 3 8
Archived::Signature::#ip_search? 2 4
Archived::Signature::#column_name_for 2 4
Archived::Signature::#email_search? 1 2
Archived::Signature::#domain_search? 1 2
Archived::Signature::#sponsors 1 2
Archived::Signature::#creator 1 2
Archived::Signature::#validated 1 2
Archived::Signature::#subscribed 1 2
Archived::Signature::#need_emailing_for 1 2
Archived::Signature::#for_timestamp 1 3
Archived::Signature::#for_sector 1 2
Archived::Signature::#for_postcode 1 2
Archived::Signature::#for_petition 1 2
Archived::Signature::#for_name 1 2
Archived::Signature::#for_ip 1 2
Archived::Signature::#for_email 1 2
Archived::Signature::#for_domain 1 2
Archived::Signature::#batch 1 2
Archived::Signature::#normalize_user 1 2
Archived::Signature::#normalize_email 1 2
Archived::Signature::#sector_search? 1 2
Archived::Signature::#postcode_search? 1 2
Archived::Signature::#petition_search? 1 2
Archived::Signature::#by_most_recent 1 2
Archived::Signature::#normalize_domain 1 2

app/helpers/admin_helper.rb

Class : AdminHelper

Total complexity : 40
Total lines : 179
Method Complexity # Lines
AdminHelper#mandatory_field 39 172
AdminHelper#selected_tags 1 2

app/helpers/cache_helper.rb

Class : CacheHelper::CacheKey::Dependencies

Total complexity : 11
Total lines : 44
Method Complexity # Lines
CacheHelper::CacheKey::Dependencies#for 4 9
CacheHelper::CacheKey::Dependencies#csv_cache 2 7
CacheHelper::CacheKey::Dependencies#last_signature_at 1 2
CacheHelper::CacheKey::Dependencies#cache_for 1 2
CacheHelper::CacheKey::Dependencies#dependencies_for 1 2
CacheHelper::CacheKey::Dependencies#last_debate_outcome_updated_at 1 2
CacheHelper::CacheKey::Dependencies#last_government_response_updated_at 1 2
CacheHelper::CacheKey::Dependencies#initialize 1 2

app/helpers/cache_helper.rb

Class : CacheHelper::CacheKey::Dependencies::Keys

Total complexity : 36
Total lines : 147
Method Complexity # Lines
CacheHelper::CacheKey::Dependencies::Keys#for 11 29
CacheHelper::CacheKey::Dependencies::Keys#cache_key_for 5 10
CacheHelper::CacheKey::Dependencies::Keys#dependency_keys 2 2
CacheHelper::CacheKey::Dependencies::Keys#method_missing 2 6
CacheHelper::CacheKey::Dependencies::Keys#petition 2 2
CacheHelper::CacheKey::Dependencies::Keys#digest_keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#digest 1 2
CacheHelper::CacheKey::Dependencies::Keys#cache_key 1 2
CacheHelper::CacheKey::Dependencies::Keys#build 1 2
CacheHelper::CacheKey::Dependencies::Keys#initialize 1 3
CacheHelper::CacheKey::Dependencies::Keys#value_for 1 2
CacheHelper::CacheKey::Dependencies::Keys#url 1 2
CacheHelper::CacheKey::Dependencies::Keys#site_updated_at 1 2
CacheHelper::CacheKey::Dependencies::Keys#reveal_response 1 2
CacheHelper::CacheKey::Dependencies::Keys#petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#version 1 2
CacheHelper::CacheKey::Dependencies::Keys#fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys#fragment_keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#keys 1 2
CacheHelper::CacheKey::Dependencies::Keys#dependencies 1 2
CacheHelper::CacheKey::Dependencies::Keys#last_petition_created_at 1 2
CacheHelper::CacheKey::Dependencies::Keys#home_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#open_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#create_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#constituency 1 2
CacheHelper::CacheKey::Dependencies::Keys#archived_petition_page 1 2
CacheHelper::CacheKey::Dependencies::Keys#initialize 1 2

app/helpers/cache_helper.rb

Class : CacheHelper::CacheKey::Dependencies::Keys::Fragment

Total complexity : 1
Total lines : 9
Method Complexity # Lines
CacheHelper::CacheKey::Dependencies::Keys::Fragment#initialize 1 5

app/helpers/cache_helper.rb

Class : CacheHelper::CacheKey::Dependencies::Keys::

Total complexity : 4
Total lines : 18
Method Complexity # Lines
CacheHelper::CacheKey::Dependencies::Keys::#load_yaml 1 2
CacheHelper::CacheKey::Dependencies::Keys::#reset_fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys::#fragments 1 2
CacheHelper::CacheKey::Dependencies::Keys::#build 1 2

app/models/admin_user.rb

Class : AdminUser

Total complexity : 36
Total lines : 122
Method Complexity # Lines
AdminUser#update_with_password 6 18
AdminUser#destroy 3 8
AdminUser#current_password 2 2
AdminUser#account_disabled= 2 2
AdminUser#has_to_change_password? 1 2
AdminUser#is_a_moderator? 1 2
AdminUser#is_a_sysadmin? 1 2
AdminUser#pretty_name 1 2
AdminUser#name 1 2
AdminUser#elapsed_time 1 2
AdminUser#account_disabled 1 2
AdminUser#can_edit_responses? 1 2
AdminUser#can_take_petitions_down? 1 2
AdminUser#current_password= 1 2
AdminUser#time_remaining 1 2

app/controllers/admin/invalidations_controller.rb

Class : Admin

Total complexity : 36
Total lines : 133
Method Complexity # Lines
Admin#update 5 12
Admin#create 4 8
Admin#start 3 10
Admin#edit 3 8
Admin#destroy 3 10
Admin#cancel 3 10
Admin#count 3 10
Admin#invalidation_params 2 6
Admin#new 2 4
Admin#index 2 4
Admin#find_invalidation 1 2
Admin#find_invalidations 1 2
Admin#index_url 1 2
Admin#redirect_to_index_url 1 2
Admin#invalidation_attributes 1 2
Admin#build_invalidation 1 2

app/lib/active_support/cache/atomic_dalli_store.rb

Class : ActiveSupport::Cache::AtomicDalliStore

Total complexity : 35
Total lines : 81
Method Complexity # Lines
ActiveSupport::Cache::AtomicDalliStore#fetch 5 18
ActiveSupport::Cache::AtomicDalliStore#ttl_set 5 6
ActiveSupport::Cache::AtomicDalliStore#ttl_add 5 6
ActiveSupport::Cache::AtomicDalliStore#ttl_get 5 6
ActiveSupport::Cache::AtomicDalliStore#ttl_delete 5 6
ActiveSupport::Cache::AtomicDalliStore#read 4 6
ActiveSupport::Cache::AtomicDalliStore#lock! 2 3
ActiveSupport::Cache::AtomicDalliStore#write 2 4
ActiveSupport::Cache::AtomicDalliStore#delete 1 2
ActiveSupport::Cache::AtomicDalliStore#ttl_key 1 2

app/models/domain.rb

Class : Domain

Total complexity : 33
Total lines : 112
Method Complexity # Lines
Domain#local 4 10
Domain#strip_extension? 2 2
Domain#strip_characters 2 2
Domain#strip_characters? 2 2
Domain#domain 2 2
Domain#normalize 2 4
Domain#strip_extension 2 2
Domain#extension_regexp 1 3
Domain#characters_regexp 1 2
Domain#find_canonical_domain 1 2
Domain#name= 1 2
Domain#alias 1 2
Domain#alias? 1 2
Domain#aliased_domains 1 2
Domain#aliased_domain? 1 2
Domain#aliased_domain 1 2

app/models/domain.rb

Class : Domain::

Total complexity : 14
Total lines : 40
Method Complexity # Lines
Domain::#candidates 3 2
Domain::#normalize 3 8
Domain::#default_domain 2 6
Domain::#rule 2 2
Domain::#rules 2 2
Domain::#by_name 1 2
Domain::#default_scope 1 2

app/models/concerns/browseable.rb

Class : Browseable::Facets

Total complexity : 12
Total lines : 47
Method Complexity # Lines
Browseable::Facets#facet_count_query 3 8
Browseable::Facets#slice 3 4
Browseable::Facets#each 2 4
Browseable::Facets#facet_scope 1 2
Browseable::Facets#facet_counts 1 2
Browseable::Facets#[] 1 2
Browseable::Facets#initialize 1 2

app/models/concerns/browseable.rb

Class : Browseable::Filters

Total complexity : 2
Total lines : 11
Method Complexity # Lines
Browseable::Filters#to_hash 1 2
Browseable::Filters#initialize 1 2

app/models/concerns/browseable.rb

Class : Browseable::Search

Total complexity : 33
Total lines : 133
Method Complexity # Lines
Browseable::Search#inspect 4 9
Browseable::Search#new_params 3 7
Browseable::Search#in_batches 2 4
Browseable::Search#execute_search 2 10
Browseable::Search#scope 2 2
Browseable::Search#search? 1 2
Browseable::Search#scoped? 1 2
Browseable::Search#initialize 1 2
Browseable::Search#execute_search_with_pagination 1 2
Browseable::Search#results 1 2
Browseable::Search#model 1 2
Browseable::Search#to_a 1 2
Browseable::Search#next_params 1 2
Browseable::Search#previous_params 1 2
Browseable::Search#page_size 1 2
Browseable::Search#query 1 2
Browseable::Search#last_page? 1 2
Browseable::Search#second_page? 1 2
Browseable::Search#first_page? 1 2
Browseable::Search#filters 1 2
Browseable::Search#facets 1 2
Browseable::Search#find_each 1 2
Browseable::Search#each 1 2
Browseable::Search#current_page 1 2
Browseable::Search#star 1 2

app/models/concerns/browseable.rb

Class : Browseable::ClassMethods

Total complexity : 3
Total lines : 12
Method Complexity # Lines
Browseable::ClassMethods#search 1 2
Browseable::ClassMethods#filter 1 2
Browseable::ClassMethods#facet 1 2

app/controllers/admin/signatures_controller.rb

Class : Admin

Total complexity : 32
Total lines : 143
Method Complexity # Lines
Admin#invalidate 2 8
Admin#bulk_invalidate 2 8
Admin#validate 2 8
Admin#bulk_validate 2 8
Admin#index_url 2 6
Admin#index 2 4
Admin#scope 2 2
Admin#unsubscribe 2 6
Admin#bulk_unsubscribe 2 8
Admin#subscribe 2 6
Admin#bulk_subscribe 2 8
Admin#destroy 2 6
Admin#bulk_destroy 2 8
Admin#fetch_petition 1 2
Admin#search_params 1 2
Admin#fetch_signature 1 2
Admin#fetch_signatures 1 2
Admin#petition_scope? 1 2

app/mailers/petition_mailer.rb

Class : PetitionMailer

Total complexity : 30
Total lines : 178
Method Complexity # Lines
PetitionMailer#i18n_options 5 18
PetitionMailer#notify_creator_of_debate_outcome 2 10
PetitionMailer#notify_signer_of_debate_outcome 2 10
PetitionMailer#notify_creator_that_moderation_is_delayed 1 7
PetitionMailer#notify_creator_of_debate_scheduled 1 5
PetitionMailer#notify_signer_of_debate_scheduled 1 6
PetitionMailer#email_confirmation_for_signer 1 3
PetitionMailer#signature_belongs_to_creator? 1 2
PetitionMailer#subject_for 1 2
PetitionMailer#gather_sponsors_for_petition 1 3
PetitionMailer#notify_creator_of_validated_petition_being_stopped 1 3
PetitionMailer#notify_creator_of_sponsored_petition_being_stopped 1 3
PetitionMailer#notify_creator_of_closing_date_change 1 8
PetitionMailer#notify_creator_of_threshold_response 1 6
PetitionMailer#notify_signer_of_threshold_response 1 6
PetitionMailer#notify_sponsor_that_petition_was_rejected 1 3
PetitionMailer#notify_creator_that_petition_was_rejected 1 3
PetitionMailer#notify_sponsor_that_petition_is_published 1 3
PetitionMailer#notify_creator_that_petition_is_published 1 6
PetitionMailer#special_resend_of_email_confirmation_for_signer 1 3
PetitionMailer#email_creator 1 5
PetitionMailer#email_signer 1 6
PetitionMailer#email_duplicate_signatures 1 3
PetitionMailer#unsubscribe_url 1 2

app/helpers/auto_link_helper.rb

Class : AutoLinkHelper

Total complexity : 1
Total lines : 6
Method Complexity # Lines
AutoLinkHelper#auto_link 1 2

app/helpers/auto_link_helper.rb

Class : AutoLinkHelper::AutoLinker

Total complexity : 30
Total lines : 119
Method Complexity # Lines
AutoLinkHelper::AutoLinker#auto_link_urls 8 30
AutoLinkHelper::AutoLinker#auto_link_email_addresses 6 17
AutoLinkHelper::AutoLinker#generate 5 13
AutoLinkHelper::AutoLinker#sanitize? 2 3
AutoLinkHelper::AutoLinker#sanitized_text 2 2
AutoLinkHelper::AutoLinker#auto_link_all 1 2
AutoLinkHelper::AutoLinker#auto_linked? 1 3
AutoLinkHelper::AutoLinker#html_options 1 2
AutoLinkHelper::AutoLinker#sanitize_options 1 2
AutoLinkHelper::AutoLinker#scope 1 2
AutoLinkHelper::AutoLinker#initialize 1 5
AutoLinkHelper::AutoLinker#self.generate 1 2

app/controllers/application_controller.rb

Class : ApplicationController

Total complexity : 28
Total lines : 104
Method Complexity # Lines
ApplicationController#url_without_format 3 6
ApplicationController#site_protected? 2 2
ApplicationController#authenticate 2 4
ApplicationController#show_cookie_message? 1 2
ApplicationController#set_cors_headers 1 4
ApplicationController#set_seen_cookie_message 1 2
ApplicationController#redirect_to_home_page 1 2
ApplicationController#parliament_dissolved? 1 2
ApplicationController#site_enabled? 1 2
ApplicationController#service_unavailable 1 2
ApplicationController#reload_parliament 1 2
ApplicationController#reload_site 1 2
ApplicationController#redirect_to_url_without_format 1 2
ApplicationController#unknown_format? 1 2
ApplicationController#json_request? 1 2
ApplicationController#csv_request? 1 2
ApplicationController#admin_request? 1 2
ApplicationController#do_not_cache 1 2
ApplicationController#public_petition_facets 1 2
ApplicationController#current_time 1 2

app/models/parliament.rb

Class : Parliament

Total complexity : 27
Total lines : 111
Method Complexity # Lines
Parliament#start_archiving! 2 5
Parliament#archive! 2 5
Parliament#notify_creators! 2 4
Parliament#schedule_closure! 2 5
Parliament#period 2 4
Parliament#archiving_finished? 1 2
Parliament#archiving? 1 2
Parliament#archived? 1 2
Parliament#registration_closed? 1 2
Parliament#dissolution_announced? 1 2
Parliament#dissolved? 1 2
Parliament#period? 1 2
Parliament#name 1 2
Parliament#formatted_threshold_for_debate 1 2
Parliament#formatted_threshold_for_response 1 2
Parliament#can_archive? 1 2
Parliament#can_archive_petitions? 1 2
Parliament#opened? 1 2
Parliament#show_on_a_map? 1 2

app/models/parliament.rb

Class : Parliament::

Total complexity : 20
Total lines : 80
Method Complexity # Lines
Parliament::#before_remove_const 1 2
Parliament::#reload 1 2
Parliament::#registration_closed? 1 2
Parliament::#dissolution_announced? 1 2
Parliament::#dissolved? 1 2
Parliament::#dissolution_faq_url? 1 2
Parliament::#dissolution_faq_url 1 2
Parliament::#dissolved_message 1 2
Parliament::#dissolved_heading 1 2
Parliament::#dissolution_message 1 2
Parliament::#dissolution_heading 1 2
Parliament::#notification_cutoff_at 1 2
Parliament::#dissolution_at 1 2
Parliament::#opened? 1 2
Parliament::#opening_at 1 2
Parliament::#government 1 2
Parliament::#current 1 2
Parliament::#archived 1 2
Parliament::#instance 1 2
Parliament::#current_or_create 1 2

app/models/constituency.rb

Class :

Total complexity : 9
Total lines : 32
Method Complexity # Lines
#find_by_postcode 4 14
#refresh! 2 2
#example_postcodes 1 2
#query 1 2
#by_ons_code 1 2

app/controllers/admin/archived/petitions_controller.rb

Class : Admin

Total complexity : 25
Total lines : 100
Method Complexity # Lines
Admin#scope 4 12
Admin#index 3 5
Admin#fetch_parliament 2 6
Admin#show 2 4
Admin#fetch_petitions 1 2
Admin#parliament_id 1 2
Admin#redirect_to_admin_hub 1 2
Admin#redirect_to_show_page 1 2
Admin#parliament_present? 1 2
Admin#petition_id? 1 2
Admin#set_streaming_headers 1 5
Admin#set_file_headers 1 3
Admin#render_csv 1 6
Admin#fetch_petition 1 2
Admin#csv_filename 1 2

app/controllers/sponsors_controller.rb

Class : SponsorsController

Total complexity : 25
Total lines : 100
Method Complexity # Lines
SponsorsController#send_sponsor_support_notification_email_to_petition_owner 4 8
SponsorsController#retrieve_petition 3 10
SponsorsController#send_email_to_petition_signer 3 8
SponsorsController#verify 2 8
SponsorsController#redirect_to_moderation_info_page_if_sponsored 2 4
SponsorsController#build_signature 2 6
SponsorsController#redirect_to_petition_page_if_moderated 2 4
SponsorsController#redirect_to_new_sponsor_page_if_validated 2 4
SponsorsController#retrieve_signature 2 7
SponsorsController#signed_token_failure_url 1 2
SponsorsController#thank_you_url 1 2
SponsorsController#validate_creator 1 2

app/models/signature_logs.rb

Class : SignatureLogs

Total complexity : 22
Total lines : 104
Method Complexity # Lines
SignatureLogs#overlapping? 4 6
SignatureLogs#fetch_validate_events 4 16
SignatureLogs#fetch_events 2 6
SignatureLogs#logs 2 2
SignatureLogs#each 2 2
SignatureLogs#fetch_combined_events 2 13
SignatureLogs#fetch_create_events 2 13
SignatureLogs#ms 1 2
SignatureLogs#initialize 1 2
SignatureLogs#log_group_name 1 2
SignatureLogs#client 1 2

app/models/signature_logs.rb

Class : SignatureLogs::Log

Total complexity : 24
Total lines : 59
Method Complexity # Lines
SignatureLogs::Log#agent 2 2
SignatureLogs::Log#response 2 2
SignatureLogs::Log#uri 2 2
SignatureLogs::Log#method 2 2
SignatureLogs::Log#timestamp 2 4
SignatureLogs::Log#ip_address 2 4
SignatureLogs::Log#== 2 3
SignatureLogs::Log#referrer 2 2
SignatureLogs::Log#sec 1 0
SignatureLogs::Log#min 1 0
SignatureLogs::Log#hour 1 0
SignatureLogs::Log#day 1 0
SignatureLogs::Log#month 1 0
SignatureLogs::Log#year 1 0
SignatureLogs::Log#blank? 1 2
SignatureLogs::Log#initialize 1 3

app/models/signature_logs.rb

Class : SignatureLogs::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
SignatureLogs::#find 1 2

app/controllers/admin/tags_controller.rb

Class : Admin

Total complexity : 23
Total lines : 82
Method Complexity # Lines
Admin#update 4 8
Admin#create 4 8
Admin#tag_params 2 6
Admin#index 2 4
Admin#edit 2 4
Admin#new 2 4
Admin#index_url 1 2
Admin#destroy_tag 1 2
Admin#build_tag 1 2
Admin#find_tag 1 2
Admin#find_tags 1 2
Admin#destroy 1 2
Admin#redirect_to_index_url 1 2

app/controllers/local_petitions_controller.rb

Class : LocalPetitionsController

Total complexity : 23
Total lines : 82
Method Complexity # Lines
LocalPetitionsController#csv_filename 2 6
LocalPetitionsController#redirect_to_constituency 2 6
LocalPetitionsController#index 2 4
LocalPetitionsController#all 2 6
LocalPetitionsController#show 2 6
LocalPetitionsController#postcode? 1 2
LocalPetitionsController#sanitize_postcode 1 2
LocalPetitionsController#find_all_petitions 1 2
LocalPetitionsController#find_petitions 1 2
LocalPetitionsController#constituency? 1 2
LocalPetitionsController#find_by_slug 1 2
LocalPetitionsController#find_by_postcode 1 2
LocalPetitionsController#set_content_disposition 1 2

app/controllers/admin/domains_controller.rb

Class : Admin

Total complexity : 22
Total lines : 77
Method Complexity # Lines
Admin#update 4 8
Admin#create 4 8
Admin#domain_params 2 6
Admin#index 2 4
Admin#edit 2 4
Admin#new 2 4
Admin#destroy 2 6
Admin#find_domain 1 2
Admin#fetch_domains 1 2
Admin#domain_attributes 1 2
Admin#build_domain 1 2

app/controllers/admin/archived/petition_emails_controller.rb

Class : Admin

Total complexity : 21
Total lines : 97
Method Complexity # Lines
Admin#update 4 17
Admin#create 4 17
Admin#destroy 2 8
Admin#send_email_to_petitioners? 1 2
Admin#feedback_signature 1 2
Admin#email_params 1 2
Admin#fetch_email 1 2
Admin#build_email 1 2
Admin#fetch_petition 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#schedule_email_petitioners_job 1 2
Admin#send_preview_email? 1 2
Admin#send_preview_email 1 2

app/controllers/admin/petition_emails_controller.rb

Class : Admin

Total complexity : 21
Total lines : 97
Method Complexity # Lines
Admin#update 4 17
Admin#create 4 17
Admin#destroy 2 8
Admin#send_email_to_petitioners? 1 2
Admin#feedback_signature 1 2
Admin#email_params 1 2
Admin#fetch_email 1 2
Admin#build_email 1 2
Admin#fetch_petition 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#schedule_email_petitioners_job 1 2
Admin#send_preview_email? 1 2
Admin#send_preview_email 1 2

lib/health_check.rb

Class : HealthCheck

Total complexity : 21
Total lines : 72
Method Complexity # Lines
HealthCheck#database_persistence 5 7
HealthCheck#checkup 3 9
HealthCheck#database_connection 2 6
HealthCheck#stringify 2 2
HealthCheck#database_integrity 2 3
HealthCheck#utctime 1 2
HealthCheck#localtime 1 2
HealthCheck#client_ip 1 2
HealthCheck#url 1 2
HealthCheck#hostname 1 2
HealthCheck#initialize 1 2
HealthCheck#self.checkup 1 2

app/controllers/archived/petitions_controller.rb

Class : Archived

Total complexity : 21
Total lines : 87
Method Complexity # Lines
Archived#redirect_to_valid_state 2 4
Archived#fetch_parliament 2 6
Archived#index 2 6
Archived#fetch_petition 2 7
Archived#show 2 5
Archived#fetch_petitions 1 2
Archived#petition_id 1 2
Archived#parliament_id 1 2
Archived#archived_petition_facets 1 2
Archived#search_params 1 2
Archived#valid_state? 1 2
Archived#state_present? 1 2
Archived#csv_filename 1 2
Archived#set_content_disposition 1 2

app/models/constituency_petition_journal.rb

Class : ConstituencyPetitionJournal::

Total complexity : 21
Total lines : 78
Method Complexity # Lines
ConstituencyPetitionJournal::#for 17 55
ConstituencyPetitionJournal::#reset_signature_counts_for 3 7
ConstituencyPetitionJournal::#increment_signature_counts_for 3 5
ConstituencyPetitionJournal::#invalidate_signature_for 2 4
ConstituencyPetitionJournal::#unrecordable? 1 2
ConstituencyPetitionJournal::#last_signed_at 1 2
ConstituencyPetitionJournal::#with_signatures_for 1 2
ConstituencyPetitionJournal::#decrement_signature_count 1 3
ConstituencyPetitionJournal::#reset_signature_count 1 3
ConstituencyPetitionJournal::#increment_signature_count 1 3
ConstituencyPetitionJournal::#signature_counts 1 2
ConstituencyPetitionJournal::#ordered 1 2
ConstituencyPetitionJournal::#older_than 1 2
ConstituencyPetitionJournal::#update_all 1 2

app/jobs/archive_petition_job.rb

Class : ArchivePetitionJob

Total complexity : 20
Total lines : 115
Method Complexity # Lines
ArchivePetitionJob#perform 19 105
ArchivePetitionJob#parliament 1 2

app/controllers/admin/petitions_controller.rb

Class : Admin

Total complexity : 20
Total lines : 83
Method Complexity # Lines
Admin#scope 4 12
Admin#index 3 5
Admin#show 2 4
Admin#fetch_petition 1 2
Admin#fetch_petitions 1 2
Admin#redirect_to_show_page 1 2
Admin#petition_id? 1 2
Admin#resend 1 3
Admin#set_streaming_headers 1 5
Admin#set_file_headers 1 3
Admin#render_csv 1 6
Admin#csv_filename 1 2

app/models/country_petition_journal.rb

Class : CountryPetitionJournal::

Total complexity : 19
Total lines : 70
Method Complexity # Lines
CountryPetitionJournal::#for 15 47
CountryPetitionJournal::#reset_signature_counts_for 3 7
CountryPetitionJournal::#increment_signature_counts_for 3 5
CountryPetitionJournal::#invalidate_signature_for 2 4
CountryPetitionJournal::#unrecordable? 1 2
CountryPetitionJournal::#last_signed_at 1 2
CountryPetitionJournal::#decrement_signature_count 1 3
CountryPetitionJournal::#reset_signature_count 1 3
CountryPetitionJournal::#increment_signature_count 1 3
CountryPetitionJournal::#signature_counts 1 2
CountryPetitionJournal::#older_than 1 2
CountryPetitionJournal::#update_all 1 2

app/controllers/admin/moderation_delays_controller.rb

Class : Admin

Total complexity : 18
Total lines : 74
Method Complexity # Lines
Admin#create 7 17
Admin#enqeue_job 2 15
Admin#moderation_delay_params 2 6
Admin#new 2 4
Admin#feedback_signature 1 2
Admin#send_email_to_creators? 1 2
Admin#save_attributes_to_session 1 2
Admin#build_moderation_delay 1 2
Admin#example_petition 1 2

app/jobs/concerns/email_delivery.rb

Class : EmailDelivery

Total complexity : 18
Total lines : 109
Method Complexity # Lines
EmailDelivery#mailer 3 9
EmailDelivery#perform 2 10
EmailDelivery#petition_timestamp 1 2
EmailDelivery#record_email_sent 1 2
EmailDelivery#create_email 1 2
EmailDelivery#email_not_previously_sent? 1 3
EmailDelivery#petition_has_not_been_updated? 1 2
EmailDelivery#send_email 1 2
EmailDelivery#can_send_email? 1 2
EmailDelivery#log_message 1 2
EmailDelivery#log_exception 1 2
EmailDelivery#set_appsignal_namespace 1 2

app/controllers/concerns/authentication.rb

Class : Authentication

Total complexity : 17
Total lines : 63
Method Complexity # Lines
Authentication#check_for_password_change 2 4
Authentication#require_admin 2 4
Authentication#current_user 2 3
Authentication#logout_stale_session 2 2
Authentication#current_session 2 3
Authentication#require_sysadmin 2 4
Authentication#redirect_to_target_or_default 1 3
Authentication#set_login_timeout 1 2
Authentication#store_target_location 1 2
Authentication#logged_in? 1 2

app/mailers/archived/petition_mailer.rb

Class : Archived::PetitionMailer

Total complexity : 17
Total lines : 104
Method Complexity # Lines
Archived::PetitionMailer#i18n_options 4 14
Archived::PetitionMailer#notify_creator_of_debate_outcome 2 10
Archived::PetitionMailer#notify_signer_of_debate_outcome 2 10
Archived::PetitionMailer#unsubscribe_url 1 2
Archived::PetitionMailer#signature_belongs_to_creator? 1 2
Archived::PetitionMailer#subject_for 1 2
Archived::PetitionMailer#notify_creator_of_debate_scheduled 1 5
Archived::PetitionMailer#notify_signer_of_debate_scheduled 1 6
Archived::PetitionMailer#notify_creator_of_threshold_response 1 7
Archived::PetitionMailer#notify_signer_of_threshold_response 1 7
Archived::PetitionMailer#email_creator 1 5
Archived::PetitionMailer#email_signer 1 6

app/controllers/admin/archived/signatures_controller.rb

Class : Admin

Total complexity : 17
Total lines : 81
Method Complexity # Lines
Admin#destroy 2 6
Admin#bulk_destroy 2 8
Admin#bulk_unsubscribe 2 8
Admin#unsubscribe 2 6
Admin#index 2 4
Admin#subscribe 2 6
Admin#bulk_subscribe 2 8
Admin#search_params 1 2
Admin#fetch_signature 1 2
Admin#fetch_signatures 1 2

app/helpers/date_time_helper.rb

Class : DateTimeHelper

Total complexity : 16
Total lines : 71
Method Complexity # Lines
DateTimeHelper#api_date_format 3 8
DateTimeHelper#waiting_for_in_words 2 8
DateTimeHelper#date_time_format 2 6
DateTimeHelper#last_updated_at_time 1 2
DateTimeHelper#local_date_time_format 1 2
DateTimeHelper#date_format_admin 1 2
DateTimeHelper#date_format 1 2
DateTimeHelper#short_date_format 1 2
DateTimeHelper#christmas_period? 1 2
DateTimeHelper#scheduled_for_debate_in_words 1 6
DateTimeHelper#short_date_time_format 1 2
DateTimeHelper#easter_period? 1 2

app/jobs/update_signature_counts_job.rb

Class : UpdateSignatureCountsJob

Total complexity : 16
Total lines : 88
Method Complexity # Lines
UpdateSignatureCountsJob#perform 8 43
UpdateSignatureCountsJob#reschedule_job 1 2
UpdateSignatureCountsJob#petitions 1 2
UpdateSignatureCountsJob#petition_ids 1 2
UpdateSignatureCountsJob#log_message 1 2
UpdateSignatureCountsJob#log_exception 1 2
UpdateSignatureCountsJob#current_time 1 2
UpdateSignatureCountsJob#scheduled_time 1 2

app/helpers/admin_hub_helper.rb

Class : AdminHubHelper

Total complexity : 16
Total lines : 65
Method Complexity # Lines
AdminHubHelper#summary_class_name_for_in_moderation 3 8
AdminHubHelper#action_counts 1 3
AdminHubHelper#petition_total_count 1 2
AdminHubHelper#untagged_in_moderation_count 1 2
AdminHubHelper#tagged_in_moderation_count 1 2
AdminHubHelper#overdue_in_moderation_untagged_count 1 2
AdminHubHelper#overdue_in_moderation_count 1 2
AdminHubHelper#nearly_overdue_in_moderation_count 1 2
AdminHubHelper#nearly_overdue_in_moderation_untagged_count 1 2
AdminHubHelper#recently_in_moderation_untagged_count 1 2
AdminHubHelper#recently_in_moderation_count 1 2
AdminHubHelper#in_moderation_count 1 2
AdminHubHelper#archived_petition_total_count 1 2
AdminHubHelper#action_count 1 2

app/helpers/admin_hub_helper.rb

Class : AdminHubHelper::ActionCountsDecorator

Total complexity : 2
Total lines : 14
Method Complexity # Lines
AdminHubHelper::ActionCountsDecorator#generate_counts 1 4
AdminHubHelper::ActionCountsDecorator#counts 1 2

app/helpers/page_title_helper.rb

Class : PageTitleHelper

Total complexity : 1
Total lines : 6
Method Complexity # Lines
PageTitleHelper#page_title 1 2

app/helpers/page_title_helper.rb

Class : PageTitleHelper::PageTitleBuilder

Total complexity : 16
Total lines : 68
Method Complexity # Lines
PageTitleHelper::PageTitleBuilder#options 7 21
PageTitleHelper::PageTitleBuilder#formatted_postcode 1 2
PageTitleHelper::PageTitleBuilder#key 1 2
PageTitleHelper::PageTitleBuilder#action 1 2
PageTitleHelper::PageTitleBuilder#controller 1 2
PageTitleHelper::PageTitleBuilder#build 1 2
PageTitleHelper::PageTitleBuilder#initialize 1 2

app/helpers/page_title_helper.rb

Class : PageTitleHelper::PageTitleBuilder::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
PageTitleHelper::PageTitleBuilder::#build 1 2

app/helpers/sharing_helper.rb

Class : SharingHelper

Total complexity : 15
Total lines : 62
Method Complexity # Lines
SharingHelper#share_via_facebook 1 2
SharingHelper#share_params 1 2
SharingHelper#share_title 1 2
SharingHelper#share_via_whatsapp_params 1 2
SharingHelper#share_via_twitter_params 1 2
SharingHelper#share_via_email_params 1 2
SharingHelper#share_via_facebook_params 1 2
SharingHelper#share_via_whatsapp_url 1 2
SharingHelper#share_via_whatsapp 1 2
SharingHelper#share_via_twitter_url 1 2
SharingHelper#share_via_twitter 1 2
SharingHelper#share_via_email_url 1 2
SharingHelper#share_via_email 1 2
SharingHelper#share_via_facebook_url 1 2
SharingHelper#share_button 1 2

app/models/debate_outcome.rb

Class : DebateOutcome

Total complexity : 15
Total lines : 73
Method Complexity # Lines
DebateOutcome#validate_commons_image_dimensions 4 22
DebateOutcome#debate_state 2 2
DebateOutcome#no_commons_image_queued 1 2
DebateOutcome#image_ratio 1 2
DebateOutcome#date 1 2

app/models/archived/debate_outcome.rb

Class : Archived::DebateOutcome

Total complexity : 15
Total lines : 74
Method Complexity # Lines
Archived::DebateOutcome#validate_commons_image_dimensions 4 22
Archived::DebateOutcome#debate_state 2 2
Archived::DebateOutcome#no_commons_image_queued 1 2
Archived::DebateOutcome#image_ratio 1 2
Archived::DebateOutcome#date 1 2

app/jobs/refresh_constituency_party_job.rb

Class : RefreshConstituencyPartyJob

Total complexity : 15
Total lines : 72
Method Complexity # Lines
RefreshConstituencyPartyJob#parse 3 13
RefreshConstituencyPartyJob#load_members 3 11
RefreshConstituencyPartyJob#perform 3 8
RefreshConstituencyPartyJob#fetch_members 2 5
RefreshConstituencyPartyJob#faraday 2 6
RefreshConstituencyPartyJob#members 1 2

app/presenters/api_pagination_links_presenter.rb

Class : ApiPaginationLinksPresenter

Total complexity : 14
Total lines : 72
Method Complexity # Lines
ApiPaginationLinksPresenter#prev_url 4 13
ApiPaginationLinksPresenter#next_url 2 6
ApiPaginationLinksPresenter#last_url 2 7
ApiPaginationLinksPresenter#api_links_allowed_components 1 2
ApiPaginationLinksPresenter#url_params 1 2
ApiPaginationLinksPresenter#first_url 1 2
ApiPaginationLinksPresenter#current_page 1 2
ApiPaginationLinksPresenter#serialize 1 7
ApiPaginationLinksPresenter#initialize 1 2

app/presenters/petition_csv_presenter.rb

Class : PetitionCSVPresenter

Total complexity : 14
Total lines : 64
Method Complexity # Lines
PetitionCSVPresenter#notes 2 2
PetitionCSVPresenter#values 2 2
PetitionCSVPresenter#admin_url 1 2
PetitionCSVPresenter#public_url 1 2
PetitionCSVPresenter#self.timestamps 1 6
PetitionCSVPresenter#self.attributes 1 7
PetitionCSVPresenter#self.urls 1 2
PetitionCSVPresenter#to_csv 1 2
PetitionCSVPresenter#initialize 1 2
PetitionCSVPresenter#self.fields 1 2

app/jobs/trending_domains_by_petition_job.rb

Class : TrendingDomainsByPetitionJob

Total complexity : 14
Total lines : 55
Method Complexity # Lines
TrendingDomainsByPetitionJob#perform 8 21
TrendingDomainsByPetitionJob#ends_at 1 2
TrendingDomainsByPetitionJob#starts_at 1 2
TrendingDomainsByPetitionJob#window 1 2
TrendingDomainsByPetitionJob#petitions 1 2
TrendingDomainsByPetitionJob#trending_domains 1 2
TrendingDomainsByPetitionJob#rate_limit 1 2

app/jobs/trending_ips_by_petition_job.rb

Class : TrendingIpsByPetitionJob

Total complexity : 14
Total lines : 56
Method Complexity # Lines
TrendingIpsByPetitionJob#perform 8 21
TrendingIpsByPetitionJob#ends_at 1 2
TrendingIpsByPetitionJob#starts_at 1 2
TrendingIpsByPetitionJob#window 1 2
TrendingIpsByPetitionJob#petitions 1 2
TrendingIpsByPetitionJob#trending_ips 1 2
TrendingIpsByPetitionJob#rate_limit 1 2

app/models/concerns/taggable.rb

Class : Taggable

Total complexity : 14
Total lines : 51
Method Complexity # Lines
Taggable#tags_exist 3 4
Taggable#tag_names 1 2
Taggable#tags= 1 2
Taggable#normalize_tags 1 2
Taggable#normalize_tags 1 2
Taggable#tags_column 1 2
Taggable#untagged 1 2
Taggable#tagged 1 2
Taggable#tagged_with_any 1 2
Taggable#tagged_with_all 1 2

app/jobs/import_constituencies_job.rb

Class : ImportConstituenciesJob

Total complexity : 13
Total lines : 61
Method Complexity # Lines
ImportConstituenciesJob#perform 3 12
ImportConstituenciesJob#fetch_constituencies 2 6
ImportConstituenciesJob#faraday 2 6
ImportConstituenciesJob#current_constituencies 2 2
ImportConstituenciesJob#constituencies 2 10
ImportConstituenciesJob#example_postcodes 1 2

app/helpers/application_helper.rb

Class : ApplicationHelper

Total complexity : 13
Total lines : 61
Method Complexity # Lines
ApplicationHelper#referer_url 4 7
ApplicationHelper#original_url 1 2
ApplicationHelper#noindex_page? 1 2
ApplicationHelper#back_url 1 2
ApplicationHelper#archived_petition_page? 1 2
ApplicationHelper#open_petition_page? 1 2
ApplicationHelper#petition_page? 1 2
ApplicationHelper#create_petition_page? 1 2
ApplicationHelper#home_page? 1 2
ApplicationHelper#increment 1 3

app/controllers/admin/parliaments_controller.rb

Class : Admin

Total complexity : 13
Total lines : 60
Method Complexity # Lines
Admin#update 6 20
Admin#archive_petitions? 1 2
Admin#schedule_closure? 1 2
Admin#email_creators? 1 2
Admin#parliament_params 1 8
Admin#fetch_parliament 1 2
Admin#show 1 1
Admin#archive_parliament? 1 2

app/helpers/home_helper.rb

Class : HomeHelper

Total complexity : 13
Total lines : 45
Method Complexity # Lines
HomeHelper#trending_petitions 3 5
HomeHelper#no_petitions_yet? 2 3
HomeHelper#actioned_petitions 2 3
HomeHelper#fetch_trending_petitions 2 6
HomeHelper#actioned_petitions_decorator 1 2
HomeHelper#any_actioned_petitions? 1 2
HomeHelper#petition_count 1 2
HomeHelper#explanation_petitions 1 2

app/helpers/home_helper.rb

Class : HomeHelper::ActionedPetitionsDecorator

Total complexity : 7
Total lines : 37
Method Complexity # Lines
HomeHelper::ActionedPetitionsDecorator#generate_actioned 2 7
HomeHelper::ActionedPetitionsDecorator#empty? 2 2
HomeHelper::ActionedPetitionsDecorator#actioned 1 2
HomeHelper::ActionedPetitionsDecorator#with_result 1 2
HomeHelper::ActionedPetitionsDecorator#[] 1 2

app/controllers/admin/admin_users_controller.rb

Class : Admin

Total complexity : 13
Total lines : 62
Method Complexity # Lines
Admin#update 2 6
Admin#destroy 2 6
Admin#create 2 8
Admin#admin_user_params 1 6
Admin#find_user 1 2
Admin#edit 1 1
Admin#new 1 2
Admin#index 1 2

app/controllers/feedback_controller.rb

Class : FeedbackController

Total complexity : 13
Total lines : 43
Method Complexity # Lines
FeedbackController#create 4 9
FeedbackController#build_feedback 2 2
FeedbackController#thanks 2 4
FeedbackController#new 2 4
FeedbackController#user_agent 1 2
FeedbackController#feedback_attributes 1 2
FeedbackController#feedback_params 1 2

app/controllers/concerns/bulk_verification.rb

Class : BulkVerification

Total complexity : 11
Total lines : 49
Method Complexity # Lines
BulkVerification#bulk_request? 1 2
BulkVerification#verify_bulk_request_id 1 2
BulkVerification#verify_bulk_request 1 2
BulkVerification#all_ids 1 2
BulkVerification#selected_ids 1 2
BulkVerification#bulk_verifier 1 2
BulkVerification#bulk_verification_token 1 2
BulkVerification#raise_bad_request 1 2

app/controllers/admin/statistics_controller.rb

Class : Admin

Total complexity : 11
Total lines : 41
Method Complexity # Lines
Admin#csv_filename 2 6
Admin#parliament 2 4
Admin#moderation 2 6
Admin#index 2 4
Admin#set_content_disposition 1 2
Admin#period 1 2

app/models/constituency/api_query.rb

Class : Constituency::ApiQuery

Total complexity : 11
Total lines : 58
Method Complexity # Lines
Constituency::ApiQuery#parse 5 20
Constituency::ApiQuery#fetch 4 13
Constituency::ApiQuery#client 1 2
Constituency::ApiQuery#self.before_remove_const 1 2

app/jobs/archive_signatures_job.rb

Class : ArchiveSignaturesJob

Total complexity : 11
Total lines : 73
Method Complexity # Lines
ArchiveSignaturesJob#perform 10 63
ArchiveSignaturesJob#reschedule_job 1 2

app/jobs/concerns/email_all_petition_signatories.rb

Class : EmailAllPetitionSignatories

Total complexity : 11
Total lines : 68
Method Complexity # Lines
EmailAllPetitionSignatories#enqueue_send_email_jobs 3 6
EmailAllPetitionSignatories#perform 2 8
EmailAllPetitionSignatories#set_appsignal_namespace 1 2
EmailAllPetitionSignatories#signatures_to_email 1 2
EmailAllPetitionSignatories#petition_timestamp 1 2
EmailAllPetitionSignatories#petition_has_been_updated? 1 2
EmailAllPetitionSignatories#mailer_arguments 1 7

app/jobs/concerns/email_all_petition_signatories.rb

Class : EmailAllPetitionSignatories::ClassMethods

Total complexity : 6
Total lines : 29
Method Complexity # Lines
EmailAllPetitionSignatories::ClassMethods#random_interval 1 2
EmailAllPetitionSignatories::ClassMethods#midnight 1 2
EmailAllPetitionSignatories::ClassMethods#later_tonight 1 2
EmailAllPetitionSignatories::ClassMethods#requested_at_iso8601 1 2
EmailAllPetitionSignatories::ClassMethods#requested_at 1 2
EmailAllPetitionSignatories::ClassMethods#run_later_tonight 1 5

app/controllers/admin/user_sessions_controller.rb

Class : Admin

Total complexity : 11
Total lines : 43
Method Complexity # Lines
Admin#create 4 12
Admin#destroy 2 3
Admin#last_request_update_allowed? 1 2
Admin#user_session_params 1 2
Admin#continue 1 2
Admin#status 1 1
Admin#new 1 2

app/controllers/pages_controller.rb

Class : PagesController

Total complexity : 10
Total lines : 34
Method Complexity # Lines
PagesController#manifest 2 6
PagesController#browserconfig 2 6
PagesController#privacy 2 4
PagesController#help 2 4
PagesController#index 2 4

app/controllers/admin/archived/locks_controller.rb

Class : Admin

Total complexity : 10
Total lines : 44
Method Complexity # Lines
Admin#destroy 2 6
Admin#update 2 6
Admin#create 2 6
Admin#show 2 6
Admin#fetch_petition 1 2
Admin#last_request_update_allowed? 1 2

app/controllers/admin/archived/debate_outcomes_controller.rb

Class : Admin

Total complexity : 10
Total lines : 48
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#debate_outcome_attributes 1 2
Admin#debate_outcome_params 1 2
Admin#fetch_debate_outcome 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/controllers/admin/searches_controller.rb

Class : Admin

Total complexity : 10
Total lines : 36
Method Complexity # Lines
Admin#search_params 5 14
Admin#show 3 8
Admin#signature_search? 1 2
Admin#petition_search? 1 2

app/controllers/admin/locks_controller.rb

Class : Admin

Total complexity : 10
Total lines : 44
Method Complexity # Lines
Admin#destroy 2 6
Admin#update 2 6
Admin#create 2 6
Admin#show 2 6
Admin#fetch_petition 1 2
Admin#last_request_update_allowed? 1 2

app/controllers/admin/debate_outcomes_controller.rb

Class : Admin

Total complexity : 10
Total lines : 48
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#debate_outcome_attributes 1 2
Admin#debate_outcome_params 1 2
Admin#fetch_debate_outcome 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/jobs/fetch_country_register_job.rb

Class : FetchCountryRegisterJob

Total complexity : 10
Total lines : 44
Method Complexity # Lines
FetchCountryRegisterJob#perform 3 12
FetchCountryRegisterJob#fetch_register 2 5
FetchCountryRegisterJob#faraday 2 7
FetchCountryRegisterJob#countries 2 2

app/lib/email_reminder.rb

Class : EmailReminder

Total complexity : 10
Total lines : 45
Method Complexity # Lines
EmailReminder#self.threshold_email_reminder 5 17
EmailReminder#self.special_resend_of_signature_email_validation 3 15
EmailReminder#self.logger 2 6

app/lib/admin/task_runner.rb

Class : Admin::TaskRunner

Total complexity : 10
Total lines : 39
Method Complexity # Lines
Admin::TaskRunner#tasks 2 2
Admin::TaskRunner#run 2 2
Admin::TaskRunner#run_task 1 2
Admin::TaskRunner#initialize 1 2

app/lib/admin/task_runner.rb

Class : Admin::TaskRunner::

Total complexity : 2
Total lines : 7
Method Complexity # Lines
Admin::TaskRunner::#run 2 5

app/controllers/admin/archived/government_response_controller.rb

Class : Admin

Total complexity : 9
Total lines : 44
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#government_response_params 1 2
Admin#fetch_government_response 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/controllers/admin/government_response_controller.rb

Class : Admin

Total complexity : 9
Total lines : 44
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#government_response_params 1 2
Admin#fetch_government_response 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/lib/deprecated_attributes.rb

Class : DeprecatedAttributes

Total complexity : 9
Total lines : 26
Method Complexity # Lines
DeprecatedAttributes#deprecate_attribute 8 20

app/jobs/notify_trending_ip_job.rb

Class : NotifyTrendingIpJob

Total complexity : 9
Total lines : 51
Method Complexity # Lines
NotifyTrendingIpJob#perform 1 2
NotifyTrendingIpJob#petition_link 1 2
NotifyTrendingIpJob#end_time 1 2
NotifyTrendingIpJob#start_time 1 2
NotifyTrendingIpJob#time_format 1 2
NotifyTrendingIpJob#slack 1 2
NotifyTrendingIpJob#rate_limit 1 2
NotifyTrendingIpJob#message 1 9
NotifyTrendingIpJob#ip_address_link 1 2

app/helpers/petition_helper.rb

Class : PetitionHelper

Total complexity : 9
Total lines : 35
Method Complexity # Lines
PetitionHelper#signatures_threshold_percentage 3 9
PetitionHelper#current_threshold 2 6
PetitionHelper#reveal_government_response? 1 2
PetitionHelper#petition_list_header? 1 2
PetitionHelper#petition_list_header 1 2
PetitionHelper#public_petition_facets_with_counts 1 2

app/controllers/admin/rate_limits_controller.rb

Class : Admin

Total complexity : 9
Total lines : 33
Method Complexity # Lines
Admin#update 4 8
Admin#edit 2 4
Admin#find_rate_limit 1 2
Admin#rate_limit_attributes 1 2
Admin#rate_limit_params 1 2

app/models/concerns/geoip_lookup.rb

Class : GeoipLookup

Total complexity : 6
Total lines : 26
Method Complexity # Lines
GeoipLookup#ip_location 3 8
GeoipLookup#country_name_for 1 2
GeoipLookup#iso_code_for 1 2
GeoipLookup#geoip_lookup 1 2

app/models/concerns/geoip_lookup.rb

Class : GeoipLookup::ClassMethods

Total complexity : 9
Total lines : 24
Method Complexity # Lines
GeoipLookup::ClassMethods#country_name_for 3 4
GeoipLookup::ClassMethods#iso_code_for 3 4
GeoipLookup::ClassMethods#geoip_lookup 2 4
GeoipLookup::ClassMethods#geoip_db 1 2

app/jobs/notify_trending_domain_job.rb

Class : NotifyTrendingDomainJob

Total complexity : 9
Total lines : 51
Method Complexity # Lines
NotifyTrendingDomainJob#perform 1 2
NotifyTrendingDomainJob#petition_link 1 2
NotifyTrendingDomainJob#end_time 1 2
NotifyTrendingDomainJob#start_time 1 2
NotifyTrendingDomainJob#time_format 1 2
NotifyTrendingDomainJob#slack 1 2
NotifyTrendingDomainJob#rate_limit 1 2
NotifyTrendingDomainJob#message 1 9
NotifyTrendingDomainJob#domain_address_link 1 2

app/helpers/archived_petition_helper.rb

Class : ArchivedPetitionHelper

Total complexity : 9
Total lines : 38
Method Complexity # Lines
ArchivedPetitionHelper#petition_duration_to_words 4 12
ArchivedPetitionHelper#archived_threshold 2 6
ArchivedPetitionHelper#archived_petition_facets_with_counts 1 2
ArchivedPetitionHelper#archived_parliaments 1 2
ArchivedPetitionHelper#archived_threshold_percentage 1 6

app/controllers/admin/holidays_controller.rb

Class : Admin

Total complexity : 9
Total lines : 33
Method Complexity # Lines
Admin#update 4 8
Admin#edit 2 4
Admin#holiday_attributes 1 2
Admin#holiday_params 1 2
Admin#fetch_holiday 1 2

app/controllers/admin/logs_controller.rb

Class : Admin

Total complexity : 8
Total lines : 36
Method Complexity # Lines
Admin#show 2 5
Admin#set_content_disposition 1 2
Admin#csv_filename 1 2
Admin#fetch_petition 1 2
Admin#fetch_signature 1 2
Admin#fetch_logs 1 2

app/jobs/notify_everyone_of_moderation_decision_job.rb

Class : NotifyEveryoneOfModerationDecisionJob

Total complexity : 8
Total lines : 33
Method Complexity # Lines
NotifyEveryoneOfModerationDecisionJob#perform 3 9
NotifyEveryoneOfModerationDecisionJob#notify_everyone_of_rejection 2 6
NotifyEveryoneOfModerationDecisionJob#notify_everyone_of_publication 2 6

app/jobs/backfill_constituencies_job.rb

Class : BackfillConstituenciesJob

Total complexity : 8
Total lines : 32
Method Complexity # Lines
BackfillConstituenciesJob#perform 6 18
BackfillConstituenciesJob#reschedule? 1 2
BackfillConstituenciesJob#signatures_missing_constituency_id 1 2

app/models/task.rb

Class : Task

Total complexity : 8
Total lines : 35
Method Complexity # Lines
Task#retry_lock 4 14
Task#run 3 7
Task#pending? 1 2

app/models/task.rb

Class : Task::

Total complexity : 3
Total lines : 14
Method Complexity # Lines
Task::#task_for 2 6
Task::#run 1 2

app/models/admin_user_session.rb

Class : AdminUserSession

Total complexity : 8
Total lines : 30
Method Complexity # Lines
AdminUserSession#failed_login_count 2 2
AdminUserSession#time_remaining 2 2
AdminUserSession#last_login_attempt? 1 2

app/helpers/search_helper.rb

Class : SearchHelper

Total complexity : 8
Total lines : 30
Method Complexity # Lines
SearchHelper#paginate 4 14
SearchHelper#petition_result_path 2 6
SearchHelper#filtered_petition_count 2 4

app/helpers/rejection_helper.rb

Class : RejectionHelper

Total complexity : 8
Total lines : 26
Method Complexity # Lines
RejectionHelper#rejection_reasons 3 8
RejectionHelper#rejection_description 2 4
RejectionHelper#rejection_reason 2 4
RejectionHelper#rejection_descriptions 1 2

app/models/statistics.rb

Class : Statistics::

Total complexity : 8
Total lines : 42
Method Complexity # Lines
Statistics::#moderation 6 30
Statistics::#select_rows 1 2
Statistics::#connection 1 2

app/controllers/concerns/flash_i18n.rb

Class : FlashI18n

Total complexity : 8
Total lines : 29
Method Complexity # Lines
FlashI18n#redirect_to 5 14
FlashI18n#translate_flash 3 9

app/controllers/concerns/form_tracking.rb

Class : FormTracking

Total complexity : 8
Total lines : 38
Method Complexity # Lines
FormTracking#generate_form_token 1 2
FormTracking#form_requested_at 1 2
FormTracking#form_token 1 2
FormTracking#form_request 1 3
FormTracking#form_requests 1 3
FormTracking#form_request_id 1 2
FormTracking#build_form_request 1 2
FormTracking#image_loaded_at 1 2

app/controllers/archived/signatures_controller.rb

Class : Archived::SignaturesController

Total complexity : 8
Total lines : 37
Method Complexity # Lines
Archived::SignaturesController#retrieve_signature 2 7
Archived::SignaturesController#verify_unsubscribe_token 2 4
Archived::SignaturesController#unsubscribe 2 6
Archived::SignaturesController#token_param 1 2
Archived::SignaturesController#signature_id 1 2

app/controllers/admin/take_down_controller.rb

Class : Admin

Total complexity : 8
Total lines : 35
Method Complexity # Lines
Admin#send_notifications 2 4
Admin#update 2 7
Admin#send_email_to_creator_and_sponsors? 1 2
Admin#rejection_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/controllers/admin/sites_controller.rb

Class : Admin

Total complexity : 8
Total lines : 39
Method Complexity # Lines
Admin#update 4 8
Admin#edit 2 4
Admin#site_params 1 12
Admin#fetch_site 1 2

app/controllers/trackers_controller.rb

Class : TrackersController

Total complexity : 8
Total lines : 37
Method Complexity # Lines
TrackersController#verify_form_token 2 4
TrackersController#verify_petition 2 4
TrackersController#show 2 6
TrackersController#fetch_petition 1 2
TrackersController#petition_id 1 2

app/controllers/admin/schedule_debate_controller.rb

Class : Admin

Total complexity : 7
Total lines : 35
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#params_for_update 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/validators/email_validator.rb

Class : EmailValidator

Total complexity : 7
Total lines : 23
Method Complexity # Lines
EmailValidator#validate_each 4 9
EmailValidator#plus_address? 2 4
EmailValidator#parsed_email 1 2

app/helpers/markdown_helper.rb

Class : MarkdownHelper

Total complexity : 7
Total lines : 44
Method Complexity # Lines
MarkdownHelper#options_for_renderer 1 2
MarkdownHelper#options_for_parser 1 2
MarkdownHelper#markdown_parser 1 2
MarkdownHelper#text_renderer 1 2
MarkdownHelper#html_renderer 1 2
MarkdownHelper#markdown_to_text 1 2
MarkdownHelper#markdown_to_html 1 2

app/models/constituency/api_client.rb

Class : Constituency::ApiClient

Total complexity : 7
Total lines : 33
Method Complexity # Lines
Constituency::ApiClient#faraday 2 6
Constituency::ApiClient#call 2 5
Constituency::ApiClient#sanitize 1 2
Constituency::ApiClient#escape_path 1 2
Constituency::ApiClient#path 1 2

app/controllers/admin/moderation_controller.rb

Class : Admin

Total complexity : 7
Total lines : 31
Method Complexity # Lines
Admin#send_notifications 2 4
Admin#update 2 7
Admin#send_email_to_creator_and_sponsors? 1 2
Admin#moderation_params 1 2
Admin#fetch_petition 1 2

app/controllers/admin/notes_controller.rb

Class : Admin

Total complexity : 7
Total lines : 33
Method Complexity # Lines
Admin#update 2 6
Admin#note_params 1 2
Admin#fetch_petition 1 2
Admin#fetch_note 1 2
Admin#show 1 2

app/helpers/debate_outcome_helper.rb

Class : DebateOutcomeHelper

Total complexity : 7
Total lines : 22
Method Complexity # Lines
DebateOutcomeHelper#debate_outcome_links 3 9
DebateOutcomeHelper#debate_outcome_links? 2 2
DebateOutcomeHelper#debate_outcome_image 2 3

app/jobs/stop_petitions_early_job.rb

Class : StopPetitionsEarlyJob

Total complexity : 7
Total lines : 30
Method Complexity # Lines
StopPetitionsEarlyJob#send_notification 4 9
StopPetitionsEarlyJob#perform 3 11

app/jobs/stop_petitions_early_job.rb

Class : StopPetitionsEarlyJob::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
StopPetitionsEarlyJob::#schedule_for 1 2

app/controllers/admin/archived/schedule_debate_controller.rb

Class : Admin

Total complexity : 7
Total lines : 35
Method Complexity # Lines
Admin#update 3 13
Admin#send_email_to_petitioners? 1 2
Admin#params_for_update 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/lib/quiet_logger.rb

Class : QuietLogger

Total complexity : 7
Total lines : 26
Method Complexity # Lines
QuietLogger#call 3 6
QuietLogger#silence_request? 2 2
QuietLogger#logger 1 2
QuietLogger#initialize 1 4

app/models/government_response.rb

Class : GovernmentResponse

Total complexity : 7
Total lines : 27
Method Complexity # Lines
GovernmentResponse#default_responded_on 4 8
GovernmentResponse#responded_on 1 2

app/controllers/admin/archived/notes_controller.rb

Class : Admin

Total complexity : 7
Total lines : 33
Method Complexity # Lines
Admin#update 2 6
Admin#note_params 1 2
Admin#fetch_petition 1 2
Admin#fetch_note 1 2
Admin#show 1 2

app/models/location.rb

Class : Location::

Total complexity : 7
Total lines : 30
Method Complexity # Lines
Location::#end_date 1 2
Location::#start_date 1 2
Location::#menu 1 2
Location::#not_expired 1 2
Location::#not_pending 1 2
Location::#current 1 2
Location::#by_name 1 2

app/lib/audit_logger.rb

Class : AuditLogger

Total complexity : 6
Total lines : 22
Method Complexity # Lines
AuditLogger#error 2 8
AuditLogger#format_message 2 3
AuditLogger#initialize 2 4

app/jobs/concerns/rate_limiting.rb

Class : RateLimiting

Total complexity : 6
Total lines : 32
Method Complexity # Lines
RateLimiting#perform 3 16
RateLimiting#rate_limit 1 2

app/controllers/concerns/flash_render.rb

Class : FlashRender

Total complexity : 6
Total lines : 22
Method Complexity # Lines
FlashRender#render 6 16

app/controllers/admin/tasks_controller.rb

Class : Admin

Total complexity : 6
Total lines : 28
Method Complexity # Lines
Admin#create 2 8
Admin#selected_tasks 1 2
Admin#missing_tasks? 1 2
Admin#redirect_to_tasks_tab 1 2

app/controllers/admin/archived/petition_details_controller.rb

Class : Admin

Total complexity : 6
Total lines : 27
Method Complexity # Lines
Admin#update 2 6
Admin#petition_params 1 2
Admin#petition_attributes 1 2
Admin#fetch_petition 1 2
Admin#show 1 1

app/models/email_requested_receipt.rb

Class : EmailRequestedReceipt

Total complexity : 6
Total lines : 24
Method Complexity # Lines
EmailRequestedReceipt#set 2 3
EmailRequestedReceipt#get 2 3
EmailRequestedReceipt#possible_timestamps 1 2
EmailRequestedReceipt#valid_timestamp? 1 2

app/models/feedback_signature.rb

Class :

Total complexity : 6
Total lines : 22
Method Complexity # Lines
#rfc2822 1 2
#to_param 1 2
#unsubscribe_token 1 2
#email 1 2
#name 1 2

app/models/archived/government_response.rb

Class : Archived::GovernmentResponse

Total complexity : 6
Total lines : 25
Method Complexity # Lines
Archived::GovernmentResponse#default_responded_on 3 6
Archived::GovernmentResponse#responded_on 1 2

app/helpers/form_helper.rb

Class : FormHelper

Total complexity : 6
Total lines : 18
Method Complexity # Lines
FormHelper#form_row 3 5
FormHelper#error_messages_for_field 2 5
FormHelper#countries_for_select 1 2

app/jobs/email_job.rb

Class : EmailJob

Total complexity : 6
Total lines : 50
Method Complexity # Lines
EmailJob#set_appsignal_namespace 1 2
EmailJob#log_message 1 2
EmailJob#log_exception 1 2
EmailJob#perform 1 2

app/helpers/social_meta_helper.rb

Class : SocialMetaHelper

Total complexity : 6
Total lines : 20
Method Complexity # Lines
SocialMetaHelper#twitter_card_tag 3 8
SocialMetaHelper#open_graph_tag 3 8

app/jobs/petition_count_job.rb

Class : PetitionCountJob

Total complexity : 6
Total lines : 25
Method Complexity # Lines
PetitionCountJob#perform 4 8
PetitionCountJob#petitions 1 2
PetitionCountJob#current_time 1 2

app/lib/job_logger.rb

Class : JobLogger

Total complexity : 6
Total lines : 36
Method Complexity # Lines
JobLogger#logger 1 2
JobLogger#error 1 2
JobLogger#warn 1 2
JobLogger#info 1 2
JobLogger#debug 1 2
JobLogger#initialize 1 3

app/controllers/admin/petition_details_controller.rb

Class : Admin

Total complexity : 5
Total lines : 26
Method Complexity # Lines
Admin#update 2 6
Admin#petition_params 1 5
Admin#fetch_petition 1 2
Admin#show 1 1

app/jobs/reset_petition_signature_count_job.rb

Class : ResetPetitionSignatureCountJob

Total complexity : 5
Total lines : 27
Method Complexity # Lines
ResetPetitionSignatureCountJob#error_message 1 2
ResetPetitionSignatureCountJob#exception 1 2
ResetPetitionSignatureCountJob#send_notification 1 2
ResetPetitionSignatureCountJob#current_time 1 2
ResetPetitionSignatureCountJob#perform 1 3

app/models/rejection.rb

Class : Rejection

Total complexity : 5
Total lines : 25
Method Complexity # Lines
Rejection#state_for_petition 2 2
Rejection#hide_petition? 1 2

app/models/petition/statistics.rb

Class : Petition::Statistics

Total complexity : 5
Total lines : 28
Method Complexity # Lines
Petition::Statistics#refresh_pending_rate 1 2
Petition::Statistics#refresh_duplicate_emails 1 2
Petition::Statistics#refreshed? 1 2
Petition::Statistics#refresh! 1 6

app/jobs/feedback_email_job.rb

Class : FeedbackEmailJob

Total complexity : 5
Total lines : 23
Method Complexity # Lines
FeedbackEmailJob#feedback_sending_disabled? 1 2
FeedbackEmailJob#reschedule_job 1 2

app/jobs/archived/email_petitioners_job.rb

Class : Archived::EmailPetitionersJob

Total complexity : 5
Total lines : 31
Method Complexity # Lines
Archived::EmailPetitionersJob#log_message 1 2
Archived::EmailPetitionersJob#log_exception 1 2
Archived::EmailPetitionersJob#mailer_arguments 1 2
Archived::EmailPetitionersJob#perform 1 3

app/controllers/admin/archived/petition_tags_controller.rb

Class : Admin

Total complexity : 5
Total lines : 24
Method Complexity # Lines
Admin#update 2 6
Admin#petition_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/models/holiday.rb

Class : Holiday

Total complexity : 4
Total lines : 20
Method Complexity # Lines
Holiday#easter 1 2
Holiday#christmas 1 2
Holiday#easter? 1 2
Holiday#christmas? 1 2

app/models/holiday.rb

Class : Holiday::

Total complexity : 5
Total lines : 27
Method Complexity # Lines
Holiday::#defaults 1 7
Holiday::#easter? 1 2
Holiday::#christmas? 1 2
Holiday::#instance 1 2
Holiday::#before_remove_const 1 2

app/jobs/backfill_canonical_emails_job.rb

Class : BackfillCanonicalEmailsJob

Total complexity : 5
Total lines : 19
Method Complexity # Lines
BackfillCanonicalEmailsJob#perform 5 15

app/models/archived/rejection.rb

Class : Archived::Rejection

Total complexity : 5
Total lines : 25
Method Complexity # Lines
Archived::Rejection#state_for_petition 2 2
Archived::Rejection#hide_petition? 1 2

app/jobs/email_petitioners_job.rb

Class : EmailPetitionersJob

Total complexity : 5
Total lines : 31
Method Complexity # Lines
EmailPetitionersJob#log_message 1 2
EmailPetitionersJob#log_exception 1 2
EmailPetitionersJob#mailer_arguments 1 2
EmailPetitionersJob#perform 1 3

app/models/trending_ip.rb

Class : TrendingIp

Total complexity : 5
Total lines : 35
Method Complexity # Lines
TrendingIp#geoip_db 1 2
TrendingIp#window 1 2
TrendingIp#ends_at 1 2

app/models/trending_ip.rb

Class : TrendingIp::

Total complexity : 4
Total lines : 21
Method Complexity # Lines
TrendingIp::#search 2 11
TrendingIp::#log! 1 2
TrendingIp::#default_scope 1 2

app/jobs/backfill_signature_uuids_job.rb

Class : BackfillSignatureUuidsJob

Total complexity : 5
Total lines : 19
Method Complexity # Lines
BackfillSignatureUuidsJob#perform 5 15

app/controllers/admin/petition_tags_controller.rb

Class : Admin

Total complexity : 5
Total lines : 24
Method Complexity # Lines
Admin#update 2 6
Admin#petition_params 1 2
Admin#fetch_petition 1 2
Admin#show 1 2

app/presenters/petitions_csv_presenter.rb

Class : PetitionsCSVPresenter

Total complexity : 4
Total lines : 16
Method Complexity # Lines
PetitionsCSVPresenter#render 3 8
PetitionsCSVPresenter#initialize 1 2

app/models/moderation_delay.rb

Class : ModerationDelay

Total complexity : 4
Total lines : 21
Method Complexity # Lines
ModerationDelay#attributes= 3 8
ModerationDelay#attributes 1 2

app/jobs/archive_petitions_job.rb

Class : ArchivePetitionsJob

Total complexity : 4
Total lines : 13
Method Complexity # Lines
ArchivePetitionsJob#perform 4 9

app/models/trending_domain.rb

Class : TrendingDomain

Total complexity : 2
Total lines : 18
Method Complexity # Lines
TrendingDomain#window 1 2
TrendingDomain#ends_at 1 2

app/models/trending_domain.rb

Class : TrendingDomain::

Total complexity : 4
Total lines : 21
Method Complexity # Lines
TrendingDomain::#search 2 11
TrendingDomain::#log! 1 2
TrendingDomain::#default_scope 1 2

app/controllers/admin/profile_controller.rb

Class : Admin

Total complexity : 4
Total lines : 19
Method Complexity # Lines
Admin#update 2 6
Admin#admin_user_params 1 4
Admin#edit 1 1

app/controllers/admin/trending_domains_controller.rb

Class : Admin

Total complexity : 4
Total lines : 19
Method Complexity # Lines
Admin#index 2 4
Admin#fetch_trending_domains 1 2
Admin#fetch_petition 1 2

app/controllers/admin/trending_ips_controller.rb

Class : Admin

Total complexity : 4
Total lines : 19
Method Complexity # Lines
Admin#index 2 4
Admin#fetch_trending_ips 1 2
Admin#fetch_petition 1 2

app/jobs/delete_petitions_job.rb

Class : DeletePetitionsJob

Total complexity : 3
Total lines : 12
Method Complexity # Lines
DeletePetitionsJob#perform 3 8

lib/arel_extensions.rb

Class : Arel::Nodes::Contained

Total complexity : 1
Total lines : 4
Method Complexity # Lines
Arel::Nodes::Contained#operator 1 2

lib/arel_extensions.rb

Class : Arel::Nodes::Contains

Total complexity : 1
Total lines : 4
Method Complexity # Lines
Arel::Nodes::Contains#operator 1 2

lib/arel_extensions.rb

Class : Arel::Nodes::Overlaps

Total complexity : 1
Total lines : 4
Method Complexity # Lines
Arel::Nodes::Overlaps#operator 1 2

lib/arel_extensions.rb

Class : Arel::Predications

Total complexity : 3
Total lines : 12
Method Complexity # Lines
Arel::Predications#overlaps 1 2
Arel::Predications#contains 1 2
Arel::Predications#contained 1 2

lib/arel_extensions.rb

Class : Arel::Visitors::PostgreSQL

Total complexity : 3
Total lines : 14
Method Complexity # Lines
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Overlaps 1 2
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Contains 1 2
Arel::Visitors::PostgreSQL#visit_Arel_Nodes_Contained 1 2

app/jobs/archived/deliver_petition_email_job.rb

Class : Archived::DeliverPetitionEmailJob

Total complexity : 3
Total lines : 17
Method Complexity # Lines
Archived::DeliverPetitionEmailJob#create_email 2 6
Archived::DeliverPetitionEmailJob#perform 1 3

app/jobs/email_duplicate_signatures_email_job.rb

Class : EmailDuplicateSignaturesEmailJob

Total complexity : 3
Total lines : 18
Method Complexity # Lines
EmailDuplicateSignaturesEmailJob#rate_limit 1 2
EmailDuplicateSignaturesEmailJob#perform 1 3

app/mailers/sponsor_mailer.rb

Class : SponsorMailer

Total complexity : 3
Total lines : 29
Method Complexity # Lines
SponsorMailer#petition_and_email_confirmation_for_sponsor 1 7
SponsorMailer#sponsor_signed_email_on_threshold 1 8
SponsorMailer#sponsor_signed_email_below_threshold 1 8

app/jobs/notify_creators_that_parliament_is_dissolving_job.rb

Class : NotifyCreatorsThatParliamentIsDissolvingJob

Total complexity : 3
Total lines : 14
Method Complexity # Lines
NotifyCreatorsThatParliamentIsDissolvingJob#perform 2 4
NotifyCreatorsThatParliamentIsDissolvingJob#petitions 1 2

app/models/concerns/perishable_token_generator.rb

Class : PerishableTokenGenerator

Total complexity : 3
Total lines : 10
Method Complexity # Lines
PerishableTokenGenerator#has_perishable_token 2 4

app/controllers/admin/admin_controller.rb

Class : Admin

Total complexity : 3
Total lines : 23
Method Complexity # Lines
Admin#set_appsignal_namespace 1 2
Admin#admin_request? 1 2
Admin#index 1 1

app/jobs/deliver_petition_email_job.rb

Class : DeliverPetitionEmailJob

Total complexity : 3
Total lines : 17
Method Complexity # Lines
DeliverPetitionEmailJob#create_email 2 6
DeliverPetitionEmailJob#perform 1 3

lib/health_check_middleware.rb

Class : HealthCheckMiddleware

Total complexity : 3
Total lines : 18
Method Complexity # Lines
HealthCheckMiddleware#call 2 12
HealthCheckMiddleware#initialize 1 2

app/jobs/notify_creators_that_moderation_is_delayed_job.rb

Class : NotifyCreatorsThatModerationIsDelayedJob

Total complexity : 3
Total lines : 14
Method Complexity # Lines
NotifyCreatorsThatModerationIsDelayedJob#perform 2 4
NotifyCreatorsThatModerationIsDelayedJob#petitions 1 2

app/jobs/enqueue_petition_statistics_updates_job.rb

Class : EnqueuePetitionStatisticsUpdatesJob

Total complexity : 3
Total lines : 12
Method Complexity # Lines
EnqueuePetitionStatisticsUpdatesJob#perform 3 6

app/controllers/constituencies_controller.rb

Class : ConstituenciesController

Total complexity : 3
Total lines : 11
Method Complexity # Lines
ConstituenciesController#index 2 6

app/mailers/admin_mailer.rb

Class : AdminMailer

Total complexity : 2
Total lines : 7
Method Complexity # Lines
AdminMailer#threshold_email_reminder 1 3

app/models/tag.rb

Class : Tag

Total complexity : 2
Total lines : 25
Method Complexity # Lines
Tag#remove_tag_from_archived_petitions 1 2
Tag#remove_tag_from_petitions 1 2

app/models/tag.rb

Class : Tag::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
Tag::#by_name 1 2

app/jobs/notify_creator_of_sponsored_petition_being_stopped_job.rb

Class : NotifyCreatorOfSponsoredPetitionBeingStoppedJob

Total complexity : 2
Total lines : 11
Method Complexity # Lines
NotifyCreatorOfSponsoredPetitionBeingStoppedJob#perform 2 4

app/jobs/deliver_debate_outcome_email_job.rb

Class : DeliverDebateOutcomeEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
DeliverDebateOutcomeEmailJob#create_email 2 6

app/lib/cloud_front_remote_ip.rb

Class : CloudFrontRemoteIp

Total complexity : 1
Total lines : 10
Method Complexity # Lines
CloudFrontRemoteIp#call 1 3

app/lib/cloud_front_remote_ip.rb

Class : CloudFrontRemoteIp::CloudFrontGetIp

Total complexity : 2
Total lines : 13
Method Complexity # Lines
CloudFrontRemoteIp::CloudFrontGetIp#filter_proxies 2 9

app/validators/postcode_validator.rb

Class : PostcodeValidator

Total complexity : 2
Total lines : 11
Method Complexity # Lines
PostcodeValidator#validate_each 2 4

app/jobs/invalidate_signatures_job.rb

Class : InvalidateSignaturesJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
InvalidateSignaturesJob#perform 1 2

app/jobs/deliver_threshold_response_email_job.rb

Class : DeliverThresholdResponseEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
DeliverThresholdResponseEmailJob#create_email 2 6

app/jobs/notify_creator_that_parliament_is_dissolving_job.rb

Class : NotifyCreatorThatParliamentIsDissolvingJob

Total complexity : 2
Total lines : 11
Method Complexity # Lines
NotifyCreatorThatParliamentIsDissolvingJob#perform 2 4

app/jobs/application_job.rb

Class : ApplicationJob

Total complexity : 2
Total lines : 13
Method Complexity # Lines
ApplicationJob#reload_parliament 1 2
ApplicationJob#reload_site 1 2

app/jobs/archived/deliver_debate_scheduled_email_job.rb

Class : Archived::DeliverDebateScheduledEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
Archived::DeliverDebateScheduledEmailJob#create_email 2 6

app/jobs/sponsor_signed_email_below_threshold_email_job.rb

Class : SponsorSignedEmailBelowThresholdEmailJob

Total complexity : 2
Total lines : 9
Method Complexity # Lines
SponsorSignedEmailBelowThresholdEmailJob#perform 2 4

app/jobs/sponsor_signed_email_on_threshold_email_job.rb

Class : SponsorSignedEmailOnThresholdEmailJob

Total complexity : 2
Total lines : 9
Method Complexity # Lines
SponsorSignedEmailOnThresholdEmailJob#perform 2 4

app/jobs/deliver_debate_scheduled_email_job.rb

Class : DeliverDebateScheduledEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
DeliverDebateScheduledEmailJob#create_email 2 6

app/jobs/archived/deliver_debate_outcome_email_job.rb

Class : Archived::DeliverDebateOutcomeEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
Archived::DeliverDebateOutcomeEmailJob#create_email 2 6

app/jobs/archived/deliver_threshold_response_email_job.rb

Class : Archived::DeliverThresholdResponseEmailJob

Total complexity : 2
Total lines : 10
Method Complexity # Lines
Archived::DeliverThresholdResponseEmailJob#create_email 2 6

app/controllers/admin/petition_statistics_controller.rb

Class : Admin

Total complexity : 2
Total lines : 14
Method Complexity # Lines
Admin#fetch_petition 1 2
Admin#update 1 3

app/helpers/signature_helper.rb

Class : SignatureHelper

Total complexity : 2
Total lines : 10
Method Complexity # Lines
SignatureHelper#siganture_count_options 1 2
SignatureHelper#signature_count 1 2

app/jobs/notify_creator_of_validated_petition_being_stopped_job.rb

Class : NotifyCreatorOfValidatedPetitionBeingStoppedJob

Total complexity : 2
Total lines : 11
Method Complexity # Lines
NotifyCreatorOfValidatedPetitionBeingStoppedJob#perform 2 4

lib/postcode_sanitizer.rb

Class : PostcodeSanitizer

Total complexity : 1
Total lines : 4
Method Complexity # Lines
PostcodeSanitizer#self.call 1 2

app/helpers/moderation_helper.rb

Class : ModerationHelper

Total complexity : 1
Total lines : 4
Method Complexity # Lines
ModerationHelper#moderation_delay? 1 2

app/controllers/ping_controller.rb

Class : PingController

Total complexity : 1
Total lines : 7
Method Complexity # Lines
PingController#ping 1 2

app/jobs/email_threshold_reminder_job.rb

Class : EmailThresholdReminderJob

Total complexity : 1
Total lines : 6
Method Complexity # Lines
EmailThresholdReminderJob#perform 1 2

app/jobs/close_petitions_early_job.rb

Class : ClosePetitionsEarlyJob

Total complexity : 1
Total lines : 8
Method Complexity # Lines
ClosePetitionsEarlyJob#perform 1 2

app/jobs/close_petitions_early_job.rb

Class : ClosePetitionsEarlyJob::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
ClosePetitionsEarlyJob::#schedule_for 1 2

app/jobs/notify_creator_that_moderation_is_delayed_job.rb

Class : NotifyCreatorThatModerationIsDelayedJob

Total complexity : 1
Total lines : 9
Method Complexity # Lines
NotifyCreatorThatModerationIsDelayedJob#perform 1 2

app/jobs/debated_petitions_job.rb

Class : DebatedPetitionsJob

Total complexity : 1
Total lines : 7
Method Complexity # Lines
DebatedPetitionsJob#perform 1 3

app/jobs/delete_petition_job.rb

Class : DeletePetitionJob

Total complexity : 1
Total lines : 6
Method Complexity # Lines
DeletePetitionJob#perform 1 2

app/jobs/refresh_constituencies_job.rb

Class : RefreshConstituenciesJob

Total complexity : 1
Total lines : 6
Method Complexity # Lines
RefreshConstituenciesJob#perform 1 2

app/jobs/update_petition_statistics_job.rb

Class : UpdatePetitionStatisticsJob

Total complexity : 1
Total lines : 6
Method Complexity # Lines
UpdatePetitionStatisticsJob#perform 1 2

app/jobs/close_petitions_job.rb

Class : ClosePetitionsJob

Total complexity : 1
Total lines : 6
Method Complexity # Lines
ClosePetitionsJob#perform 1 2

app/models/archived.rb

Class : Archived::

Total complexity : 1
Total lines : 4
Method Complexity # Lines
Archived::#table_name_prefix 1 2

app/models/feedback.rb

Class : Feedback

Total complexity : 1
Total lines : 8
Method Complexity # Lines
Feedback#petition_link? 1 2

app/mailers/feedback_mailer.rb

Class : FeedbackMailer

Total complexity : 1
Total lines : 8
Method Complexity # Lines
FeedbackMailer#send_feedback 1 6

Generated on 2019-09-22 14:30:40 -0400