sugoi-mail 0.0.5 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/INSTALL +65 -0
- data/app/controllers/sugoi_admin_controller.rb +9 -2
- data/app/models/help.rb +2 -0
- data/app/views/sugoi_admin/_command_description.rhtml +9 -0
- data/app/views/sugoi_admin/_command_list.rhtml +5 -0
- data/app/views/sugoi_admin/help.rhtml +8 -0
- data/config/boot.rb +3 -3
- data/db/migrate/027_create_helps.rb +19 -0
- data/db/schema.mysql.sql +10 -1
- data/db/schema.postgresql.sql +10 -1
- data/db/schema.rb +9 -1
- data/db/schema.sqlite.sql +10 -1
- data/db/schema.sqlserver.sql +11 -1
- data/db/schema_version +1 -1
- data/lib/tasks/release.rake +1 -1
- data/test/fixtures/helps.yml +134 -0
- data/test/functional/sugoi_admin_controller_test.rb +30 -1
- data/test/unit/help_test.rb +20 -0
- metadata +11 -4
- data/app/controllers/sugoi_admin_help_controller.rb +0 -51
data/INSTALL
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
This is just a quick collection of notes right now, which I shall actually
|
2
|
+
structure into a proper install document when I have something vaguely-
|
3
|
+
sensible written in the first place.
|
4
|
+
|
5
|
+
DEBIAN
|
6
|
+
|
7
|
+
First, compile Ruby from source. This is because Debian's packaging of
|
8
|
+
Ruby sucks. There are pages out there put together by people who have
|
9
|
+
carefully amassed every last little package that you need to get a
|
10
|
+
reasonably-complete Ruby installation, but until the Debian guys realize
|
11
|
+
that it's _okay_ to have a single package that installs the full core
|
12
|
+
Ruby, like they have for Python and Perl, I'll just ignore apt for now.
|
13
|
+
|
14
|
+
My recommendation:
|
15
|
+
|
16
|
+
# apt-get install libreadline-dev libncurses-dev
|
17
|
+
# mkdir /usr/local/src
|
18
|
+
# cd /usr/local/src
|
19
|
+
# wget http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.5-p12.tar.gz
|
20
|
+
# tar zxvf ruby-1.8.5-p12.tar.gz
|
21
|
+
# cd ruby-1.8.5-p12
|
22
|
+
# ./configure --prefix=/usr/local && make && make check && make install
|
23
|
+
# cd /usr/local/src
|
24
|
+
# wget http://rubyforge.org/frs/download.php/11289/rubygems-0.9.0.tgz
|
25
|
+
# tar zxvf rubygems-0.9.0.tgz
|
26
|
+
# cd rubygems-0.9.0
|
27
|
+
# /usr/local/bin/ruby setup.rb config
|
28
|
+
# /usr/local/bin/ruby setup.rb install
|
29
|
+
|
30
|
+
Wow, I bet I could put that into a shell script!
|
31
|
+
|
32
|
+
And then you'll want to install mysql if you're a mysql user. Of
|
33
|
+
course, in Debian, this is easier said than done. Set up your mysql
|
34
|
+
server, which I hope you know how to do. And then create a user who
|
35
|
+
will be allowed to make databases:
|
36
|
+
|
37
|
+
mysql> grant all on sugoi.* to sugoi identified by 'sugoi';
|
38
|
+
mysql> grant all on sugoi_test.* to sugoi identified by 'sugoi';
|
39
|
+
|
40
|
+
Then you'll need to install the Debian mysql client headers so that you
|
41
|
+
can install the mysql gem:
|
42
|
+
|
43
|
+
# apt-get install libmysqlclient15-dev
|
44
|
+
|
45
|
+
The number is subject to change as time goes by, but at the time of
|
46
|
+
writing it's 15.
|
47
|
+
|
48
|
+
Once you have all that, say:
|
49
|
+
|
50
|
+
# gem install -y sugoi-mail
|
51
|
+
|
52
|
+
If you leave off the -y, it'll ask if you really want to install every
|
53
|
+
single one of the mandatory dependencies.
|
54
|
+
|
55
|
+
mysql users will also want to install the mysql gem, and postgresql
|
56
|
+
users the postgresql gem. Let's go with mysql:
|
57
|
+
|
58
|
+
# gem install mysql
|
59
|
+
|
60
|
+
Once that's done, create a user for sugoi-mail (or just use an account
|
61
|
+
you already have) and say:
|
62
|
+
|
63
|
+
$ sugoi-mail install sugoi
|
64
|
+
|
65
|
+
This should, all being well, set up and start a sugoi-mail installation.
|
@@ -2,7 +2,6 @@ class SugoiAdminController < CommandlineController
|
|
2
2
|
model :mailinglist
|
3
3
|
|
4
4
|
private
|
5
|
-
|
6
5
|
def get_password
|
7
6
|
password = ask "Password: " do |q| q.echo = false end
|
8
7
|
confirmation = ask "Confirm: " do |q| q.echo = false end
|
@@ -38,7 +37,7 @@ class SugoiAdminController < CommandlineController
|
|
38
37
|
|
39
38
|
def init
|
40
39
|
@alreadythere = []
|
41
|
-
[ MailinglistClass, AdminMessage, SysConfig ].each do |table|
|
40
|
+
[ MailinglistClass, AdminMessage, SysConfig, Help ].each do |table|
|
42
41
|
fixture = YAML.load(File.read(File.join(RAILS_ROOT,
|
43
42
|
"test",
|
44
43
|
"fixtures",
|
@@ -236,4 +235,12 @@ class SugoiAdminController < CommandlineController
|
|
236
235
|
|
237
236
|
@removed_addresses=@mailinglist.remove_addresses address
|
238
237
|
end
|
238
|
+
|
239
|
+
def help(command=nil)
|
240
|
+
if command
|
241
|
+
@help = Help.find_by_facility_and_command self.class.name, command
|
242
|
+
else
|
243
|
+
@help = Help.find_all_by_facility self.class.name
|
244
|
+
end
|
245
|
+
end
|
239
246
|
end
|
data/app/models/help.rb
ADDED
@@ -0,0 +1,5 @@
|
|
1
|
+
Sugoi-admin is the administrative interface to sugoi-mail used to
|
2
|
+
bootstrap and configure your sugoi-mail installation. It has a
|
3
|
+
selection of subcommands:
|
4
|
+
<% @help.sort_by { |h| h.command }.each do |help| %>
|
5
|
+
<%= "%25s %s" % [ help.command, help.summary ] %><% end %>
|
data/config/boot.rb
CHANGED
@@ -25,7 +25,7 @@ unless defined?(Rails::Initializer)
|
|
25
25
|
rails_gem = Gem.cache.search('rails', "=#{version}").first
|
26
26
|
|
27
27
|
if rails_gem
|
28
|
-
|
28
|
+
gem "rails", "=#{version}"
|
29
29
|
require rails_gem.full_gem_path + '/lib/initializer'
|
30
30
|
else
|
31
31
|
STDERR.puts %(Cannot find gem for Rails =#{version}:
|
@@ -35,10 +35,10 @@ unless defined?(Rails::Initializer)
|
|
35
35
|
exit 1
|
36
36
|
end
|
37
37
|
else
|
38
|
-
|
38
|
+
gem "rails"
|
39
39
|
require 'initializer'
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
43
|
Rails::Initializer.run(:set_load_path)
|
44
|
-
end
|
44
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# Doesn't calling the class "Helps" make it look just like it was written
|
2
|
+
# by a Russian guy or something? Well, I like the way it looks well enough
|
3
|
+
# to let it stand as-is.
|
4
|
+
|
5
|
+
class CreateHelps < ActiveRecord::Migration
|
6
|
+
def self.up
|
7
|
+
create_table :helps do |t|
|
8
|
+
t.column :facility, :string
|
9
|
+
t.column :command, :string
|
10
|
+
t.column :parameters, :string
|
11
|
+
t.column :summary, :string
|
12
|
+
t.column :explanation, :text
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.down
|
17
|
+
drop_table :helps
|
18
|
+
end
|
19
|
+
end
|
data/db/schema.mysql.sql
CHANGED
@@ -39,6 +39,15 @@ CREATE TABLE domains (
|
|
39
39
|
`password` text NOT NULL
|
40
40
|
) ENGINE=InnoDB;
|
41
41
|
|
42
|
+
CREATE TABLE helps (
|
43
|
+
`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY,
|
44
|
+
`facility` varchar(255),
|
45
|
+
`command` varchar(255),
|
46
|
+
`parameters` varchar(255),
|
47
|
+
`summary` varchar(255),
|
48
|
+
`explanation` text
|
49
|
+
) ENGINE=InnoDB;
|
50
|
+
|
42
51
|
CREATE TABLE mailinglist_classes (
|
43
52
|
`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY,
|
44
53
|
`name` text NOT NULL,
|
@@ -109,4 +118,4 @@ CREATE TABLE schema_info (
|
|
109
118
|
`version` int(11)
|
110
119
|
) ENGINE=InnoDB;
|
111
120
|
|
112
|
-
insert into schema_info (version) values (
|
121
|
+
insert into schema_info (version) values (27);
|
data/db/schema.postgresql.sql
CHANGED
@@ -39,6 +39,15 @@ CREATE TABLE domains (
|
|
39
39
|
"password" text NOT NULL
|
40
40
|
);
|
41
41
|
|
42
|
+
CREATE TABLE helps (
|
43
|
+
"id" serial primary key,
|
44
|
+
"facility" character varying(255),
|
45
|
+
"command" character varying(255),
|
46
|
+
"parameters" character varying(255),
|
47
|
+
"summary" character varying(255),
|
48
|
+
"explanation" text
|
49
|
+
);
|
50
|
+
|
42
51
|
CREATE TABLE mailinglist_classes (
|
43
52
|
"id" serial primary key,
|
44
53
|
"name" text NOT NULL,
|
@@ -109,4 +118,4 @@ CREATE TABLE schema_info (
|
|
109
118
|
"version" integer
|
110
119
|
);
|
111
120
|
|
112
|
-
insert into schema_info (version) values (
|
121
|
+
insert into schema_info (version) values (27);
|
data/db/schema.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
# migrations feature of ActiveRecord to incrementally modify your database, and
|
3
3
|
# then regenerate this schema definition.
|
4
4
|
|
5
|
-
ActiveRecord::Schema.define(:version =>
|
5
|
+
ActiveRecord::Schema.define(:version => 27) do
|
6
6
|
|
7
7
|
create_table "addresses", :force => true do |t|
|
8
8
|
t.column "address", :text
|
@@ -32,6 +32,14 @@ ActiveRecord::Schema.define(:version => 26) do
|
|
32
32
|
t.column "password", :text, :null => false
|
33
33
|
end
|
34
34
|
|
35
|
+
create_table "helps", :force => true do |t|
|
36
|
+
t.column "facility", :string
|
37
|
+
t.column "command", :string
|
38
|
+
t.column "parameters", :string
|
39
|
+
t.column "summary", :string
|
40
|
+
t.column "explanation", :text
|
41
|
+
end
|
42
|
+
|
35
43
|
create_table "mailinglist_classes", :force => true do |t|
|
36
44
|
t.column "name", :text, :null => false
|
37
45
|
t.column "description", :text
|
data/db/schema.sqlite.sql
CHANGED
@@ -39,6 +39,15 @@ CREATE TABLE domains (
|
|
39
39
|
"password" text NOT NULL
|
40
40
|
);
|
41
41
|
|
42
|
+
CREATE TABLE helps (
|
43
|
+
"id" INTEGER PRIMARY KEY NOT NULL,
|
44
|
+
"facility" varchar(255),
|
45
|
+
"command" varchar(255),
|
46
|
+
"parameters" varchar(255),
|
47
|
+
"summary" varchar(255),
|
48
|
+
"explanation" text
|
49
|
+
);
|
50
|
+
|
42
51
|
CREATE TABLE mailinglist_classes (
|
43
52
|
"id" INTEGER PRIMARY KEY NOT NULL,
|
44
53
|
"name" text NOT NULL,
|
@@ -109,4 +118,4 @@ CREATE TABLE schema_info (
|
|
109
118
|
"version" integer
|
110
119
|
);
|
111
120
|
|
112
|
-
insert into schema_info (version) values (
|
121
|
+
insert into schema_info (version) values (27);
|
data/db/schema.sqlserver.sql
CHANGED
@@ -43,6 +43,16 @@ CREATE TABLE domains (
|
|
43
43
|
[password] text NOT NULL
|
44
44
|
);
|
45
45
|
|
46
|
+
CREATE TABLE helps (
|
47
|
+
[id] int NOT NULL IDENTITY(1,
|
48
|
+
1) PRIMARY KEY,
|
49
|
+
[facility] varchar(255),
|
50
|
+
[command] varchar(255),
|
51
|
+
[parameters] varchar(255),
|
52
|
+
[summary] varchar(255),
|
53
|
+
[explanation] text
|
54
|
+
);
|
55
|
+
|
46
56
|
CREATE TABLE mailinglist_classes (
|
47
57
|
[id] int NOT NULL IDENTITY(1,
|
48
58
|
1) PRIMARY KEY,
|
@@ -119,4 +129,4 @@ CREATE TABLE schema_info (
|
|
119
129
|
[version] int
|
120
130
|
);
|
121
131
|
|
122
|
-
insert into schema_info (version) values (
|
132
|
+
insert into schema_info (version) values (27);
|
data/db/schema_version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
27
|
data/lib/tasks/release.rake
CHANGED
@@ -0,0 +1,134 @@
|
|
1
|
+
---
|
2
|
+
help_1:
|
3
|
+
command: init
|
4
|
+
parameters:
|
5
|
+
facility: SugoiAdminController
|
6
|
+
explanation: >
|
7
|
+
Sets the initial configuration for a sugoi-mail system. Once
|
8
|
+
you've run this, you need to create a domain and a user. If this
|
9
|
+
has already been run, it won't overwrite existing values.
|
10
|
+
|
11
|
+
You shouldn't need to use this at all if you've installed sugoi-mail
|
12
|
+
using the rails-app-installer.
|
13
|
+
id: 1
|
14
|
+
summary: Initializes a sugoi-mail system
|
15
|
+
help_2:
|
16
|
+
command: show_config
|
17
|
+
parameters: "[<configuration variable>]"
|
18
|
+
facility: SugoiAdminController
|
19
|
+
explanation: >
|
20
|
+
Shows the configuration of the sugoi-mail system, or shows the value of a specific configuration variable.
|
21
|
+
id: 2
|
22
|
+
summary: Shows configuration parameter(s)
|
23
|
+
help_3:
|
24
|
+
command: set_config
|
25
|
+
parameters: <configuration variable> <new value>
|
26
|
+
facility: SugoiAdminController
|
27
|
+
explanation: >
|
28
|
+
Sets a configuration variable to a new value.
|
29
|
+
id: 3
|
30
|
+
summary: Sets a configuration parameter
|
31
|
+
help_4:
|
32
|
+
command: list_domains
|
33
|
+
parameters: ""
|
34
|
+
facility: SugoiAdminController
|
35
|
+
explanation: Lists all the domains defined in the sugoi-mail system.
|
36
|
+
id: 4
|
37
|
+
summary: Lists domains
|
38
|
+
help_5:
|
39
|
+
command: list_mailinglists
|
40
|
+
parameters: <domain>
|
41
|
+
facility: SugoiAdminController
|
42
|
+
explanation: >
|
43
|
+
Lists all of the mailing lists that have been created in domain <domain>.
|
44
|
+
id: 5
|
45
|
+
summary: Lists mailing lists in a domain
|
46
|
+
help_6:
|
47
|
+
command: list_addresses
|
48
|
+
parameters: <mailinglist>
|
49
|
+
facility: SugoiAdminController
|
50
|
+
explanation: >
|
51
|
+
Lists all of the addresses that are subscribed to the mailing list whose
|
52
|
+
address is <mailinglist>.
|
53
|
+
id: 6
|
54
|
+
summary: Lists the addresses in a mailing list.
|
55
|
+
help_7:
|
56
|
+
command: create_domain
|
57
|
+
parameters: <domain>
|
58
|
+
facility: SugoiAdminController
|
59
|
+
explanation: >
|
60
|
+
Creates a new domain with the name <domain>. This will ask for a password
|
61
|
+
for the new domain.
|
62
|
+
id: 7
|
63
|
+
summary: Creates a new domain
|
64
|
+
help_8:
|
65
|
+
command: create_user
|
66
|
+
parameters: <domain> <username>
|
67
|
+
facility: SugoiAdminController
|
68
|
+
explanation: >
|
69
|
+
Creates a new user with the name <username> in the domain <domain>. This
|
70
|
+
will ask for a password for the new user.
|
71
|
+
id: 8
|
72
|
+
summary: Creates a new user
|
73
|
+
help_9:
|
74
|
+
command: list_users
|
75
|
+
parameters: <domain>
|
76
|
+
facility: SugoiAdminController
|
77
|
+
explanation: Lists the users that have been created in domain <domain>.
|
78
|
+
id: 9
|
79
|
+
summary: Lists the users in a domain.
|
80
|
+
help_10:
|
81
|
+
command: list_mailinglist_classes
|
82
|
+
parameters: ""
|
83
|
+
facility: SugoiAdminController
|
84
|
+
explanation: >
|
85
|
+
Prints out a list of mailing list classes. A mailing list class defines
|
86
|
+
the behaviour that a mailing list defined within that class will have.
|
87
|
+
id: 10
|
88
|
+
summary: Outputs a list of mailing list classes defined
|
89
|
+
help_11:
|
90
|
+
command: create_list
|
91
|
+
parameters: <mailinglist class> <mailinglist name> <domain name> <user name> [<description>]
|
92
|
+
facility: SugoiAdminController
|
93
|
+
explanation: >
|
94
|
+
Creates a mailing list of class <mailinglist class> (use the
|
95
|
+
list_mailinglist_classes command to see the available mailing list classes)
|
96
|
+
named <mailinglist name> in domain <domain name> owned by the user <user
|
97
|
+
name>.
|
98
|
+
id: 11
|
99
|
+
summary: Create a mailing list
|
100
|
+
help_12:
|
101
|
+
command: subscribe
|
102
|
+
parameters: <mailinglist address> <email address>
|
103
|
+
facility: SugoiAdminController
|
104
|
+
explanation: >
|
105
|
+
Subscribes the address <email address> to the mailing list whose address is
|
106
|
+
<mailinglist address>
|
107
|
+
id: 12
|
108
|
+
summary: Subscribe an address to a mailing list
|
109
|
+
help_13:
|
110
|
+
command: unsubscribe
|
111
|
+
parameters: <mailinglist address> <email address>
|
112
|
+
facility: SugoiAdminController
|
113
|
+
explanation: >
|
114
|
+
Unsubscribes the address <email address> from the mailing list whose
|
115
|
+
address is <mailinglist address>
|
116
|
+
id: 13
|
117
|
+
summary: Unsubscribe an address from a mailing list
|
118
|
+
help_14:
|
119
|
+
id: 14
|
120
|
+
command: help
|
121
|
+
parameters: [<command>]
|
122
|
+
facility: SugoiAdminController
|
123
|
+
summary: Explains the sugoi-admin commands
|
124
|
+
explanation: >
|
125
|
+
Gives a list of all the sugoi-admin commands, along with their
|
126
|
+
descriptions, or gives detailed help on a specific command.
|
127
|
+
help_15:
|
128
|
+
id: 15
|
129
|
+
command: list_mlclasses
|
130
|
+
parameters: ""
|
131
|
+
facility: SugoiAdminController
|
132
|
+
summary: A shortcut for list_mailinglist_classes
|
133
|
+
explanation: >
|
134
|
+
A shorter, easier-to-type alternative for "list_mailinglist_classes".
|
@@ -24,7 +24,7 @@ end
|
|
24
24
|
class SugoiAdminControllerTest < Test::Unit::TestCase
|
25
25
|
fixtures :domains, :users, :mailinglists, :admin_messages,
|
26
26
|
:mailinglist_classes, :confirmationcodes, :addresses,
|
27
|
-
:addresses_mailinglists, :sys_configs
|
27
|
+
:addresses_mailinglists, :sys_configs, :helps
|
28
28
|
|
29
29
|
def setup
|
30
30
|
@controller = SugoiAdminController.new
|
@@ -339,6 +339,7 @@ class SugoiAdminControllerTest < Test::Unit::TestCase
|
|
339
339
|
MailinglistClass.delete_all
|
340
340
|
SysConfig.delete_all
|
341
341
|
AdminMessage.delete_all
|
342
|
+
Help.delete_all
|
342
343
|
|
343
344
|
assert_nothing_raised do
|
344
345
|
invoke "init"
|
@@ -352,5 +353,33 @@ class SugoiAdminControllerTest < Test::Unit::TestCase
|
|
352
353
|
SysConfig.find_all.length
|
353
354
|
assert_equal @loaded_fixtures["admin_messages"].length,
|
354
355
|
AdminMessage.find_all.length
|
356
|
+
assert_equal @loaded_fixtures["helps"].length,
|
357
|
+
Help.find_all.length
|
358
|
+
end
|
359
|
+
|
360
|
+
def test_init_no_clobber_values
|
361
|
+
SysConfig.smtpserver="www.google.com"
|
362
|
+
|
363
|
+
assert_nothing_raised do
|
364
|
+
invoke "init"
|
365
|
+
end
|
366
|
+
|
367
|
+
assert_equal "www.google.com", SysConfig.smtpserver
|
368
|
+
|
369
|
+
assert_equal @loaded_fixtures["sys_configs"].length +
|
370
|
+
@loaded_fixtures["mailinglist_classes"].length +
|
371
|
+
@loaded_fixtures["admin_messages"].length +
|
372
|
+
@loaded_fixtures["helps"].length,
|
373
|
+
assigns["alreadythere"].length
|
374
|
+
|
375
|
+
end
|
376
|
+
|
377
|
+
def test_help_by_itself
|
378
|
+
assert_nothing_raised do
|
379
|
+
invoke "help"
|
380
|
+
end
|
381
|
+
|
382
|
+
assert Array === assigns["help"]
|
383
|
+
assert_equal @loaded_fixtures["helps"].length, assigns["help"].length
|
355
384
|
end
|
356
385
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class HelpTest < Test::Unit::TestCase
|
4
|
+
fixtures :helps
|
5
|
+
|
6
|
+
# Replace this with your real tests.
|
7
|
+
def test_truth
|
8
|
+
assert true
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_help_coverage_sugoi_admin
|
12
|
+
methods = SugoiAdminController.action_methods - "wsdl" - "perform_action"
|
13
|
+
commands = Help.find_all_by_facility("SugoiAdminController").map do
|
14
|
+
|h| h.command
|
15
|
+
end
|
16
|
+
|
17
|
+
assert_equal commands, commands.uniq
|
18
|
+
assert_equal methods.sort, commands.sort
|
19
|
+
end
|
20
|
+
end
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.
|
2
|
+
rubygems_version: 0.9.1
|
3
3
|
specification_version: 1
|
4
4
|
name: sugoi-mail
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0
|
7
|
-
date: 2007-01
|
6
|
+
version: 0.1.0
|
7
|
+
date: 2007-02-01 00:00:00 +09:00
|
8
8
|
summary: Powerful mailing list manager.
|
9
9
|
require_paths:
|
10
10
|
- .
|
@@ -42,6 +42,7 @@ files:
|
|
42
42
|
- app
|
43
43
|
- script
|
44
44
|
- db
|
45
|
+
- INSTALL
|
45
46
|
- test
|
46
47
|
- vendor
|
47
48
|
- doc/mailinglist_classes description.txt
|
@@ -95,7 +96,6 @@ files:
|
|
95
96
|
- app/apis
|
96
97
|
- app/controllers/account_controller.rb
|
97
98
|
- app/controllers/mailinglist_controller.rb
|
98
|
-
- app/controllers/sugoi_admin_help_controller.rb
|
99
99
|
- app/controllers/sugoi_admin_controller.rb
|
100
100
|
- app/controllers/mailservice_controller.rb
|
101
101
|
- app/controllers/commandline_controller.rb
|
@@ -109,6 +109,7 @@ files:
|
|
109
109
|
- app/models/address.rb
|
110
110
|
- app/models/admin_message.rb
|
111
111
|
- app/models/mailinglist.rb
|
112
|
+
- app/models/help.rb
|
112
113
|
- app/models/proxy_link.rb
|
113
114
|
- app/models/confirmationcode.rb
|
114
115
|
- app/models/user.rb
|
@@ -127,10 +128,13 @@ files:
|
|
127
128
|
- app/views/mailinglist/list.rhtml
|
128
129
|
- app/views/mailinglist/show.rhtml
|
129
130
|
- app/views/mailinglist/_form.rhtml
|
131
|
+
- app/views/sugoi_admin/_command_description.rhtml
|
130
132
|
- app/views/sugoi_admin/subscribe.rhtml
|
131
133
|
- app/views/sugoi_admin/list_addresses.rhtml
|
132
134
|
- app/views/sugoi_admin/init.rhtml
|
135
|
+
- app/views/sugoi_admin/help.rhtml
|
133
136
|
- app/views/sugoi_admin/list_domains.rhtml
|
137
|
+
- app/views/sugoi_admin/_command_list.rhtml
|
134
138
|
- app/views/sugoi_admin/show_config.rhtml
|
135
139
|
- app/views/sugoi_admin/unsubscribe.rhtml
|
136
140
|
- app/views/sugoi_admin/list_mailinglist_classes.rhtml
|
@@ -193,6 +197,7 @@ files:
|
|
193
197
|
- db/migrate/016_add_mailinglist_admin_to_users.rb
|
194
198
|
- db/migrate/025_add_proxify_to_mailinglist_classes.rb
|
195
199
|
- db/migrate/002_create_users.rb
|
200
|
+
- db/migrate/027_create_helps.rb
|
196
201
|
- db/migrate/004_create_addresses.rb
|
197
202
|
- db/migrate/015_add_messages_to_mailinglists.rb
|
198
203
|
- db/migrate/014_create_admin_messages.rb
|
@@ -227,6 +232,7 @@ files:
|
|
227
232
|
- test/unit/sys_config_test.rb
|
228
233
|
- test/unit/address_test.rb
|
229
234
|
- test/unit/confirmationcode_test.rb
|
235
|
+
- test/unit/help_test.rb
|
230
236
|
- test/unit/domain_test.rb
|
231
237
|
- test/fixtures/sys_configs.yml
|
232
238
|
- test/fixtures/confirmationcodes.yml
|
@@ -238,6 +244,7 @@ files:
|
|
238
244
|
- test/fixtures/mailinglists.yml
|
239
245
|
- test/fixtures/mailinglist_classes.yml
|
240
246
|
- test/fixtures/domains.yml
|
247
|
+
- test/fixtures/helps.yml
|
241
248
|
- test/fixtures/users.yml
|
242
249
|
- test/functional/sugoi_admin_controller_test.rb
|
243
250
|
- test/functional/mailservice_controller_test.rb
|
@@ -1,51 +0,0 @@
|
|
1
|
-
class SugoiAdminHelpController < CommandlineController
|
2
|
-
def init
|
3
|
-
end
|
4
|
-
|
5
|
-
def show_config
|
6
|
-
end
|
7
|
-
|
8
|
-
def set_config
|
9
|
-
end
|
10
|
-
|
11
|
-
def list_domains
|
12
|
-
end
|
13
|
-
def list_mailinglists
|
14
|
-
|
15
|
-
end
|
16
|
-
def list_addresses
|
17
|
-
|
18
|
-
end
|
19
|
-
def create_domain
|
20
|
-
end
|
21
|
-
|
22
|
-
def create_user domain_name, username,
|
23
|
-
end
|
24
|
-
|
25
|
-
def list_users domain_name
|
26
|
-
end
|
27
|
-
|
28
|
-
def list_mailinglist_classes
|
29
|
-
usage "list_mailinglist_classes",
|
30
|
-
"Outputs a list of mailing list classes defined"
|
31
|
-
end
|
32
|
-
alias list_mlclasses list_mailinglist_classes
|
33
|
-
|
34
|
-
def list_mailinglist_classes
|
35
|
-
end
|
36
|
-
|
37
|
-
def create_list mailinglist_name,
|
38
|
-
usage "create_mailing_list <mailinglist_class_id> <mailinglist_name> " +
|
39
|
-
"<domain_name> <user_name> [<description>]",
|
40
|
-
"Creates a mailing list of class <mailinglist_class_id> ("
|
41
|
-
"use list_mailinglist_classes to see the available mailing "+
|
42
|
-
"list classes) named <mailinglist_name> in domain "+
|
43
|
-
"<domain_name> owned by the user named <user_name>"
|
44
|
-
end
|
45
|
-
|
46
|
-
def subscribe(mailinglist_address, new_address)
|
47
|
-
end
|
48
|
-
|
49
|
-
def unsubscribe(mailinglist_address, address_to_remove)
|
50
|
-
end
|
51
|
-
end
|