مراية لـ
https://github.com/postalserver/postal.git
تم المزامنة 2025-12-01 05:43:04 +00:00
chore: annotate models
هذا الالتزام موجود في:
@@ -5,33 +5,34 @@
|
|||||||
# Table name: servers
|
# Table name: servers
|
||||||
#
|
#
|
||||||
# id :integer not null, primary key
|
# id :integer not null, primary key
|
||||||
# organization_id :integer
|
# allow_sender :boolean default(FALSE)
|
||||||
# uuid :string(255)
|
|
||||||
# name :string(255)
|
|
||||||
# mode :string(255)
|
|
||||||
# ip_pool_id :integer
|
|
||||||
# created_at :datetime
|
|
||||||
# updated_at :datetime
|
|
||||||
# permalink :string(255)
|
|
||||||
# send_limit :integer
|
|
||||||
# deleted_at :datetime
|
# deleted_at :datetime
|
||||||
|
# domains_not_to_click_track :text(65535)
|
||||||
|
# log_smtp_data :boolean default(FALSE)
|
||||||
# message_retention_days :integer
|
# message_retention_days :integer
|
||||||
|
# mode :string(255)
|
||||||
|
# name :string(255)
|
||||||
|
# outbound_spam_threshold :decimal(8, 2)
|
||||||
|
# permalink :string(255)
|
||||||
|
# postmaster_address :string(255)
|
||||||
|
# privacy_mode :boolean default(FALSE)
|
||||||
# raw_message_retention_days :integer
|
# raw_message_retention_days :integer
|
||||||
# raw_message_retention_size :integer
|
# raw_message_retention_size :integer
|
||||||
# allow_sender :boolean default(FALSE)
|
# send_limit :integer
|
||||||
# token :string(255)
|
|
||||||
# send_limit_approaching_at :datetime
|
# send_limit_approaching_at :datetime
|
||||||
# send_limit_approaching_notified_at :datetime
|
# send_limit_approaching_notified_at :datetime
|
||||||
# send_limit_exceeded_at :datetime
|
# send_limit_exceeded_at :datetime
|
||||||
# send_limit_exceeded_notified_at :datetime
|
# send_limit_exceeded_notified_at :datetime
|
||||||
# spam_threshold :decimal(8, 2)
|
|
||||||
# spam_failure_threshold :decimal(8, 2)
|
# spam_failure_threshold :decimal(8, 2)
|
||||||
# postmaster_address :string(255)
|
# spam_threshold :decimal(8, 2)
|
||||||
# suspended_at :datetime
|
# suspended_at :datetime
|
||||||
# outbound_spam_threshold :decimal(8, 2)
|
|
||||||
# domains_not_to_click_track :text(65535)
|
|
||||||
# suspension_reason :string(255)
|
# suspension_reason :string(255)
|
||||||
# log_smtp_data :boolean default(FALSE)
|
# token :string(255)
|
||||||
|
# uuid :string(255)
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# ip_pool_id :integer
|
||||||
|
# organization_id :integer
|
||||||
#
|
#
|
||||||
# Indexes
|
# Indexes
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -5,9 +5,9 @@
|
|||||||
# Table name: statistics
|
# Table name: statistics
|
||||||
#
|
#
|
||||||
# id :integer not null, primary key
|
# id :integer not null, primary key
|
||||||
# total_messages :bigint(8) default(0)
|
# total_incoming :bigint default(0)
|
||||||
# total_outgoing :bigint(8) default(0)
|
# total_messages :bigint default(0)
|
||||||
# total_incoming :bigint(8) default(0)
|
# total_outgoing :bigint default(0)
|
||||||
#
|
#
|
||||||
|
|
||||||
class Statistic < ApplicationRecord
|
class Statistic < ApplicationRecord
|
||||||
|
|||||||
@@ -1,48 +1,57 @@
|
|||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
# NOTE: only doing this in development as some production environments (Heroku)
|
# NOTE: only doing this in development as some production environments (Heroku)
|
||||||
# NOTE: are sensitive to local FS writes, and besides -- it's just not proper
|
# NOTE: are sensitive to local FS writes, and besides -- it's just not proper
|
||||||
# NOTE: to have a dev-mode tool do its thing in production.
|
# NOTE: to have a dev-mode tool do its thing in production.
|
||||||
if Rails.env.development?
|
if Rails.env.development?
|
||||||
|
require 'annotate'
|
||||||
task :set_annotation_options do
|
task :set_annotation_options do
|
||||||
# You can override any of these by setting an environment variable of the
|
# You can override any of these by setting an environment variable of the
|
||||||
# same name.
|
# same name.
|
||||||
Annotate.set_defaults(
|
Annotate.set_defaults(
|
||||||
"routes" => "false",
|
'active_admin' => 'false',
|
||||||
"position_in_routes" => "before",
|
'additional_file_patterns' => [],
|
||||||
"position_in_class" => "before",
|
'routes' => 'false',
|
||||||
"position_in_test" => "before",
|
'models' => 'true',
|
||||||
"position_in_fixture" => "before",
|
'position_in_routes' => 'before',
|
||||||
"position_in_factory" => "before",
|
'position_in_class' => 'before',
|
||||||
"position_in_serializer" => "before",
|
'position_in_test' => 'before',
|
||||||
"show_foreign_keys" => "true",
|
'position_in_fixture' => 'before',
|
||||||
"show_indexes" => "true",
|
'position_in_factory' => 'before',
|
||||||
"simple_indexes" => "false",
|
'position_in_serializer' => 'before',
|
||||||
"model_dir" => "app/models",
|
'show_foreign_keys' => 'true',
|
||||||
"root_dir" => "",
|
'show_complete_foreign_keys' => 'false',
|
||||||
"include_version" => "false",
|
'show_indexes' => 'true',
|
||||||
"require" => "",
|
'simple_indexes' => 'false',
|
||||||
"exclude_tests" => "false",
|
'model_dir' => 'app/models',
|
||||||
"exclude_fixtures" => "false",
|
'root_dir' => '',
|
||||||
"exclude_factories" => "false",
|
'include_version' => 'false',
|
||||||
"exclude_serializers" => "false",
|
'require' => '',
|
||||||
"exclude_scaffolds" => "true",
|
'exclude_tests' => 'false',
|
||||||
"exclude_controllers" => "true",
|
'exclude_fixtures' => 'false',
|
||||||
"exclude_helpers" => "true",
|
'exclude_factories' => 'false',
|
||||||
"ignore_model_sub_dir" => "false",
|
'exclude_serializers' => 'false',
|
||||||
"ignore_columns" => nil,
|
'exclude_scaffolds' => 'true',
|
||||||
"ignore_routes" => nil,
|
'exclude_controllers' => 'true',
|
||||||
"ignore_unknown_models" => "false",
|
'exclude_helpers' => 'true',
|
||||||
"hide_limit_column_types" => "integer,boolean",
|
'exclude_sti_subclasses' => 'false',
|
||||||
"skip_on_db_migrate" => "false",
|
'ignore_model_sub_dir' => 'false',
|
||||||
"format_bare" => "true",
|
'ignore_columns' => nil,
|
||||||
"format_rdoc" => "false",
|
'ignore_routes' => nil,
|
||||||
"format_markdown" => "false",
|
'ignore_unknown_models' => 'false',
|
||||||
"sort" => "false",
|
'hide_limit_column_types' => 'integer,bigint,boolean',
|
||||||
"force" => "false",
|
'hide_default_column_types' => 'json,jsonb,hstore',
|
||||||
"trace" => "false",
|
'skip_on_db_migrate' => 'false',
|
||||||
"wrapper_open" => nil,
|
'format_bare' => 'true',
|
||||||
"wrapper_close" => nil
|
'format_rdoc' => 'false',
|
||||||
|
'format_yard' => 'false',
|
||||||
|
'format_markdown' => 'false',
|
||||||
|
'sort' => 'false',
|
||||||
|
'force' => 'false',
|
||||||
|
'frozen' => 'false',
|
||||||
|
'classified_sort' => 'true',
|
||||||
|
'trace' => 'false',
|
||||||
|
'wrapper_open' => nil,
|
||||||
|
'wrapper_close' => nil,
|
||||||
|
'with_comment' => 'true'
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,21 @@
|
|||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
# == Schema Information
|
||||||
|
#
|
||||||
|
# Table name: credentials
|
||||||
|
#
|
||||||
|
# id :integer not null, primary key
|
||||||
|
# hold :boolean default(FALSE)
|
||||||
|
# key :string(255)
|
||||||
|
# last_used_at :datetime
|
||||||
|
# name :string(255)
|
||||||
|
# options :text(65535)
|
||||||
|
# type :string(255)
|
||||||
|
# uuid :string(255)
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# server_id :integer
|
||||||
|
#
|
||||||
FactoryBot.define do
|
FactoryBot.define do
|
||||||
factory :credential do
|
factory :credential do
|
||||||
server
|
server
|
||||||
|
|||||||
@@ -1,5 +1,25 @@
|
|||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
# == Schema Information
|
||||||
|
#
|
||||||
|
# Table name: http_endpoints
|
||||||
|
#
|
||||||
|
# id :integer not null, primary key
|
||||||
|
# disabled_until :datetime
|
||||||
|
# encoding :string(255)
|
||||||
|
# error :text(65535)
|
||||||
|
# format :string(255)
|
||||||
|
# include_attachments :boolean default(TRUE)
|
||||||
|
# last_used_at :datetime
|
||||||
|
# name :string(255)
|
||||||
|
# strip_replies :boolean default(FALSE)
|
||||||
|
# timeout :integer
|
||||||
|
# url :string(255)
|
||||||
|
# uuid :string(255)
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# server_id :integer
|
||||||
|
#
|
||||||
FactoryBot.define do
|
FactoryBot.define do
|
||||||
factory :http_endpoint do
|
factory :http_endpoint do
|
||||||
server
|
server
|
||||||
|
|||||||
@@ -1,5 +1,26 @@
|
|||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
# == Schema Information
|
||||||
|
#
|
||||||
|
# Table name: routes
|
||||||
|
#
|
||||||
|
# id :integer not null, primary key
|
||||||
|
# endpoint_type :string(255)
|
||||||
|
# mode :string(255)
|
||||||
|
# name :string(255)
|
||||||
|
# spam_mode :string(255)
|
||||||
|
# token :string(255)
|
||||||
|
# uuid :string(255)
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# domain_id :integer
|
||||||
|
# endpoint_id :integer
|
||||||
|
# server_id :integer
|
||||||
|
#
|
||||||
|
# Indexes
|
||||||
|
#
|
||||||
|
# index_routes_on_token (token)
|
||||||
|
#
|
||||||
FactoryBot.define do
|
FactoryBot.define do
|
||||||
factory :route do
|
factory :route do
|
||||||
name { "test" }
|
name { "test" }
|
||||||
|
|||||||
@@ -5,33 +5,34 @@
|
|||||||
# Table name: servers
|
# Table name: servers
|
||||||
#
|
#
|
||||||
# id :integer not null, primary key
|
# id :integer not null, primary key
|
||||||
# organization_id :integer
|
# allow_sender :boolean default(FALSE)
|
||||||
# uuid :string(255)
|
|
||||||
# name :string(255)
|
|
||||||
# mode :string(255)
|
|
||||||
# ip_pool_id :integer
|
|
||||||
# created_at :datetime
|
|
||||||
# updated_at :datetime
|
|
||||||
# permalink :string(255)
|
|
||||||
# send_limit :integer
|
|
||||||
# deleted_at :datetime
|
# deleted_at :datetime
|
||||||
|
# domains_not_to_click_track :text(65535)
|
||||||
|
# log_smtp_data :boolean default(FALSE)
|
||||||
# message_retention_days :integer
|
# message_retention_days :integer
|
||||||
|
# mode :string(255)
|
||||||
|
# name :string(255)
|
||||||
|
# outbound_spam_threshold :decimal(8, 2)
|
||||||
|
# permalink :string(255)
|
||||||
|
# postmaster_address :string(255)
|
||||||
|
# privacy_mode :boolean default(FALSE)
|
||||||
# raw_message_retention_days :integer
|
# raw_message_retention_days :integer
|
||||||
# raw_message_retention_size :integer
|
# raw_message_retention_size :integer
|
||||||
# allow_sender :boolean default(FALSE)
|
# send_limit :integer
|
||||||
# token :string(255)
|
|
||||||
# send_limit_approaching_at :datetime
|
# send_limit_approaching_at :datetime
|
||||||
# send_limit_approaching_notified_at :datetime
|
# send_limit_approaching_notified_at :datetime
|
||||||
# send_limit_exceeded_at :datetime
|
# send_limit_exceeded_at :datetime
|
||||||
# send_limit_exceeded_notified_at :datetime
|
# send_limit_exceeded_notified_at :datetime
|
||||||
# spam_threshold :decimal(8, 2)
|
|
||||||
# spam_failure_threshold :decimal(8, 2)
|
# spam_failure_threshold :decimal(8, 2)
|
||||||
# postmaster_address :string(255)
|
# spam_threshold :decimal(8, 2)
|
||||||
# suspended_at :datetime
|
# suspended_at :datetime
|
||||||
# outbound_spam_threshold :decimal(8, 2)
|
|
||||||
# domains_not_to_click_track :text(65535)
|
|
||||||
# suspension_reason :string(255)
|
# suspension_reason :string(255)
|
||||||
# log_smtp_data :boolean default(FALSE)
|
# token :string(255)
|
||||||
|
# uuid :string(255)
|
||||||
|
# created_at :datetime
|
||||||
|
# updated_at :datetime
|
||||||
|
# ip_pool_id :integer
|
||||||
|
# organization_id :integer
|
||||||
#
|
#
|
||||||
# Indexes
|
# Indexes
|
||||||
#
|
#
|
||||||
|
|||||||
المرجع في مشكلة جديدة
حظر مستخدم