115 lines
4.1 KiB
PHP
115 lines
4.1 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Schema;
|
|
use Illuminate\Database\Schema\Blueprint;
|
|
use Illuminate\Database\Migrations\Migration;
|
|
|
|
class MailAndAppSettings extends Migration
|
|
{
|
|
/**
|
|
* Run the migrations.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function up()
|
|
{
|
|
DB::statement("ALTER TABLE settings MODIFY COLUMN typ ENUM('checkbox', 'textinput', 'password')");
|
|
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_active";
|
|
$setting->description = "If SMTP is not active the system will not send any mails";
|
|
$setting->typ = "checkbox";
|
|
$setting->value = 0;
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_host";
|
|
$setting->description = "SMTP Host";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_port";
|
|
$setting->description = "SMTP Port";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "587";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_smtpAuth";
|
|
$setting->description = "Use SMTP-Auth";
|
|
$setting->typ = "checkbox";
|
|
$setting->value = 1;
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_username";
|
|
$setting->description = "SMTP Username";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_password";
|
|
$setting->description = "SMTP Password";
|
|
$setting->typ = "password";
|
|
$setting->value = "";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_secure";
|
|
$setting->description = "SMTP Secure Message";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "tls";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_from_mail";
|
|
$setting->description = "SMTP From Mail";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "account@example.com";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_from_name";
|
|
$setting->description = "SMTP From Name";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "KeksAccount";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "smtp_bcc";
|
|
$setting->description = "BCC All Messages to this address (No BCC fi empty)";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "url";
|
|
$setting->description = "URL of this Service";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "https://account.keks.cloud";
|
|
$setting->saveOrFail();
|
|
$setting = new \App\Models\Setting();
|
|
$setting->name = "name";
|
|
$setting->description = "Name of this Service";
|
|
$setting->typ = "textinput";
|
|
$setting->value = "Keks Account";
|
|
$setting->saveOrFail();
|
|
|
|
Schema::table('apps', function (Blueprint $table) {
|
|
$table->boolean('show_on_webpage')->default(false)->comment('If this flag is true, the App will shown on the Webpage');
|
|
$table->string("direct_url")->nullable()->default(null)->comment("Direct Login URL");
|
|
$table->binary("icon")->nullable()->default(null)->comment("200x200 Image as Icon");
|
|
});
|
|
|
|
|
|
}
|
|
|
|
/**
|
|
* Reverse the migrations.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function down()
|
|
{
|
|
|
|
$settings = \App\Models\Setting::query()->where("name", "LIKE", "smtp_%")->get();
|
|
foreach($settings as $s) {
|
|
$s->delete();
|
|
}
|
|
\App\Models\Setting::query()->where("name", "=", "url")->delete();
|
|
DB::statement("ALTER TABLE settings MODIFY COLUMN typ ENUM('checkbox')");
|
|
}
|
|
}
|