1-- $Id: maia-mysql.sql 1568 2011-07-01 01:12:12Z rjl $ 2-- 3-- PLEASE NOTE: WHEN EDITING THIS FILE, USE iso-8859-1 4-- 5-- MAIA MAILGUARD LICENSE v.1.0 6-- 7-- Copyright 2004 by Robert LeBlanc <rjl@renaissoft.com> 8-- David Morton <mortonda@dgrmm.net> 9-- All rights reserved. 10-- 11-- PREAMBLE 12-- 13-- This License is designed for users of Maia Mailguard 14-- ("the Software") who wish to support the Maia Mailguard project by 15-- leaving "Maia Mailguard" branding information in the HTML output 16-- of the pages generated by the Software, and providing links back 17-- to the Maia Mailguard home page. Users who wish to remove this 18-- branding information should contact the copyright owner to obtain 19-- a Rebranding License. 20-- 21-- DEFINITION OF TERMS 22-- 23-- The "Software" refers to Maia Mailguard, including all of the 24-- associated PHP, Perl, and SQL scripts, documentation files, graphic 25-- icons and logo images. 26-- 27-- GRANT OF LICENSE 28-- 29-- Redistribution and use in source and binary forms, with or without 30-- modification, are permitted provided that the following conditions 31-- are met: 32-- 33-- 1. Redistributions of source code must retain the above copyright 34-- notice, this list of conditions and the following disclaimer. 35-- 36-- 2. Redistributions in binary form must reproduce the above copyright 37-- notice, this list of conditions and the following disclaimer in the 38-- documentation and/or other materials provided with the distribution. 39-- 40-- 3. The end-user documentation included with the redistribution, if 41-- any, must include the following acknowledgment: 42-- 43-- "This product includes software developed by Robert LeBlanc 44-- <rjl@renaissoft.com>." 45-- 46-- Alternately, this acknowledgment may appear in the software itself, 47-- if and wherever such third-party acknowledgments normally appear. 48-- 49-- 4. At least one of the following branding conventions must be used: 50-- 51-- a. The Maia Mailguard logo appears in the page-top banner of 52-- all HTML output pages in an unmodified form, and links 53-- directly to the Maia Mailguard home page; or 54-- 55-- b. The "Powered by Maia Mailguard" graphic appears in the HTML 56-- output of all gateway pages that lead to this software, 57-- linking directly to the Maia Mailguard home page; or 58-- 59-- c. A separate Rebranding License is obtained from the copyright 60-- owner, exempting the Licensee from 4(a) and 4(b), subject to 61-- the additional conditions laid out in that license document. 62-- 63-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS 64-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 65-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 66-- FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 67-- COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 68-- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 69-- BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 70-- OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 71-- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 72-- TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 73-- USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 74 75 76-- [users] contains maiad's per-address settings, and 77-- links e-mail addresses to Maia users. 78 79CREATE TABLE users ( 80 id int unsigned NOT NULL auto_increment, 81 priority int DEFAULT '7' NOT NULL, 82 policy_id int unsigned DEFAULT '1' NOT NULL, -- policy.id 83 email varbinary(255) NOT NULL, 84 maia_user_id int unsigned NOT NULL, -- maia_users.id 85 maia_domain_id int unsigned NOT NULL, -- maia_domains.id 86 PRIMARY KEY (id), 87 UNIQUE email (email), 88 INDEX users_idx_maia_user_id (maia_user_id) 89 90) ENGINE=InnoDB; 91 92 93-- [mailaddr] contains a list of sender e-mail addresses 94-- referenced by users' whitelists and blacklists. 95 96CREATE TABLE mailaddr ( 97 id int unsigned NOT NULL auto_increment, 98 priority int DEFAULT '7' NOT NULL, 99 email varbinary(255) NOT NULL, 100 PRIMARY KEY (id), 101 UNIQUE email (email) 102) ENGINE=InnoDB; 103 104 105-- [wblist] contains the whitelist and blacklist records, on 106-- a per-user (not per-address) basis. 107 108CREATE TABLE wblist ( 109 rid int unsigned NOT NULL, -- maia_users.id 110 sid int unsigned NOT NULL, -- mailaddr.id 111 wb char(1) NOT NULL, 112 PRIMARY KEY (rid,sid) 113) ENGINE=InnoDB; 114 115 116-- [policy] contains maiad's policy settings, which 117-- Maia applies on a per-address basis (i.e. each e-mail address 118-- is assigned its own unique policy record). Each domain also 119-- has a set of policy defaults, and the system default policy 120-- is stored as the '@.' user's policy record. 121 122CREATE TABLE policy ( 123 id int unsigned NOT NULL auto_increment, 124 policy_name varchar(255), 125 virus_lover char(1) DEFAULT 'Y', 126 spam_lover char(1) DEFAULT 'Y', 127 banned_files_lover char(1) DEFAULT 'Y', 128 bad_header_lover char(1) DEFAULT 'Y', 129 bypass_virus_checks char(1) DEFAULT 'Y', 130 bypass_spam_checks char(1) DEFAULT 'Y', 131 bypass_banned_checks char(1) DEFAULT 'Y', 132 bypass_header_checks char(1) DEFAULT 'Y', 133 discard_viruses char(1) DEFAULT 'N', 134 discard_spam char(1) DEFAULT 'N', 135 discard_banned_files char(1) DEFAULT 'N', 136 discard_bad_headers char(1) DEFAULT 'N', 137 spam_modifies_subj char(1) DEFAULT 'N', 138 spam_quarantine_to varchar(64) DEFAULT NULL, 139 spam_tag_level float DEFAULT '999', 140 spam_tag2_level float DEFAULT '999', 141 spam_kill_level float DEFAULT '999', 142 PRIMARY KEY (id) 143) ENGINE=InnoDB; 144 145 146-- [maia_config] contains Maia's configuration settings, as set 147-- and modified by the super-administrator. 148 149CREATE TABLE maia_config ( 150 id int unsigned NOT NULL, 151 enable_user_autocreation char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 152 enable_false_negative_management char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 153 enable_stats_tracking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 154 enable_virus_scanning char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 155 enable_spam_filtering char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 156 enable_banned_files_checking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 157 enable_bad_header_checking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 158 enable_charts char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 159 enable_spamtraps char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 160 enable_stats_reporting char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 161 enable_address_linking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 162 enable_privacy_invasion char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 163 enable_username_changes char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 164 internal_auth char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 165 system_default_user_is_local char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 166 user_virus_scanning char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 167 user_spam_filtering char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 168 user_banned_files_checking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 169 user_bad_header_checking char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 170 admin_email varchar(255), 171 expiry_period int unsigned DEFAULT '30', -- days 172 ham_cache_expiry_period int unsigned DEFAULT '5', -- days 173 reminder_threshold_count int unsigned DEFAULT '100', -- items 174 reminder_threshold_size int unsigned DEFAULT '500000', -- bytes 175 reminder_template_file varchar(255) DEFAULT 'reminder.tpl', 176 reminder_login_url varchar(255), 177 newuser_template_file varchar(255) DEFAULT 'newuser.tpl', 178 smtp_server varchar(255) DEFAULT 'localhost', 179 smtp_port int unsigned DEFAULT '10025', 180 currency_label varchar(15) DEFAULT '$', 181 bandwidth_cost float DEFAULT '0.0' NOT NULL, 182 chart_ham_colour varchar(32) DEFAULT '#DDDDB7', 183 chart_spam_colour varchar(32) DEFAULT '#FFAAAA', 184 chart_virus_colour varchar(32) DEFAULT '#CCFFCC', 185 chart_fp_colour varchar(32) DEFAULT '#C4CA73', 186 chart_fn_colour varchar(32) DEFAULT '#FF7575', 187 chart_suspected_ham_colour varchar(32) DEFAULT '#FFFFB7', 188 chart_suspected_spam_colour varchar(32) DEFAULT '#FFCCCC', 189 chart_wl_colour varchar(32) DEFAULT '#eeeeee', 190 chart_bl_colour varchar(32) DEFAULT '#888888', 191 chart_background_colour varchar(32) DEFAULT '#B0ECFF', 192 chart_font_colour varchar(32) DEFAULT '#3D3D50', 193 chart_autogeneration_interval int unsigned DEFAULT '60', -- minutes 194 banner_title varchar(255) DEFAULT 'Maia Mailguard', 195 use_icons char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 196 use_logo char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 197 logo_url varchar(255) DEFAULT 'http://www.maiamailguard.com/', 198 logo_file varchar(255) DEFAULT 'images/maia-logotoolbar.gif', 199 logo_alt_text varchar(255) DEFAULT 'Maia Mailguard Home Page', 200 virus_info_url varchar(255) DEFAULT 'http://www.google.com/search?q=%%VIRUSNAME%%+virus+information', 201 virus_lookup varchar(20) DEFAULT 'google', 202 primary_report_server varchar(255) DEFAULT 'maia.renaissoft.com', 203 primary_report_port int unsigned DEFAULT '443', 204 secondary_report_server varchar(255), 205 secondary_report_port int unsigned DEFAULT '443', 206 reporter_sitename varchar(255), 207 reporter_username varchar(50), 208 reporter_password varchar(50), 209 size_limit int unsigned DEFAULT '1000000', 210 oversize_policy char(1) DEFAULT 'B' NOT NULL, -- 'P', 'B' 211 sa_score_set int unsigned DEFAULT '0' NOT NULL, 212 key_file varchar(255) DEFAULT 'blowfish.key', 213 PRIMARY KEY (id) 214) ENGINE=InnoDB; 215 216 217-- [maia_languages] contains a list of the installed languages 218-- and their ISO-639 two-letter abbreviations. 219 220CREATE TABLE maia_languages ( 221 id int unsigned NOT NULL auto_increment, 222 language_name varchar(100) NOT NULL, -- e.g. 'English' 223 abbreviation char(2) NOT NULL, -- e.g. 'en' 224 installed char(1) DEFAULT 'N' NOT NULL, 225 PRIMARY KEY (id), 226 UNIQUE abbreviation (abbreviation) 227) ENGINE=InnoDB; 228 229 230 231-- [maia_users] contains mail filter settings that apply to 232-- e-mail recipients who have registered with Maia. The 233-- user_level is stored as one of (U)ser, (A)dministrator, 234-- or (S)uper-Administrator. 235 236CREATE TABLE maia_users ( 237 id int unsigned NOT NULL auto_increment, 238 user_name varchar(255) NOT NULL, 239 user_level char(1) DEFAULT 'U' NOT NULL, -- 'U', 'A', 'S' 240 reminders char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 241 charts char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 242 primary_email_id int unsigned DEFAULT '0' NOT NULL, -- users.id 243 language varchar(10) DEFAULT 'en' NOT NULL, 244 charset varchar(20) DEFAULT 'ISO-8859-1' NOT NULL, 245 spamtrap char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 246 password varchar(128), -- scrypt() 247 auto_whitelist char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 248 items_per_page int unsigned DEFAULT '50' NOT NULL, 249 spam_quarantine_sort char(2) DEFAULT 'XA' NOT NULL, -- [XDFS][AD] 250 virus_quarantine_sort char(2) DEFAULT 'DA' NOT NULL, -- [DFS][AD] 251 header_quarantine_sort char(2) DEFAULT 'DA' NOT NULL, -- [DFS][AD] 252 attachment_quarantine_sort char(2) DEFAULT 'DA' NOT NULL, -- [DFS][AD] 253 ham_cache_sort char(2) DEFAULT 'XD' NOT NULL, -- [XDFS][AD] 254 discard_ham char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 255 theme_id int unsigned DEFAULT '1' NOT NULL, 256 quarantine_digest_interval int unsigned DEFAULT '0' NOT NULL, 257 last_digest_sent datetime, 258 truncate_subject int unsigned DEFAULT '20' NOT NULL, 259 truncate_email int unsigned DEFAULT '20' NOT NULL, 260 PRIMARY KEY (id), 261 UNIQUE user_name (user_name), 262 UNIQUE primary_email_idx (primary_email_id), 263 KEY theme_id (theme_id) 264) ENGINE=InnoDB; 265 266 267-- [maia_domains] contains mail filter settings that apply to 268-- entire e-mail domains as defaults for users who are not 269-- registered with Maia. 270 271CREATE TABLE maia_domains ( 272 id int unsigned NOT NULL auto_increment, 273 domain varchar(255) NOT NULL, 274 reminders char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 275 charts char(1) DEFAULT 'N' NOT NULL, -- 'Y', 'N' 276 enable_user_autocreation char(1) DEFAULT 'Y' NOT NULL, -- 'Y', 'N' 277 language varchar(10) DEFAULT 'en' NOT NULL, 278 charset varchar(20) DEFAULT 'ISO-8859-1' NOT NULL, 279 routing_domain varchar(255) DEFAULT '' NOT NULL, 280 transport varchar(255) DEFAULT ':' NOT NULL, 281 PRIMARY KEY (id), 282 UNIQUE domain (domain) 283) ENGINE=InnoDB; 284CREATE INDEX maia_domains_idx_routing_domain ON maia_domains(routing_domain); 285 286 287-- [maia_domain_admins] is a one-to-many mapping of domains to 288-- users with administrator privileges (domains can have 289-- multiple administrators). 290 291CREATE TABLE maia_domain_admins ( 292 domain_id int unsigned NOT NULL, -- maia_domains.id 293 admin_id int unsigned NOT NULL, -- maia_users.id 294 PRIMARY KEY (domain_id, admin_id) 295) ENGINE=InnoDB; 296 297 298-- [maia_stats] is a table of per-user statistics that keeps 299-- track of the total number of mail items of each type, 300-- along with total sizes and superlatives (e.g. largest, 301-- smallest, oldest, newest, etc.). 302 303CREATE TABLE maia_stats ( 304 user_id int unsigned NOT NULL, -- maia_users.id 305 306 -- suspected ham 307 oldest_suspected_ham_date datetime, 308 newest_suspected_ham_date datetime, 309 smallest_suspected_ham_size int unsigned DEFAULT '0' NOT NULL, 310 largest_suspected_ham_size int unsigned DEFAULT '0' NOT NULL, 311 total_suspected_ham_size bigint unsigned DEFAULT '0' NOT NULL, 312 lowest_suspected_ham_score float DEFAULT '0.0' NOT NULL, 313 highest_suspected_ham_score float DEFAULT '0.0' NOT NULL, 314 total_suspected_ham_score float DEFAULT '0.0' NOT NULL, 315 total_suspected_ham_items int unsigned DEFAULT '0' NOT NULL, 316 317 -- ham 318 oldest_ham_date datetime, 319 newest_ham_date datetime, 320 smallest_ham_size int unsigned DEFAULT '0' NOT NULL, 321 largest_ham_size int unsigned DEFAULT '0' NOT NULL, 322 total_ham_size bigint unsigned DEFAULT '0' NOT NULL, 323 lowest_ham_score float DEFAULT '0.0' NOT NULL, 324 highest_ham_score float DEFAULT '0.0' NOT NULL, 325 total_ham_score float DEFAULT '0.0' NOT NULL, 326 total_ham_items int unsigned DEFAULT '0' NOT NULL, 327 328 -- mail from whitelisted senders 329 oldest_wl_date datetime, 330 newest_wl_date datetime, 331 smallest_wl_size int unsigned DEFAULT '0' NOT NULL, 332 largest_wl_size int unsigned DEFAULT '0' NOT NULL, 333 total_wl_size bigint unsigned DEFAULT '0' NOT NULL, 334 total_wl_items int unsigned DEFAULT '0' NOT NULL, 335 336 -- mail from blacklisted senders 337 oldest_bl_date datetime, 338 newest_bl_date datetime, 339 smallest_bl_size int unsigned DEFAULT '0' NOT NULL, 340 largest_bl_size int unsigned DEFAULT '0' NOT NULL, 341 total_bl_size bigint unsigned DEFAULT '0' NOT NULL, 342 total_bl_items int unsigned DEFAULT '0' NOT NULL, 343 344 -- suspected spam 345 oldest_suspected_spam_date datetime, 346 newest_suspected_spam_date datetime, 347 smallest_suspected_spam_size int unsigned DEFAULT '0' NOT NULL, 348 largest_suspected_spam_size int unsigned DEFAULT '0' NOT NULL, 349 total_suspected_spam_size bigint unsigned DEFAULT '0' NOT NULL, 350 lowest_suspected_spam_score float DEFAULT '0.0' NOT NULL, 351 highest_suspected_spam_score float DEFAULT '0.0' NOT NULL, 352 total_suspected_spam_score float DEFAULT '0.0' NOT NULL, 353 total_suspected_spam_items int unsigned DEFAULT '0' NOT NULL, 354 355 -- false positives (i.e. rescued ham) 356 oldest_fp_date datetime, 357 newest_fp_date datetime, 358 smallest_fp_size int unsigned DEFAULT '0' NOT NULL, 359 largest_fp_size int unsigned DEFAULT '0' NOT NULL, 360 total_fp_size bigint unsigned DEFAULT '0' NOT NULL, 361 lowest_fp_score float DEFAULT '0.0' NOT NULL, 362 highest_fp_score float DEFAULT '0.0' NOT NULL, 363 total_fp_score float DEFAULT '0.0' NOT NULL, 364 total_fp_items int unsigned DEFAULT '0' NOT NULL, 365 366 -- false negatives (i.e. reported spam) 367 oldest_fn_date datetime, 368 newest_fn_date datetime, 369 smallest_fn_size int unsigned DEFAULT '0' NOT NULL, 370 largest_fn_size int unsigned DEFAULT '0' NOT NULL, 371 total_fn_size bigint unsigned DEFAULT '0' NOT NULL, 372 lowest_fn_score float DEFAULT '0.0' NOT NULL, 373 highest_fn_score float DEFAULT '0.0' NOT NULL, 374 total_fn_score float DEFAULT '0.0' NOT NULL, 375 total_fn_items int unsigned DEFAULT '0' NOT NULL, 376 377 -- confirmed spam 378 oldest_spam_date datetime, 379 newest_spam_date datetime, 380 smallest_spam_size int unsigned DEFAULT '0' NOT NULL, 381 largest_spam_size int unsigned DEFAULT '0' NOT NULL, 382 total_spam_size bigint unsigned DEFAULT '0' NOT NULL, 383 lowest_spam_score float DEFAULT '0.0' NOT NULL, 384 highest_spam_score float DEFAULT '0.0' NOT NULL, 385 total_spam_score float DEFAULT '0.0' NOT NULL, 386 total_spam_items int unsigned DEFAULT '0' NOT NULL, 387 388 -- viruses 389 oldest_virus_date datetime, 390 newest_virus_date datetime, 391 smallest_virus_size int unsigned DEFAULT '0' NOT NULL, 392 largest_virus_size int unsigned DEFAULT '0' NOT NULL, 393 total_virus_size bigint unsigned DEFAULT '0' NOT NULL, 394 total_virus_items int unsigned DEFAULT '0' NOT NULL, 395 396 -- mail with invalid headers 397 oldest_bad_header_date datetime, 398 newest_bad_header_date datetime, 399 smallest_bad_header_size int unsigned DEFAULT '0' NOT NULL, 400 largest_bad_header_size int unsigned DEFAULT '0' NOT NULL, 401 total_bad_header_size bigint unsigned DEFAULT '0' NOT NULL, 402 total_bad_header_items int unsigned DEFAULT '0' NOT NULL, 403 404 -- mail containing banned file attachments 405 oldest_banned_file_date datetime, 406 newest_banned_file_date datetime, 407 smallest_banned_file_size int unsigned DEFAULT '0' NOT NULL, 408 largest_banned_file_size int unsigned DEFAULT '0' NOT NULL, 409 total_banned_file_size bigint unsigned DEFAULT '0' NOT NULL, 410 total_banned_file_items int unsigned DEFAULT '0' NOT NULL, 411 412 -- oversized items 413 oldest_oversized_date datetime, 414 newest_oversized_date datetime, 415 smallest_oversized_size int unsigned DEFAULT '0' NOT NULL, 416 largest_oversized_size int unsigned DEFAULT '0' NOT NULL, 417 total_oversized_size bigint unsigned DEFAULT '0' NOT NULL, 418 total_oversized_items int unsigned DEFAULT '0' NOT NULL, 419 420 PRIMARY KEY (user_id) 421) ENGINE=InnoDB; 422 423 424-- [maia_mail] stores mail items of five types: 425-- Suspected (S)pam, (V)iruses, Banned (F)ile Attachments, 426-- (B)ad Headers, and Suspected (H)am. 427 428CREATE TABLE maia_mail ( 429 id int unsigned NOT NULL auto_increment, 430 received_date datetime NOT NULL, 431 size int unsigned NOT NULL, 432 sender_email varbinary(255) NOT NULL, 433 envelope_to blob NOT NULL, 434 subject varchar(255) NOT NULL COLLATE utf8_unicode_ci, 435 contents longblob NOT NULL, 436 score float, -- only supplied for (S)pam 437 autolearn_status varchar(15) NOT NULL DEFAULT 'unavailable', -- 'ham', 'spam', 'no', 'disabled', 'failed', 'unavailable' 438 PRIMARY KEY (id) 439) ENGINE=InnoDB; 440CREATE INDEX maia_mail_idx_received_date ON maia_mail(received_date); 441CREATE INDEX maia_mail_idx_sender_email ON maia_mail(sender_email); 442CREATE INDEX maia_mail_idx_subject ON maia_mail(subject); 443CREATE INDEX maia_mail_idx_score ON maia_mail(score); 444 445 446-- [maia_mail_recipients] is a one-to-many mapping of 447-- mail items to recipients. These records 448-- are deleted when a recipient rescues an item, or the 449-- item is deleted. 450 451CREATE TABLE maia_mail_recipients ( 452 mail_id int unsigned NOT NULL, -- maia_mail.id 453 recipient_id int unsigned NOT NULL, -- maia_users.id 454 type char(1) NOT NULL, -- 'S', 'V', 'F', 'B', 'H', 'L', 'W' 455 token char(64) NOT NULL, 456 PRIMARY KEY (mail_id, recipient_id), 457 UNIQUE token_system_idx ( token ), 458 INDEX maia_mail_recipients_idx_type ( type ), 459 INDEX maia_mail_recipients_idx_recipient_id ( recipient_id ) 460) ENGINE=InnoDB; 461 462 463-- [maia_viruses] contains a list of the "official" names of 464-- viruses that have been detected by the virus scanners. 465-- These are the names that will be displayed in stats 466-- tables and charts. 467 468CREATE TABLE maia_viruses ( 469 id int unsigned NOT NULL auto_increment, 470 virus_name varchar(255) NOT NULL, 471 count int unsigned DEFAULT '0' NOT NULL, 472 PRIMARY KEY (id), 473 UNIQUE virus_name (virus_name) 474) ENGINE=InnoDB; 475 476 477-- [maia_virus_aliases] is a one-to-many mapping of viruses 478-- to aliases for those viruses, as detected by other 479-- virus scanners. 480 481CREATE TABLE maia_virus_aliases ( 482 virus_id int unsigned NOT NULL, -- maia_viruses.id 483 virus_alias varchar(255) NOT NULL, 484 PRIMARY KEY (virus_id, virus_alias) 485) ENGINE=InnoDB; 486 487 488-- [maia_viruses_detected] is a one-to-many mapping of 489-- mail items to viruses found. These 490-- entries are deleted when a mail item is rescued 491-- or deleted. 492 493CREATE TABLE maia_viruses_detected ( 494 mail_id int unsigned NOT NULL, -- maia_mail.id 495 virus_id int unsigned NOT NULL, -- maia_viruses.id 496 PRIMARY KEY (mail_id, virus_id) 497) ENGINE=InnoDB; 498 499 500-- [maia_sa_rules] contains a list of all the SpamAssassin 501-- rules installed on the system, along with their 502-- text descriptions and score values. 503 504CREATE TABLE maia_sa_rules ( 505 id int unsigned NOT NULL auto_increment, 506 rule_name varchar(255) NOT NULL, 507 rule_description varchar(255) DEFAULT '' NOT NULL, 508 rule_score_0 float DEFAULT '1.0' NOT NULL, 509 rule_score_1 float DEFAULT '1.0' NOT NULL, 510 rule_score_2 float DEFAULT '1.0' NOT NULL, 511 rule_score_3 float DEFAULT '1.0' NOT NULL, 512 rule_count int unsigned DEFAULT '0' NOT NULL, 513 PRIMARY KEY (id), 514 UNIQUE rule_name (rule_name) 515) ENGINE=InnoDB; 516 517 518-- [maia_sa_rules_triggered] is a one-to-many mapping of 519-- mail items to SpamAssassin rules triggered 520-- by that mail item. These entries are deleted when a 521-- mail item is rescued or deleted. 522 523CREATE TABLE maia_sa_rules_triggered ( 524 mail_id int unsigned NOT NULL, -- maia_mail.id 525 rule_id int unsigned NOT NULL, -- maia_sa_rules.id 526 rule_score float default '0.0' NOT NULL, 527 PRIMARY KEY (mail_id, rule_id) 528) ENGINE=InnoDB; 529 530 531-- [maia_banned_attachments_found] is a one-to-many mapping of 532-- mail items to file attachments that were found in that 533-- mail item. These entries are deleted when a mail item 534-- is rescued or deleted. 535CREATE TABLE maia_banned_attachments_found ( 536 mail_id int unsigned NOT NULL, -- maia_mail.id 537 file_name varchar(255) NOT NULL, 538 file_type varchar(20) DEFAULT 'Unknown' NOT NULL, 539 PRIMARY KEY (mail_id, file_name) 540) ENGINE=InnoDB; 541 542 543-- [maia_stats_history] is a table used to store snapshots of the 544-- more relevant items from the [maia_stats] table at (H)ourly, 545-- (D)aily, (M)onthly, and (Y)early intervals. Entries are 546-- automatically expired, so this table has a more or less 547-- fixed size of ((24 + 31 + 12 + 1/year) * users) rows. 548-- 549CREATE TABLE maia_stats_history ( 550 id int unsigned NOT NULL auto_increment, 551 user_id int unsigned NOT NULL, -- maia_users.id 552 type char(1) DEFAULT 'H' NOT NULL, -- 'H', 'D', 'M', 'Y' 553 taken_at datetime NOT NULL, 554 total_ham_items int unsigned DEFAULT '0' NOT NULL, 555 total_ham_size bigint unsigned DEFAULT '0' NOT NULL, 556 total_spam_items int unsigned DEFAULT '0' NOT NULL, 557 total_spam_size bigint unsigned DEFAULT '0' NOT NULL, 558 total_virus_items int unsigned DEFAULT '0' NOT NULL, 559 total_virus_size bigint unsigned DEFAULT '0' NOT NULL, 560 total_fp_items int unsigned DEFAULT '0' NOT NULL, 561 total_fp_size bigint unsigned DEFAULT '0' NOT NULL, 562 total_fn_items int unsigned DEFAULT '0' NOT NULL, 563 total_fn_size bigint unsigned DEFAULT '0' NOT NULL, 564 total_banned_file_items int unsigned DEFAULT '0' NOT NULL, 565 total_banned_file_size bigint unsigned DEFAULT '0' NOT NULL, 566 total_bad_header_items int unsigned DEFAULT '0' NOT NULL, 567 total_bad_header_size bigint unsigned DEFAULT '0' NOT NULL, 568 total_wl_items int unsigned DEFAULT '0' NOT NULL, 569 total_wl_size bigint unsigned DEFAULT '0' NOT NULL, 570 total_bl_items int unsigned DEFAULT '0' NOT NULL, 571 total_bl_size bigint unsigned DEFAULT '0' NOT NULL, 572 total_oversized_items int unsigned DEFAULT '0' NOT NULL, 573 total_oversized_size bigint unsigned DEFAULT '0' NOT NULL, 574 PRIMARY KEY (id) 575) ENGINE=InnoDB; 576 577 578-- [maia_themes] stores information about each of the installed 579-- user-selectable themes. 580-- 581CREATE TABLE maia_themes ( 582 id int(10) unsigned NOT NULL auto_increment, 583 name varchar(30) NOT NULL, 584 path varchar(30) NOT NULL, 585 PRIMARY KEY (id) 586) ENGINE=InnoDB; 587 588 589-- maia_tokens stores temporary MD5 authentication tokens for various systems. 590CREATE TABLE maia_tokens ( 591id INT UNSIGNED NOT NULL AUTO_INCREMENT , 592token_system VARCHAR( 32 ) NOT NULL , 593token CHAR( 64 ) NOT NULL , 594data BLOB NOT NULL , 595expires DATETIME NOT NULL , 596PRIMARY KEY ( id ), 597UNIQUE token ( token, token_system ), 598INDEX token_system ( token_system ), 599INDEX expires (expires) 600) ENGINE=InnoDB; 601 602-- schema_info contains the schema version status of the current database. Software upgrades will use this value 603-- to upgrade the database appropriately. Note: this table is constructed to adhere to the pattern set by 604-- RubyOnRails' Migrations, for future compatability 605CREATE TABLE schema_info ( 606version int(11) 607) ENGINE=InnoDB; 608INSERT INTO schema_info VALUES(15); 609 610-- [awl] is SpamAssassin 3.x's Auto-WhiteList database 611-- 612CREATE TABLE awl ( 613 username varchar(100) NOT NULL default '', 614 email varbinary(255) NOT NULL default '', 615 ip varchar(40) NOT NULL default '', 616 count int(11) default '0', 617 totscore float NOT NULL default '0', 618 signedby varchar(255) NOT NULL default '', 619 lastupdate timestamp NOT NULL default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, 620 PRIMARY KEY (username, email, signedby, ip) 621) ENGINE=InnoDB; 622 623 624-- [bayes_expire] is SpamAssassin 3.x's Bayes database expiry reference 625-- 626CREATE TABLE bayes_expire ( 627 id int(11) NOT NULL default '0', 628 runtime int(11) NOT NULL default '0', 629 KEY bayes_expire_idx1 (id) 630) ENGINE=InnoDB; 631 632 633-- [bayes_global_vars] is SpamAssassin 3.x's Bayes database global variables 634-- 635CREATE TABLE bayes_global_vars ( 636 variable varchar(30) NOT NULL default '', 637 value varchar(200) NOT NULL default '', 638 PRIMARY KEY (variable) 639) ENGINE=InnoDB; 640 641 642-- [bayes_seen] is SpamAssassin 3.x's Bayes database token reference 643-- 644CREATE TABLE bayes_seen ( 645 id int(11) NOT NULL default '0', 646 msgid varchar(200) binary NOT NULL default '', 647 flag char(1) NOT NULL default '', 648 PRIMARY KEY (id, msgid) 649) ENGINE=InnoDB; 650 651 652-- [bayes_token] is SpamAssassin 3.x's Bayes database token list 653-- 654CREATE TABLE bayes_token ( 655 id int(11) NOT NULL default '0', 656 token binary(5) NOT NULL default '', 657 spam_count int(11) NOT NULL default '0', 658 ham_count int(11) NOT NULL default '0', 659 atime int(11) NOT NULL default '0', 660 PRIMARY KEY (id, token), 661 INDEX bayes_token_idx1 (id, atime) 662) ENGINE=InnoDB; 663 664 665-- [bayes_vars] is SpamAssassin 3.x's Bayes database variables scoreboard 666-- 667CREATE TABLE bayes_vars ( 668 id int(11) NOT NULL AUTO_INCREMENT, 669 username varchar(200) NOT NULL default '', 670 spam_count int(11) NOT NULL default '0', 671 ham_count int(11) NOT NULL default '0', 672 token_count int(11) NOT NULL default '0', 673 last_expire int(11) NOT NULL default '0', 674 last_atime_delta int(11) NOT NULL default '0', 675 last_expire_reduce int(11) NOT NULL default '0', 676 oldest_token_age int(11) NOT NULL default '2147483647', 677 newest_token_age int(11) NOT NULL default '0', 678 PRIMARY KEY (id), 679 UNIQUE bayes_vars_idx1 (username) 680) ENGINE=InnoDB; 681 682 683-- Database initialization script 684 685-- Create a permissive system default policy and create the '@.' domain 686 687INSERT INTO policy VALUES (1, 'Default', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, 999, 999, 999); 688INSERT INTO users VALUES (1, 0, 1, '@.', 1, 1); 689INSERT INTO maia_users (user_name, primary_email_id, reminders, discard_ham) VALUES ('@.', 1, 'N', 'Y'); 690INSERT INTO maia_domains (domain, routing_domain) VALUES ('@.', '*'); 691 692-- Instantiate a default system configuration 693 694INSERT INTO maia_config (id) VALUES (0); 695 696-- Load the ISO-639 language names and abbreviations 697 698INSERT INTO maia_languages (abbreviation, language_name) VALUES ('aa', 'Afar'); 699INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ab', 'Abkhazian'); 700INSERT INTO maia_languages (abbreviation, language_name) VALUES ('af', 'Afrikaans'); 701INSERT INTO maia_languages (abbreviation, language_name) VALUES ('am', 'Amharic'); 702INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ar', 'ﺔﻴﺐﺮﻌﻠﺍ '); 703INSERT INTO maia_languages (abbreviation, language_name) VALUES ('as', 'Assamese'); 704INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ay', 'Aymara'); 705INSERT INTO maia_languages (abbreviation, language_name) VALUES ('az', 'Azцri'); 706INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ba', 'Bashkir'); 707INSERT INTO maia_languages (abbreviation, language_name) VALUES ('be', 'Беларуская'); 708INSERT INTO maia_languages (abbreviation, language_name) VALUES ('bg', 'Български'); 709INSERT INTO maia_languages (abbreviation, language_name) VALUES ('bh', 'Bihari'); 710INSERT INTO maia_languages (abbreviation, language_name) VALUES ('bi', 'Bislama'); 711INSERT INTO maia_languages (abbreviation, language_name) VALUES ('bn', 'Bengali'); 712INSERT INTO maia_languages (abbreviation, language_name) VALUES ('bo', 'Tibetan'); 713INSERT INTO maia_languages (abbreviation, language_name) VALUES ('br', 'Brezhoneg'); 714INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ca', 'Català'); 715INSERT INTO maia_languages (abbreviation, language_name) VALUES ('co', 'Corsican'); 716INSERT INTO maia_languages (abbreviation, language_name) VALUES ('cs', 'Četina'); 717INSERT INTO maia_languages (abbreviation, language_name) VALUES ('cy', 'Cymraeg'); 718INSERT INTO maia_languages (abbreviation, language_name) VALUES ('da', 'Dansk'); 719INSERT INTO maia_languages (abbreviation, language_name) VALUES ('de', 'Deutsch'); 720INSERT INTO maia_languages (abbreviation, language_name) VALUES ('dz', 'Bhutani'); 721INSERT INTO maia_languages (abbreviation, language_name) VALUES ('el', 'Ελληνικά'); 722INSERT INTO maia_languages (abbreviation, language_name) VALUES ('en', 'English'); 723INSERT INTO maia_languages (abbreviation, language_name) VALUES ('eo', 'Esperanto'); 724INSERT INTO maia_languages (abbreviation, language_name) VALUES ('es', 'Español'); 725INSERT INTO maia_languages (abbreviation, language_name) VALUES ('et', 'Eesti'); 726INSERT INTO maia_languages (abbreviation, language_name) VALUES ('eu', 'Euskaraz'); 727INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fa', 'Persian'); 728INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fi', 'Suomeksi'); 729INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fj', 'Fiji'); 730INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fo', 'Føroyskt'); 731INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fr', 'Français'); 732INSERT INTO maia_languages (abbreviation, language_name) VALUES ('fy', 'Frysk'); 733INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ga', 'Gaeilge'); 734INSERT INTO maia_languages (abbreviation, language_name) VALUES ('gd', 'Gàidhlig'); 735INSERT INTO maia_languages (abbreviation, language_name) VALUES ('gl', 'Galician'); 736INSERT INTO maia_languages (abbreviation, language_name) VALUES ('gn', 'Guarani'); 737INSERT INTO maia_languages (abbreviation, language_name) VALUES ('gu', 'Gujarati'); 738INSERT INTO maia_languages (abbreviation, language_name) VALUES ('gv', 'Ghaelg'); 739INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ha', 'Hausa'); 740INSERT INTO maia_languages (abbreviation, language_name) VALUES ('he', 'עברית'); 741INSERT INTO maia_languages (abbreviation, language_name) VALUES ('hi', 'Hindi'); 742INSERT INTO maia_languages (abbreviation, language_name) VALUES ('hr', 'Hrvatski'); 743INSERT INTO maia_languages (abbreviation, language_name) VALUES ('hu', 'Magyar'); 744INSERT INTO maia_languages (abbreviation, language_name) VALUES ('hy', 'Armenian'); 745INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ia', 'Interlingua'); 746INSERT INTO maia_languages (abbreviation, language_name) VALUES ('id', 'Bahasa Indonesia'); 747INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ie', 'Interlingue'); 748INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ik', 'Inupiak'); 749INSERT INTO maia_languages (abbreviation, language_name) VALUES ('is', 'Íslenska'); 750INSERT INTO maia_languages (abbreviation, language_name) VALUES ('it', 'Italiano'); 751INSERT INTO maia_languages (abbreviation, language_name) VALUES ('iu', 'Inuktitut'); 752INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ja', 'Nihongo'); 753INSERT INTO maia_languages (abbreviation, language_name) VALUES ('jw', 'Javanese'); 754INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ka', 'Georgian'); 755INSERT INTO maia_languages (abbreviation, language_name) VALUES ('kk', 'Kazakh'); 756INSERT INTO maia_languages (abbreviation, language_name) VALUES ('kl', 'Kalaallísut'); 757INSERT INTO maia_languages (abbreviation, language_name) VALUES ('km', 'Cambodian'); 758INSERT INTO maia_languages (abbreviation, language_name) VALUES ('kn', 'Kannada'); 759INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ko', 'Korean'); 760INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ks', 'Kashmiri'); 761INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ku', 'Kurmancî (Kurdî)'); 762INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ky', 'Kirghiz'); 763INSERT INTO maia_languages (abbreviation, language_name) VALUES ('la', 'Latina'); 764INSERT INTO maia_languages (abbreviation, language_name) VALUES ('lb', 'Lëtzebuergesch'); 765INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ln', 'Lingala'); 766INSERT INTO maia_languages (abbreviation, language_name) VALUES ('lo', 'Laothian'); 767INSERT INTO maia_languages (abbreviation, language_name) VALUES ('lt', 'Lietuvių'); 768INSERT INTO maia_languages (abbreviation, language_name) VALUES ('lv', 'Latvieu'); 769INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mg', 'Malagasy'); 770INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mi', 'Maori'); 771INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mk', 'Македонски'); 772INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ml', 'Malayalam'); 773INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mn', 'Mongolian'); 774INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mo', 'Moldavian'); 775INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mr', 'Marathi'); 776INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ms', 'Malay'); 777INSERT INTO maia_languages (abbreviation, language_name) VALUES ('mt', 'Malti'); 778INSERT INTO maia_languages (abbreviation, language_name) VALUES ('my', 'Burmese'); 779INSERT INTO maia_languages (abbreviation, language_name) VALUES ('na', 'Nauru'); 780INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ne', 'Nepali'); 781INSERT INTO maia_languages (abbreviation, language_name) VALUES ('nl', 'Nederlands'); 782INSERT INTO maia_languages (abbreviation, language_name) VALUES ('no', 'Norsk'); 783INSERT INTO maia_languages (abbreviation, language_name) VALUES ('oc', 'Occitan'); 784INSERT INTO maia_languages (abbreviation, language_name) VALUES ('om', 'Oromo'); 785INSERT INTO maia_languages (abbreviation, language_name) VALUES ('or', 'Oriya'); 786INSERT INTO maia_languages (abbreviation, language_name) VALUES ('pa', 'Punjabi'); 787INSERT INTO maia_languages (abbreviation, language_name) VALUES ('pl', 'Polski'); 788INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ps', 'Pashto'); 789INSERT INTO maia_languages (abbreviation, language_name) VALUES ('pt', 'Português'); 790INSERT INTO maia_languages (abbreviation, language_name) VALUES ('qu', 'Quechua'); 791INSERT INTO maia_languages (abbreviation, language_name) VALUES ('rm', 'Rumantsch'); 792INSERT INTO maia_languages (abbreviation, language_name) VALUES ('rn', 'Kirundi'); 793INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ro', 'Română'); 794INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ru', 'Русский'); 795INSERT INTO maia_languages (abbreviation, language_name) VALUES ('rw', 'Kinyarwanda'); 796INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sa', 'Sanskrit'); 797INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sd', 'Sindhi'); 798INSERT INTO maia_languages (abbreviation, language_name) VALUES ('se', 'Davvisámegiella'); 799INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sg', 'Sangho'); 800INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sh', 'Serbo-Croatian'); 801INSERT INTO maia_languages (abbreviation, language_name) VALUES ('si', 'Sinhalese'); 802INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sk', 'Slovenčina'); 803INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sl', 'Slovenski'); 804INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sm', 'Samoan'); 805INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sn', 'Shona'); 806INSERT INTO maia_languages (abbreviation, language_name) VALUES ('so', 'af Soomaali'); 807INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sq', 'Shqip'); 808INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sr', 'Српски'); 809INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ss', 'Siswati'); 810INSERT INTO maia_languages (abbreviation, language_name) VALUES ('st', 'Sesotho'); 811INSERT INTO maia_languages (abbreviation, language_name) VALUES ('su', 'Sundanese'); 812INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sv', 'Svenska'); 813INSERT INTO maia_languages (abbreviation, language_name) VALUES ('sw', 'Kiswahili'); 814INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ta', 'Tamil'); 815INSERT INTO maia_languages (abbreviation, language_name) VALUES ('te', 'Telugu'); 816INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tg', 'Tajik'); 817INSERT INTO maia_languages (abbreviation, language_name) VALUES ('th', 'Thai'); 818INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ti', 'Tigrinya'); 819INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tk', 'Turkmen'); 820INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tl', 'Tagalog'); 821INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tn', 'Setswana'); 822INSERT INTO maia_languages (abbreviation, language_name) VALUES ('to', 'Tonga'); 823INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tr', 'Türkçe'); 824INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ts', 'Tsonga'); 825INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tt', 'Tatar'); 826INSERT INTO maia_languages (abbreviation, language_name) VALUES ('tw', 'Twi'); 827INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ug', 'Uighur'); 828INSERT INTO maia_languages (abbreviation, language_name) VALUES ('uk', 'Украïнська'); 829INSERT INTO maia_languages (abbreviation, language_name) VALUES ('ur', 'Urdu'); 830INSERT INTO maia_languages (abbreviation, language_name) VALUES ('uz', 'Uzbek'); 831INSERT INTO maia_languages (abbreviation, language_name) VALUES ('vi', 'Tiếng Việt'); 832INSERT INTO maia_languages (abbreviation, language_name) VALUES ('vo', 'Volapuk'); 833INSERT INTO maia_languages (abbreviation, language_name) VALUES ('wo', 'Wolof'); 834INSERT INTO maia_languages (abbreviation, language_name) VALUES ('xh', 'Xhosa'); 835INSERT INTO maia_languages (abbreviation, language_name) VALUES ('yi', 'Jiddiš'); 836INSERT INTO maia_languages (abbreviation, language_name) VALUES ('yo', 'Yoruba'); 837INSERT INTO maia_languages (abbreviation, language_name) VALUES ('za', 'Zhuang'); 838INSERT INTO maia_languages (abbreviation, language_name) VALUES ('zh', 'Zhōng-wén'); 839INSERT INTO maia_languages (abbreviation, language_name) VALUES ('zu', 'Zulu'); 840 841-- Mark the default language (English) as "installed" 842 843UPDATE maia_languages SET installed = 'Y' WHERE abbreviation = 'en'; 844 845-- Insert default themes 846 847INSERT INTO maia_themes VALUES (1, 'Ocean Surf', 'ocean_surf'); 848INSERT INTO maia_themes VALUES (2, 'Desert Sand', 'desert_sand'); 849-- delaying this theme till 1.1 850-- INSERT INTO maia_themes VALUES (3, 'DGM', 'dgm'); 851 852-- Set SpamAssassin Bayes database defaults 853 854INSERT INTO bayes_global_vars VALUES ('VERSION', '3'); 855 856-- End of database initialization script 857 858