Editor/Clips: Database class integration.

This commit is contained in:
Nate 2019-08-05 20:41:09 -06:00
parent df67bfcb90
commit 7b788d7399
5 changed files with 89 additions and 79 deletions

View File

@ -40,12 +40,12 @@ else {
$text = $language->get(); $text = $language->get();
if (count($_POST)>0) { if (count($_POST)>0) {
$clip_name = check_str($_POST["clip_name"]); $clip_name = $_POST["clip_name"];
$clip_folder = check_str($_POST["clip_folder"]); $clip_folder = $_POST["clip_folder"];
$clip_text_start = check_str($_POST["clip_text_start"]); $clip_text_start = $_POST["clip_text_start"];
$clip_text_end = check_str($_POST["clip_text_end"]); $clip_text_end = $_POST["clip_text_end"];
$clip_desc = check_str($_POST["clip_desc"]); $clip_desc = $_POST["clip_desc"];
$clip_order = check_str($_POST["clip_order"]); $clip_order = $_POST["clip_order"];
if (strlen($clip_order) == 0) { $clip_order = 0; } if (strlen($clip_order) == 0) { $clip_order = 0; }
//no slashes //no slashes
@ -53,34 +53,30 @@ if (count($_POST)>0) {
$clip_name = str_replace('\\', '|', $clip_name); $clip_name = str_replace('\\', '|', $clip_name);
//sql insert //sql insert
$sql = "insert into v_clips "; $array['clips'][0]['clip_uuid'] = uuid();
$sql .= "("; $array['clips'][0]['clip_name'] = $clip_name;
$sql .= "clip_uuid, "; $array['clips'][0]['clip_folder'] = $clip_folder;
$sql .= "clip_name, "; $array['clips'][0]['clip_text_start'] = $clip_text_start;
$sql .= "clip_folder, "; $array['clips'][0]['clip_text_end'] = $clip_text_end;
$sql .= "clip_text_start, "; $array['clips'][0]['clip_desc'] = $clip_desc;
$sql .= "clip_text_end, "; $array['clips'][0]['clip_order'] = $clip_order;
$sql .= "clip_desc, ";
$sql .= "clip_order "; $p = new permissions;
$sql .= ")"; $p->add('clip_add', 'temp');
$sql .= "values ";
$sql .= "("; $database = new database;
$sql .= "'".uuid()."', "; $database->app_name = 'edit';
$sql .= "'$clip_name', "; $database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$sql .= "'$clip_folder', "; $database->save($array);
$sql .= "'$clip_text_start', "; unset($array);
$sql .= "'$clip_text_end', ";
$sql .= "'$clip_desc', "; $p->add('clip_add', 'temp');
$sql .= "'$clip_order' ";
$sql .= ")";
$db->exec(check_sql($sql));
unset($sql,$db);
require_once "header.php"; require_once "header.php";
echo "<meta http-equiv=\"refresh\" content=\"1;url=clipoptions.php\">\n"; echo "<meta http-equiv=\"refresh\" content=\"1;url=clipoptions.php\">\n";
echo $text['message-add']; echo $text['message-add'];
require_once "footer.php"; require_once "footer.php";
return; exit;
} }
//show the content //show the content
@ -103,19 +99,19 @@ if (count($_POST)>0) {
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>".$text['label-before-selection']."<br>"; echo " <td colspan='2'>".$text['label-before-selection']."<br>";
echo " <textarea name='clip_text_start' class='txt'></textarea>"; echo " <textarea name='clip_text_start' class='txt' style='resize: vertical;'></textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>".$text['label-after-selection']."<br>"; echo " <td colspan='2'>".$text['label-after-selection']."<br>";
echo " <textarea name='clip_text_end' class='txt'></textarea>"; echo " <textarea name='clip_text_end' class='txt' style='resize: vertical;'></textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>".$text['label-notes']."<br>"; echo " <td colspan='2'>".$text['label-notes']."<br>";
echo " <textarea name='clip_desc' class='txt'></textarea>"; echo " <textarea name='clip_desc' class='txt' style='resize: vertical;'></textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";

View File

@ -40,15 +40,22 @@ else {
$text = $language->get(); $text = $language->get();
//get the uuid from http values //get the uuid from http values
$clip_uuid = check_str($_GET["id"]); $clip_uuid = $_GET["id"];
//delete the clip //delete the clip
if (strlen($_GET["id"])>0) { if (is_uuid($clip_uuid)) {
$sql = "delete from v_clips "; $array['clips'][0]['clip_uuid'] = $clip_uuid;
$sql .= "where clip_uuid = '".$clip_uuid."' ";
$prep_statement = $db->prepare(check_sql($sql)); $p = new permissions;
$prep_statement->execute(); $p->add('clip_delete', 'temp');
unset($sql,$db);
$database = new database;
$database->app_name = 'edit';
$database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$database->delete($array);
unset($array);
$p->delete('clip_delete', 'temp');
} }
//redirect the browser //redirect the browser

View File

@ -44,7 +44,7 @@ require_once "header.php";
function isfile($filename) { function isfile($filename) {
if (@filesize($filename) > 0) { return true; } else { return false; } return @filesize($filename) > 0 ? true : false;
} }
function space($count) { function space($count) {
@ -157,12 +157,11 @@ echo "<div style='text-align: left; padding-top: 3px;'>\n";
echo "<div style='padding-bottom: 3px;'><a href='javascript:void(0);' onclick=\"window.open('clipoptions.php?id=".$row[id]."','clipwin','left=20,top=20,width=310,height=350,toolbar=0,resizable=0');\" style='text-decoration:none; cursor: pointer;' title=\"".$text['label-clip-library']."\"><img src='".PROJECT_PATH."resources/images/icon_gear.png' border='0' align='absmiddle' style='margin: 0px 2px 4px -1px;'>".$text['label-clip-library']."</a></div>\n"; echo "<div style='padding-bottom: 3px;'><a href='javascript:void(0);' onclick=\"window.open('clipoptions.php?id=".$row[id]."','clipwin','left=20,top=20,width=310,height=350,toolbar=0,resizable=0');\" style='text-decoration:none; cursor: pointer;' title=\"".$text['label-clip-library']."\"><img src='".PROJECT_PATH."resources/images/icon_gear.png' border='0' align='absmiddle' style='margin: 0px 2px 4px -1px;'>".$text['label-clip-library']."</a></div>\n";
$sql = "select * from v_clips order by clip_folder asc, clip_name asc"; $sql = "select * from v_clips order by clip_folder asc, clip_name asc";
$prep_statement = $db->prepare(check_sql($sql)); $database = new database;
$prep_statement->execute(); $result = $database->select($sql, null, 'all');
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); unset($sql);
$result_count = count($result);
if ($result_count > 0) { if (is_array($result) && @sizeof($result) != 0) {
$master_array = array(); $master_array = array();
foreach ($result as $row) { foreach ($result as $row) {
$clip_folder = rtrim($row['clip_folder'], '/'); $clip_folder = rtrim($row['clip_folder'], '/');
@ -185,6 +184,7 @@ if ($result_count > 0) {
$master_array = array_merge_recursive($master_array, $folders); $master_array = array_merge_recursive($master_array, $folders);
} }
unset($result, $row);
function parse_array($arr) { function parse_array($arr) {
if (is_array($arr)) { if (is_array($arr)) {
@ -216,7 +216,5 @@ if ($result_count > 0) {
echo "</div>\n"; echo "</div>\n";
//echo "<pre>".print_r($master_array, true)."</pre>";
require_once "footer.php"; require_once "footer.php";
?> ?>

View File

@ -119,12 +119,11 @@ echo "<body style='margin: 0; padding: 5px;' onfocus='blur();'>\n";
echo "<div style='text-align: left;'>\n"; echo "<div style='text-align: left;'>\n";
$sql = "select * from v_clips order by clip_folder asc, clip_name asc"; $sql = "select * from v_clips order by clip_folder asc, clip_name asc";
$prep_statement = $db->prepare(check_sql($sql)); $database = new database;
$prep_statement->execute(); $result = $database->select($sql, null, 'all');
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); unset($sql);
$result_count = count($result);
if ($result_count > 0) { if (is_array($result) && @sizeof($result) != 0) {
$master_array = array(); $master_array = array();
foreach ($result as $row) { foreach ($result as $row) {
$clip_folder = rtrim($row['clip_folder'], '/'); $clip_folder = rtrim($row['clip_folder'], '/');
@ -175,6 +174,7 @@ if ($result_count > 0) {
} }
parse_array($master_array); parse_array($master_array);
} }
unset($result, $row);
echo "</div>\n"; echo "</div>\n";

View File

@ -39,55 +39,64 @@ else {
$text = $language->get(); $text = $language->get();
if (count($_POST)>0) { if (count($_POST)>0) {
$clip_uuid = check_str($_POST["id"]); $clip_uuid = $_POST["id"];
$clip_name = check_str($_POST["clip_name"]); $clip_name = $_POST["clip_name"];
$clip_folder = check_str($_POST["clip_folder"]); $clip_folder = $_POST["clip_folder"];
$clip_text_start = check_str($_POST["clip_text_start"], false); $clip_text_start = $_POST["clip_text_start"];
$clip_text_end = check_str($_POST["clip_text_end"], false); $clip_text_end = $_POST["clip_text_end"];
$clip_desc = check_str($_POST["clip_desc"]); $clip_desc = $_POST["clip_desc"];
$clip_order = check_str($_POST["clip_order"]); $clip_order = $_POST["clip_order"];
//no slashes //no slashes
$clip_name = str_replace('/', '|', $clip_name); $clip_name = str_replace('/', '|', $clip_name);
$clip_name = str_replace('\\', '|', $clip_name); $clip_name = str_replace('\\', '|', $clip_name);
//sql update //sql update
$sql = "update v_clips set "; $array['clips'][0]['clip_uuid'] = $clip_uuid;
$sql .= "clip_name = '$clip_name', "; $array['clips'][0]['clip_name'] = $clip_name;
$sql .= "clip_folder = '$clip_folder', "; $array['clips'][0]['clip_folder'] = $clip_folder;
$sql .= "clip_text_start = '$clip_text_start', "; $array['clips'][0]['clip_text_start'] = $clip_text_start;
$sql .= "clip_text_end = '$clip_text_end', "; $array['clips'][0]['clip_text_end'] = $clip_text_end;
$sql .= "clip_desc = '$clip_desc', "; $array['clips'][0]['clip_desc'] = $clip_desc;
$sql .= "clip_order = '$clip_order' "; $array['clips'][0]['clip_order'] = $clip_order;
$sql .= "where clip_uuid = '$clip_uuid' ";
$count = $db->exec(check_sql($sql)); $p = new permissions;
$p->add('clip_edit', 'temp');
$database = new database;
$database->app_name = 'edit';
$database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$database->save($array);
unset($array);
$p->add('clip_edit', 'temp');
//redirect the browser //redirect the browser
require_once "header.php"; require_once "header.php";
echo "<meta http-equiv=\"refresh\" content=\"1;url=clipoptions.php\">\n"; echo "<meta http-equiv=\"refresh\" content=\"1;url=clipoptions.php\">\n";
echo $text['message-update']; echo $text['message-update'];
require_once "footer.php"; require_once "footer.php";
return; exit;
} }
else { else {
//get the uuid from http values //get the uuid from http values
$clip_uuid = check_str($_GET["id"]); $clip_uuid = $_GET["id"];
//get the clip //get the clip
$sql = "select * from v_clips "; $sql = "select * from v_clips ";
$sql .= "where clip_uuid = '$clip_uuid' "; $sql .= "where clip_uuid = :clip_uuid ";
$prep_statement = $db->prepare(check_sql($sql)); $parameters['clip_uuid'] = $clip_uuid;
$prep_statement->execute(); $database = new database;
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); $row = $database->select($sql, $parameters, 'row');
foreach ($result as &$row) { if (is_array($row) && @sizeof($row) != 0) {
$clip_name = $row["clip_name"]; $clip_name = $row["clip_name"];
$clip_folder = $row["clip_folder"]; $clip_folder = $row["clip_folder"];
$clip_text_start = $row["clip_text_start"]; $clip_text_start = $row["clip_text_start"];
$clip_text_end = $row["clip_text_end"]; $clip_text_end = $row["clip_text_end"];
$clip_desc = $row["clip_desc"]; $clip_desc = $row["clip_desc"];
$clip_order = $row["clip_order"]; $clip_order = $row["clip_order"];
break; //limit to 1 row
} }
unset($sql, $parameters, $row);
} }
//show the content //show the content
@ -110,19 +119,19 @@ else {
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>Before Selection<br>"; echo " <td colspan='2'>Before Selection<br>";
echo " <textarea class='txt' name='clip_text_start'>$clip_text_start</textarea>"; echo " <textarea class='txt' style='resize: vertical;' name='clip_text_start'>$clip_text_start</textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>After Selection<br>"; echo " <td colspan='2'>After Selection<br>";
echo " <textarea class='txt' name='clip_text_end'>$clip_text_end</textarea>"; echo " <textarea class='txt' style='resize: vertical;' name='clip_text_end'>$clip_text_end</textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";
echo " <tr>"; echo " <tr>";
echo " <td colspan='2'>Notes<br>"; echo " <td colspan='2'>Notes<br>";
echo " <textarea class='txt' name='clip_desc'>$clip_desc</textarea>"; echo " <textarea class='txt' style='resize: vertical;' name='clip_desc'>$clip_desc</textarea>";
echo " </td>"; echo " </td>";
echo " </tr>"; echo " </tr>";