Commit a8f0a1db authored by Ayush's avatar Ayush

Minor fixes

parent 13bf44f2
......@@ -16,7 +16,7 @@ $postData = json_decode($postData, true);
$uname = $postData['username'];
$filename = $postData['filename'];
$f_path = $postData['file_path'];
$f_path = $postData['path'];
$language = $postData['language'];
$ret_stat = 0;
......
......@@ -17,7 +17,7 @@ $postData = json_decode($postData, true);
$uname = $postData['file']['username'];
$filename = $postData['file']['filename'];
$f_path = $postData['file']['file_path'];
$f_path = $postData['file']['path'];
$language = $postData['file']['language'];
$input_data = $postData['input_data'];
......@@ -37,7 +37,7 @@ if (strcmp($language, ".cpp") == 0) {
} else if (strcmp($language, ".java") == 0) {
system("java -cp ../user_execs/" . $uname . "/" . $f_path . "/ " . $filename . " < " . $in_fname . " > " . $out_fname, $ret_stat);
} else if (strcmp($language, ".py") == 0) {
system("python3 ../users/" . $uname . "/" . $filename . ".py < " . $in_fname . " > " . $out_fname, $ret_stat);
system("python3 ../users/" . $uname . "/" . $f_path . "/" . $filename . ".py < " . $in_fname . " > " . $out_fname, $ret_stat);
}
if ($ret_stat != 0) {
......
......@@ -35,7 +35,7 @@ if (isset($postData) && !empty($postData)) {
mysqli_query($mysqli,$sql);
$msg = "file successfully deleted";
echo json_encode($msg);
unlink($exec_path);
if (file_exists($exec_path)) unlink($exec_path);
}
else{
http_response_code(404);
......
......@@ -2,26 +2,27 @@
header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Credentials: true');
header("Access-Control-Allow-Methods: PUT, GET, POST, DELETE");
header("Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
header("Content-Type: application/json; charset=UTF-8");
$postData = file_get_contents("php://input");
if(isset($postData) && !empty($postData)) {
if (isset($postData) && !empty($postData)) {
$request = json_decode($postData, true);
$username = $request['username'];
$dirname = $request['dirname'];
$path = "../users/" . $username . "/" . $request['path'] . "/" . $dirname;
if(file_exists($path)) {
$msg = "directory already exists";
if (file_exists($path)) {
$msg = "0";
clearstatcache();
echo json_encode($msg);
}
else {
} else {
mkdir($path, 0777, true);
$path = "../user_execs/" . $username . "/" . $request['path'] . "/" . $dirname;
mkdir($path, 0777, true);
echo json_encode("Success");
echo json_encode("1");
clearstatcache();
}
......
<?php
/** \file
* This script registers a user using a username, password, name, and email (provided through POST). This script communicates with the MySQL server to save user data.
/*!
This script registers a user using a username, password, name, and email. This script communicates with the MySQL server to save
user data.
*/
<<<<<<< HEAD
header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Credentials: true');
header("Access-Control-Allow-Methods: PUT, GET, POST, DELETE");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
header("Content-Type: application/json; charset=UTF-8");
=======
>>>>>>> 8601987f1aa6573181cb9427847fcf57dc1afcf6
include_once("database.php");
/**
* \brief POST data in json format.
*/
/** \cond */
$postData = file_get_contents("php://input");
/**
* \endcond
*/
if (isset($postData) && !empty($postData)) {
$request = json_decode($postData); /** \brief POST data decoded. */
$request = json_decode($postData);
$name = trim($request->name);
$pwd = password_hash(mysqli_real_escape_string($mysqli, trim($request->pwd)), PASSWORD_DEFAULT);
$email = mysqli_real_escape_string($mysqli, trim($request->email));
......
......@@ -6,9 +6,9 @@
</div>
<div *ngIf="isNew" class="title">
<input (input)="isErrorCreating = false" [(ngModel)]="newName" [disabled]="creating" id="newFilenameInput"
[placeholder]="'Name of new ' + (isFile ? 'file' : 'directory')" type="text">
<label for="newFilenameInput" *ngIf="isFile" (click)="lang = (lang + 1) % 3">{{extensions[lang]}}</label>
<input (input)="isErrorCreating = false" [(ngModel)]="newName" [disabled]="creating" [placeholder]="'Name of new ' + (isFile ? 'file' : 'directory')"
id="newFilenameInput" type="text">
<label (click)="lang = (lang + 1) % 3" *ngIf="isFile" for="newFilenameInput">{{extensions[lang]}}</label>
</div>
<div *ngIf="isNew || isFile"></div>
......@@ -16,10 +16,11 @@
<button (click)="onDelete()" [class.disabled]="deleting || isErrorDeleting"
[disabled]="deleting || isErrorDeleting">{{isErrorDeleting ? 'Error' : (deleting ? 'Deleting...' : 'Delete')}}</button>
<button (click)="isExpanded = !isExpanded" *ngIf="!isFile">{{isExpanded ? 'Collapse' : 'Expand'}}</button>
<button (click)="isExpanded = true; creatingNewSub = 1" *ngIf="!isFile">New Directory</button>
<button (click)="isExpanded = true; creatingNewSub = 2" *ngIf="!isFile">New File</button>
<button *ngIf="isFile" [routerLink]="getRouterLink()">Edit</button>
<button *ngIf="isFile">Run</button>
<button (click)="isExpanded = true; creatingNewSub = 1" *ngIf="!isFile && level < 3" [class.disabled]="deleting" [disabled]="deleting">New Directory</button>
<button (click)="isExpanded = true; creatingNewSub = 2" *ngIf="!isFile" [class.disabled]="deleting" [disabled]="deleting">New File</button>
<button *ngIf="isFile" [class.disabled]="deleting" [disabled]="deleting"
[routerLink]="getRouterLink()">Edit
</button>
</div>
<div *ngIf="isNew" class="file-buttons">
......@@ -33,9 +34,10 @@
<div *ngIf="!isNew && !isFile" [style.display]="isExpanded ? 'block' : 'none'" class="subs">
<app-file-dir-card (cancelled)="creatingNewSub = 0" (createDir)="createDirExec($event)" (createFile)="createFileExec($event)"
*ngIf="creatingNewSub !== 0" [isFile]="creatingNewSub === 2" [level]="level + 1"
[isNew]="true" [parentPath]="directory.path + directory.name + '/'"></app-file-dir-card>
<app-file-dir-card (cancelled)="creatingNewSub = 0" (createDir)="createDirExec($event)"
(createFile)="createFileExec($event)"
*ngIf="creatingNewSub !== 0" [isFile]="creatingNewSub === 2" [isNew]="true"
[level]="level + 1" [parentPath]="directory.path + directory.name + '/'"></app-file-dir-card>
<app-file-dir-card (deleteDir)="deleteDirExec($event)" (deleteFile)="deleteFileExec($event)"
*ngFor="let dir of directory.dirs" [directory]="dir"
......
......@@ -112,8 +112,10 @@ export class FileDirCardComponent implements OnInit {
path: this.parentPath
};
this.fileService.upload(file).subscribe(data => {
console.log(data);
this.createFile.emit(file);
}, () => {
}, error => {
console.log(error);
this.creating = false;
this.isErrorCreating = true;
});
......
......@@ -157,6 +157,7 @@ int main() {
.subscribe(data => {
this.runCodeService.executeFile(this.file, this.inp)
.subscribe(d => {
console.log(d);
this.runField.status = '<div class="code">' + d + '</div>';
this.runField.setState(true);
this.isCompiling = false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment