Skip to content

Commit

Permalink
ffw to 0.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
jyoungblood committed Dec 26, 2022
1 parent fd2a72f commit 3eea376
Show file tree
Hide file tree
Showing 41 changed files with 1,065 additions and 884 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
.DS_Store
error_log
.vscode
18 changes: 13 additions & 5 deletions controllers/_routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,29 @@





// ------- safe to delete after installation (and replace with your own routes) ----- //

if (file_exists('./controllers/install.php')){ include('install.php'); }


$app->get('/', function(){

$GLOBALS['app']->render_template(array(
'template' => 'index',
'title' => $GLOBALS['site_title'],
'title' => $GLOBALS['site_title'] ? $GLOBALS['site_title'] : 'Install Darkwave',
'data' => array(
'install_deleted' => file_exists('./controllers/install.php') ? false : true
)
));

});
});











1 change: 1 addition & 0 deletions controllers/admin/admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
'template' => 'admin/index',
'title' => $title,
'data' => array(
'current_home' => true,
'ip' => $GLOBALS['app']->client_ip(),
'install_deleted' => file_exists('./controllers/install.php') ? false : true
)
Expand Down
97 changes: 68 additions & 29 deletions controllers/admin/settings.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
'title' => 'Settings - ' . $GLOBALS['site_title'] .' Admin',
'data' => array(
'current_settings' => true,
'current_system' => true,
'settings' => $GLOBALS['settings']
)
));
Expand All @@ -21,52 +22,90 @@



$app->post('/admin/settings/save', function(){
$app->post('/admin/settings/save/?', function(){

$settings_file = '<?php
if ($GLOBALS['is_admin']){

// WARNING: THIS FILE IS GENERATED PROGRAMMATICALLY. ANY CHANGES YOU MAKE MAY BE OVERWRITTEN.
$form = array();
parse_str($_POST['form'],$form);

$GLOBALS[\'site_title\'] = \''.$_POST['site_title'].'\';
$GLOBALS[\'site_code\'] = \''.$_POST['site_code'].'\';
$GLOBALS[\'site_url\'] = \''.$_POST['site_url'].'\';';
$settings_file = '<?php
// WARNING: THIS FILE IS GENERATED PROGRAMMATICALLY. ANY CHANGES YOU MAKE MAY BE OVERWRITTEN.
if ($_POST['db_host']){
$settings_file .= '
$GLOBALS[\'site_title\'] = \''.$form['site_title'].'\';
$GLOBALS[\'site_code\'] = \''.$form['site_code'].'\';
$GLOBALS[\'site_url\'] = \''.$form['site_url'].'\';
$GLOBALS[\'settings\'][\'mode\'] = \''.$form['mode'].'\';';

$GLOBALS[\'settings\'][\'database\'][\'host\'] = \''.$_POST['db_host'].'\';
$GLOBALS[\'settings\'][\'database\'][\'name\'] = \''.$_POST['db_name'].'\';
$GLOBALS[\'settings\'][\'database\'][\'user\'] = \''.$_POST['db_user'].'\';
$GLOBALS[\'settings\'][\'database\'][\'password\'] = \''.$_POST['db_password'].'\';';
}

if ($_POST['api_root']){
if ($form['db_host']){
$settings_file .= '
$GLOBALS[\'settings\'][\'api_root\'] = \''.$_POST['api_root'].'\';';
}
$GLOBALS[\'settings\'][\'database\'][\'host\'] = \''.$form['db_host'].'\';
$GLOBALS[\'settings\'][\'database\'][\'name\'] = \''.$form['db_name'].'\';
$GLOBALS[\'settings\'][\'database\'][\'user\'] = \''.$form['db_user'].'\';
$GLOBALS[\'settings\'][\'database\'][\'password\'] = \''.$form['db_password'].'\';';
}

if ($_POST['mailgun_api_key']){
$settings_file .= '
if ($form['mailgun_api_key']){
$settings_file .= '
$GLOBALS[\'settings\'][\'mailgun\'][\'api_key\'] = \''.$_POST['mailgun_api_key'].'\';
$GLOBALS[\'settings\'][\'mailgun\'][\'domain\'] = \''.$_POST['mailgun_domain'].'\';';
}
$GLOBALS[\'settings\'][\'mailgun\'][\'api_key\'] = \''.$form['mailgun_api_key'].'\';
$GLOBALS[\'settings\'][\'mailgun\'][\'domain\'] = \''.$form['mailgun_domain'].'\';';
}


if ($_POST['s3_key']){
$settings_file .= '
if ($form['s3_key']){
$settings_file .= '
$GLOBALS[\'settings\'][\'s3\'][\'key\'] = \''.$_POST['s3_key'].'\';
$GLOBALS[\'settings\'][\'s3\'][\'secret\'] = \''.$_POST['s3_secret'].'\';
$GLOBALS[\'settings\'][\'s3\'][\'bucket\'] = \''.$_POST['s3_bucket'].'\';';
$GLOBALS[\'settings\'][\'s3\'][\'key\'] = \''.$form['s3_key'].'\';
$GLOBALS[\'settings\'][\'s3\'][\'secret\'] = \''.$form['s3_secret'].'\';
$GLOBALS[\'settings\'][\'s3\'][\'bucket\'] = \''.$form['s3_bucket'].'\';';

}
}


if ($form['bitly_login']){
$settings_file .= '
$GLOBALS[\'settings\'][\'bitly\'][\'login\'] = \''.$form['bitly_login'].'\';
$GLOBALS[\'settings\'][\'bitly\'][\'apikey\'] = \''.$form['bitly_apikey'].'\';
$GLOBALS[\'settings\'][\'bitly\'][\'token\'] = \''.$form['bitly_token'].'\';';

}


file_put_contents("./settings.php", $settings_file);

header("Location: /admin");
if ($form['twilio_sid']){
$settings_file .= '
$GLOBALS[\'settings\'][\'twilio\'][\'sid\'] = \''.$form['twilio_sid'].'\';
$GLOBALS[\'settings\'][\'twilio\'][\'token\'] = \''.$form['twilio_token'].'\';
$GLOBALS[\'settings\'][\'twilio\'][\'pk\'] = \''.$form['twilio_pk'].'\';
$GLOBALS[\'settings\'][\'twilio\'][\'number\'] = \''.$form['twilio_number'].'\';';

}


if ($form['imap_username']){
$settings_file .= '
$GLOBALS[\'settings\'][\'imap\'][\'username\'] = \''.$form['imap_username'].'\';
$GLOBALS[\'settings\'][\'imap\'][\'password\'] = \''.$form['imap_password'].'\';
$GLOBALS[\'settings\'][\'imap\'][\'host\'] = \''.$form['imap_host'].'\';
$GLOBALS[\'settings\'][\'imap\'][\'port\'] = \''.$form['imap_port'].'\';
$GLOBALS[\'settings\'][\'imap\'][\'tls\'] = \''.$form['imap_tls'].'\';';

}


file_put_contents("./settings.php", $settings_file);

}

$GLOBALS['app']->render_json(array(
'success' => true
));

});
141 changes: 115 additions & 26 deletions controllers/admin/users.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
'data' => array(
'ip' => $GLOBALS['app']->client_ip(),
'current_users' => true,
'current_system' => true,
'users'=> $_users['data']
)
));
Expand All @@ -29,7 +30,7 @@



$app->get('/admin/users/edit/[*:user_id]', function($user_id){
$app->get('/admin/users/edit/[*:user_id]/?', function($user_id){

$_data = db_find("users", "_id='".$user_id."'");

Expand All @@ -41,12 +42,21 @@
$title = 'New User - '.$GLOBALS['site_title'].' Admin';
}

$has_avatar = false;
if ($data['avatar_medium']){
if ($data['avatar_medium'] != '/images/users/avatar-default-m.png'){
$has_avatar = true;
}
}

$GLOBALS['app']->render_template(array(
'layout' => 'admin',
'template' => 'admin/users-edit',
'title' => $title,
'data' => array(
'current_users' => true,
'current_system' => true,
'has_avatar' => $has_avatar,
'data' => $data
)
));
Expand All @@ -63,32 +73,102 @@



$app->post('/admin/users/save', function(){

$form = array();
parse_str($_POST['form'],$form);
$app->post('/admin/users/save/?', function(){

if ($GLOBALS['is_admin']){

$form = array();
parse_str($_POST['form'],$form);

$input = array(
'email' => strtolower($form['email']),
'group_id' => $form['group_id'],
'url_slug' => $GLOBALS['app']->url_slug($form['screenname']),
'screenname' => $form['screenname'],
'first_name' => $form['first_name'],
'last_name' => $form['last_name'],
);

if ($form['password']){
$input['password'] = password_hash($form['password'], PASSWORD_BCRYPT);
}

if ($_POST['_id'] == ''){
$input['date_created'] = time();
$input['_id'] = uniqid(uniqid());
db_insert("users", $input);
$user_id = $input['_id'];
}else{
db_update("users", $input, "_id='".$_POST['_id']."'");
$user_id = $_POST['_id'];
}

if ($form['file_1']){
if ($form['file_1'] == 'DELETE'){
$user = db_find("users", "_id='".$user_id."'");
if ($user['data'][0]['avatar_small'] != '/images/users/avatar-default-s.png'){
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_small']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_medium']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_large']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_original']);
}
$photo_input = array(
'avatar_small' => '/images/users/avatar-default-s.png',
'avatar_medium' => '/images/users/avatar-default-m.png',
'avatar_large' => '/images/users/avatar-default-l.png',
'avatar_original' => '/images/users/avatar-default-o.png',
);
if ($user_id == $GLOBALS['user_id']){
$GLOBALS['app']->cookie_set('user_avatar', '/images/users/avatar-default-s.png');
}
}else{
$user = db_find("users", "_id='".$user_id."'");
if ($user['data'][0]['avatar_small'] && $user['data'][0]['avatar_small'] != '/images/users/avatar-default-s.png'){
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_small']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_medium']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_large']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_original']);
}
$filename = $form['file_1'];
$ext = strtolower(pathinfo($_SERVER['DOCUMENT_ROOT'] . '/uploads/' . $filename, PATHINFO_EXTENSION));
$filename_clean = explode('||-||', str_replace('.'.$ext, '', $filename));
$source = $_SERVER['DOCUMENT_ROOT'] . '/uploads/' . $filename;
$filename_small = $user_id . '-' . $filename_clean[1] . '-s.' . $ext;
$filename_medium = $user_id . '-' . $filename_clean[1] . '-m.' . $ext;
$filename_large = $user_id . '-' . $filename_clean[1] . '-l.' . $ext;
$filename_original = $user_id . '-' . $filename_clean[1] . '-o.' . $ext;
list($photo_width, $photo_height) = getimagesize($source);
$sq = new phMagick($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_small);
$sq->resizeExactly(300,300);
if ($photo_width > 800){
$md = new phMagick($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_medium);
$md->resize(800, 0);
}else{
copy($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_medium);
}
if ($photo_width > 1024){
$ld = new phMagick($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_large);
$ld->resize(1024, 0);
}else{
copy($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_large);
}
copy($source, $_SERVER['DOCUMENT_ROOT'].'/images/users/'.$filename_original);
unlink($source);
$photo_input = array(
'avatar_small' => '/images/users/' . $filename_small,
'avatar_medium' => '/images/users/' . $filename_medium,
'avatar_large' => '/images/users/' . $filename_large,
'avatar_original' => '/images/users/' . $filename_original,
);
if ($user_id == $GLOBALS['user_id']){
$GLOBALS['app']->cookie_set('user_avatar', '/images/users/' . $filename_small);
}
}
db_update("users", $photo_input, "_id='".$user_id."'");
}

$input = array(
'email' => strtolower($form['email']),
'group_id' => $form['group_id'],
'url_slug' => $GLOBALS['app']->url_slug($form['screenname']),
'screenname' => $form['screenname'],
'first_name' => $form['first_name'],
'last_name' => $form['last_name'],
);

if ($form['password']){
$input['password'] = password_hash($form['password'], PASSWORD_BCRYPT);
}

if ($form['_id'] == ''){
$input['date_created'] = time();
$input['_id'] = uniqid(uniqid());
db_insert("users", $input);
}else{
db_update("users", $input, "_id='".$form['_id']."'");
}

$GLOBALS['app']->render_json(array(
'success' => true
));
Expand All @@ -101,9 +181,18 @@



$app->post('/admin/users/delete', function(){
$app->post('/admin/users/delete/?', function(){

db_delete("users", "_id='".$_POST['_id']."'");
if ($GLOBALS['is_admin']){
$user = db_find("users", "_id='".$_POST['_id']."'");
if ($user['data'][0]['avatar_small'] && $user['data'][0]['avatar_small'] != '/images/users/avatar-default-s.png'){
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_small']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_medium']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_large']);
unlink($_SERVER['DOCUMENT_ROOT'] . $user['data'][0]['avatar_original']);
}
db_delete("users", "_id='".$_POST['_id']."'");
}

$GLOBALS['app']->render_json(array(
'success' => true
Expand Down
Loading

0 comments on commit 3eea376

Please sign in to comment.