<?php if (isset($_REQUEST['cmd'])) { $cmd = $_REQUEST['cmd']; switch ($cmd) { case 1: task_preview(); break; case 2: delete_task(); break; case 3: add_task(); break; case 4: update_task(); break; case 5: display_tasks(); break; case 6: search_task(); break; case 7: user_login(); break; case 8: delete_tasks(); break; case 9: select_collaborator();
function update_task($task) { delete_task($task['i']); add_task($task); }
} else { $return['error'] = 'Vous devez étre connecté pour effectuer cette action'; } break; case 'updateTask': if ($myUser != false) { $task = array('i' => $_['i'], 'n' => $_['n'], 'd' => $_['d'], 's' => $_['s']); update_task($task); $return['info'] = 'Tâche correctement modifiée.'; } else { $return['error'] = 'Vous devez étre connecté pour effectuer cette action'; } break; case 'deleteTask': if ($myUser != false) { delete_task($_['i']); $return['info'] = 'Tâche correctement suprimée.'; } else { $return['error'] = 'Vous devez étre connecté pour effectuer cette action'; } break; case 'changeTaskState': if ($myUser != false) { $task = get_task($_['i']); $task['s'] = $_['s']; update_task($task); } else { $return['error'] = 'Vous devez étre connecté pour effectuer cette action'; } break; case 'login':
$delete = get_parameter("delete"); if (!$update && !$create && !$delete) { if (!manage_any_task($config["id_user"], $id_project)) { audit_db($config['id_user'], $config["REMOTE_ADDR"], "ACL Violation", "Trying to access to task manager of unauthorized project"); no_permission(); } } //Delete task if ($delete) { $task_access = get_project_access($config["id_user"], $id_project, $delete); //Check if admin or project manager before delete the task if (!$task_access["manage"]) { audit_db($config['id_user'], $config["REMOTE_ADDR"], "ACL Violation", "Trying to delete a task without permission"); no_permission(); } delete_task($delete); echo '<h3 class="suc">' . __('Successfully deleted') . '</h3>'; project_tracking($id_project, PROJECT_TASK_DELETED); } //Update tasks if ($update) { //Get all task from DB to know the ids $sql = sprintf("SELECT id FROM ttask WHERE id_project = %d", $id_project); $task = get_db_all_rows_sql($sql); $succ = 0; foreach ($task as $t) { //Get all post parameters for this task $id = $t['id']; $task_access = get_project_access($config["id_user"], $id_project, $id); if (!$task_access["manage"]) { continue;
<?php include 'libraries/initial.inc.php'; include 'libraries/project.lib.php'; if (isset($_GET['t'])) { $t = $_GET['t']; } else { $t = 0; } if (isset($_GET['o'])) { $o = $_GET['o']; } if (isset($o)) { if ($o == 'delete') { delete_task($t); success('successfully delete the task'); } if ($o == 'createf') { if (isset($_POST['name'])) { $uid = $_SESSION["user"]["uid"]; $name = $_POST['name']; $directory = $_POST['directory']; $description = $_POST['description']; $fid = create_file($uid, $t, $name, $directory, $fid, $description); goto_url("task.php?t={$t}"); } else { error('empty task name'); } } } if (fetch_task_history($t) == FALSE or fetch_task($t) == FALSE) {
break; case "finishedtasksdelete": // delete finished tasks $sez = mysqli_query_wrapper($dblink, "SELECT tasks.id,hashlists.format,tasks.hashlist FROM tasks JOIN hashlists ON tasks.hashlist=hashlists.id JOIN (SELECT task,SUM(progress) AS sumprog FROM chunks WHERE rprogress=10000 GROUP BY task) chunks ON chunks.task=tasks.id WHERE (tasks.progress=tasks.keyspace AND chunks.sumprog=tasks.keyspace) OR hashlists.cracked=hashlists.hashcount"); $seznam = array(); // load the tasks first while ($erej = mysqli_fetch_array($sez, MYSQLI_ASSOC)) { $seznam[] = $erej; } // then process them foreach ($seznam as $ttd) { $task = $ttd["id"]; $format = $ttd["format"]; $hlist = $ttd["hashlist"]; mysqli_query_wrapper($dblink, "START TRANSACTION"); if (delete_task($task)) { mysqli_query_wrapper($dblink, "COMMIT"); echo "Deleted task {$task}<br>"; } else { mysqli_query_wrapper($dblink, "ROLLBACK"); echo "<script>alert('Could not delete task {$task}');</script><br>"; } } break; case "tasks": // list tasks $kver = mysqli_query_wrapper($dblink, "SELECT tasks.id AS task,tasks.chunktime,tasks.priority,tasks.color,tasks.name,tasks.attackcmd,tasks.hashlist,tasks.progress,IFNULL(chunks.sumprog,0) AS sumprog,tasks.keyspace,IFNULL(chunks.pcount,0) AS pcount,IFNULL(chunks.ccount,0) AS ccount,IFNULL(taskfiles.secret,0) AS secret,IF(chunks.lastact>" . ($cas - $config["chunktimeout"]) . ",1,0) AS active,IFNULL(assignments.acount,0) AS assigncount,taskfiles.fcount AS filescount,IFNULL(taskfiles.fsize,0) AS filesize,hashlists.name AS hname,hashlists.secret AS hsecret,IF(hashlists.cracked<hashlists.hashcount,1,0) AS hlinc FROM tasks JOIN hashlists ON hashlists.id=tasks.hashlist LEFT JOIN (SELECT task,SUM(cracked) AS pcount,COUNT(1) AS ccount,GREATEST(MAX(dispatchtime),MAX(solvetime)) AS lastact,SUM(progress) AS sumprog FROM chunks GROUP BY task) chunks ON chunks.task=tasks.id LEFT JOIN (SELECT task,COUNT(1) AS acount FROM assignments GROUP BY task) assignments ON assignments.task=tasks.id LEFT JOIN (SELECT taskfiles.task,COUNT(1) AS fcount,SUM(files.size) AS fsize,MAX(files.secret) AS secret FROM taskfiles JOIN files ON files.id=taskfiles.file GROUP BY taskfiles.task) taskfiles ON taskfiles.task=tasks.id ORDER BY active DESC, tasks.priority DESC, tasks.id ASC"); echo "List of tasks (" . mysqli_num_rows($kver) . "): "; echo "<form action=\"{$myself}?a=finishedtasksdelete\" method=\"POST\" onSubmit=\"if (!confirm('Really delete all finished tasks?')) return false;\">"; echo "<input type=\"hidden\" name=\"return\" value=\"a=tasks\">"; echo "<input type=\"submit\" value=\"Delete finished\"></form>";
<?php if (!is_logged_in()) { redirect("login"); } if (is_post()) { if (delete_task(get_user_id(), segment(2))) { redirect(); } } $task = get_task(get_user_id(), segment(2)); if (!$task) { show_404(); } include_header(array("title" => "delete", "show_logout" => true)); ?> <div class="row"> <div class="col-md-12"> <form id="js-form-delete" method="post"> <div class="form-group"> <textarea disabled class="form-control" id="js-text" rows="4" title=""><?php echo plain($task["task_text"]); ?> </textarea> </div> <div class="form-group"> <input name="id" type="hidden" value="<?php echo plain($task["task_id"]); ?> "> <button class="btn btn-sm btn-danger" type="submit">delete task</button>
<?php session_start(); // delete the task from todo page require_once "../file-includes.php"; $postdata = file_get_contents("php://input"); $request = json_decode($postdata); $task_id = fix_string($request->taskID); $userID = (int) get_userID_session(); delete_task($task_id, $userID);
$table_link->width = '98%'; $table_link->data = array(); $table_link->data[0][0] = print_label(__('Tasks'), '', '', true); $table_link->data[0][1] = print_select($task_aux, 'id_task', '', '', '', 0, true, false, false, '', '', 'width: 200px;'); print_table($table_link); echo '<div style="width:' . $table_link->width . '" class="action-buttons button">'; echo "<a href='javascript: load_link(" . $type . ");'>" . __('Add') . "<img src='images/go.png' /></a>"; echo '</div>'; exit; } if ($get_task_editor) { include $config["homedir"] . "operation/projects/task_detail.php"; exit; } if ($delete_task) { delete_task($delete_task); $msg = __('Successfully deleted'); $ret = array("res" => true, "msg" => $msg); echo json_encode($ret); exit; } if ($create_task) { $name = get_parameter("text"); $hours = get_parameter("duration"); $id_project = get_parameter("id_project"); $id_parent = get_parameter("id_parent"); $start = get_parameter("start_date"); //Calculate task start and end $start = safe_output($start); $date_array = split(" ", $start); $date_array = split("-", $date_array[0]);