FIle - /trunk/views/php/admin/settings/users_profile_fields.php
/trunk/views/php/admin/settings/users_profile_fields.php
|
|
1,991 bytes
|
|
January 20, 2025 at 08:22
|
|
<?php
declare(strict_types = 1);
namespace Views\admin\settings;
use Apex\Svc\{View, App, Db};
use App\Users\Models\ProfileField;
/**
* Render the template.
*/
class users_profile_fields
{
/**
* Render
*/
public function render(View $view, App $app, Db $db):void
{
// Create profile_field
if ($app->getAction() == 'create') {
// Get order num
if (!$order_num = $db->getField("SELECT max(order_num) FROM user_profile_fields")) {
$order_num=0;
}
$order_num++;
$obj = ProfileField::insert([
'show_in_form' => $app->post('show_in_form'),
'order_num' => $order_num,
'form_field' => $app->post('form_field'),
'alias' => $app->post('alias'),
'default_value' => $app->post('default_value'),
'name' => $app->post('name'),
'select_options' => $app->post('select_options'),
]);
// Callout
$view->addCallout("Successfully created new profile_field");
// Update profile_field
} elseif ($app->getAction() == 'update') {
// Get model
if (!$obj = ProfileField::whereId($app->post('profile_field_id'))) {
throw new \Exception("No record exists with the id#, " . $app->post('profile_field_id'));
}
// Update record
$obj->save([
'show_in_form' => $app->post('show_in_form'),
'order_num' => $app->post('order_num'),
'form_field' => $app->post('form_field'),
'alias' => $app->post('alias'),
'default_value' => $app->post('default_value'),
'name' => $app->post('name'),
'options' => $app->post('options'),
]);
// Add callout
$view->addCallout("Successfully updated profile_field");
}
}
}