Skip to content
Snippets Groups Projects
Commit 0e690ba0 authored by Thomas Schnaak's avatar Thomas Schnaak
Browse files

#64 feat: implemented add/delete Link

parent ce429544
No related branches found
No related tags found
No related merge requests found
......@@ -36,7 +36,7 @@ public class LinkDAOImpl implements LinkDAO{
MysqlConnect connection = new MysqlConnect();
connection.connect();
// build and execute request
// build and execute requestxam
String request = "DELETE FROM links WHERE id = ?;";
connection.issueInsertOrDeleteStatement(request, linkId);
......
......@@ -25,13 +25,17 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
descriptionDAO.createDescription(description);
}
return descriptionDAO.getDescription(studentIdentifier);
ProjectDescription returnDesc = descriptionDAO.getDescription(studentIdentifier);
returnDesc.setLinks(linkDAO.getAllLinks(returnDesc.getId()));
return returnDesc;
}
@Override
public ProjectDescription getProjectbyId(String id) {
return descriptionDAO.getDescription(id);
ProjectDescription returnDesc = descriptionDAO.getDescription(id);
returnDesc.setLinks(linkDAO.getAllLinks(returnDesc.getId()));
return returnDesc;
}
@Override
......@@ -44,7 +48,7 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
@Override
public void addLink(String project, String link, String name) {
Link newLink = new Link("0",project,name,link);
Link newLink = new Link(project,project,name,link);
linkDAO.addLink(newLink);
}
......
......@@ -45,7 +45,6 @@ public class ProjectDescriptionView {
@Path("/saveText")
public Response saveProjectText(@FormParam("student") String student, @FormParam("project") String project, @FormParam("text") String text) {
log.debug(">>> saveText: " + text);
descriptionService.saveProjectText(new StudentIdentifier(project,student),text);
//TODO token
......@@ -69,14 +68,15 @@ public class ProjectDescriptionView {
@POST
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
@Path("/addLink")
public Response addLink(@FormParam("link") String link, @FormParam("name") String name){
public Response addLink(@FormParam("link") String link, @FormParam("name") String name, @FormParam("projectdescriptionId") String project){
log.debug(">>> addLink: " + name + ":" + link);
descriptionService.addLink("0",link, name );
ProjectDescription desc = descriptionService.getProjectbyId(project);
descriptionService.addLink(project,link, name );
try {
URI location = new URI("../pages/eportfolio.jsp");
URI location = new URI("../pages/eportfolio.jsp?token="+ desc.getStudent().getStudentId()+"&projectId="+desc.getStudent().getProjectId());
log.debug("<<< addLink: redirect to " +location.toString());
return Response.temporaryRedirect(location).build();
......@@ -124,7 +124,6 @@ public class ProjectDescriptionView {
StudentIdentifier student = descriptionService.getProjectbyId(desc).getStudent();
descriptionService.closeDescription(desc);
//TODO token
try {
URI location = new URI("../pages/eportfolio.jsp?token=" + student.getStudentId() + "&projectId=" + student.getProjectId());
log.debug("<<< closeDescription: redirect to " +location.toString());
......
var student = getQueryVariable("token");
var project = getQueryVariable("projectId");
var description = 0;
$(document).ready(function() {
$(document).ready(function() {
$.ajax({
url: "../rest/projectdescription/" + project + "/" + student
}).then(function(data) {
console.log("desc: " + data);
description = data.id;
$('#projectdescriptionId').val(description);
if (!data.open){
$("#description-edit").remove();
}
$('.journal-description-text').append(data.descriptionHTML);
for(var link in data.links){
$('.journal-description-links').append('<button class="btn btn-default btn-xs" onclick=\'linkLoeschen("'+link+'")\'> <i class="fa fa-trash" aria-hidden="true" ></i></button><a href=\' + data.links[link] + \'>' + link + '</a> <br/>');
for(var ii in data.links){
console.log(data.links[ii])
$('.journal-description-links').append('<button class="btn btn-default btn-xs" onclick=\'linkLoeschen("'+data.links[ii].id +'")\'> <i class="fa fa-trash" aria-hidden="true" ></i></button><a href=' + data.links[ii].link + '>' + data.links[ii].name + '</a> <br/>');
}
$('.journal-description-links').append('<button type="button" class="btn btn-default btn-xs" data-toggle="modal" data-target="#addLinkModal"><i class="fa fa-plus" aria-hidden="true"></i></button>');
......@@ -35,7 +38,6 @@ $(document).ready(function() {
});
$('#editDescriptionLink').on('click', function () {
/*TODO getJournal*/
location.href = "editDescription.jsp?project=" + project + "&token=" + student + "&projectId=" + project;
});
......@@ -108,21 +110,20 @@ function loadJournals(data) {
$('.journal').append(journalString)
}};
function linkLoeschen(name) {
console.log("löschen" + name);
function linkLoeschen(id) {
console.log("löschen" + id);
$.ajax({
type: "POST",
url: "../rest/projectdescription/deleteLink",
data: JSON.stringify(eval(name)),
data: id,
contentType: "application/json; charset=utf-8",
crossDomain: true,
dataType: "json",
success: function (data, status, jqXHR) {
alert(success);
}
});
location.reload();
}
function closeJournal() {
......
......@@ -92,11 +92,12 @@
</div>
<div class="modal-body">
<form id="linkform" method="POST" action="../rest/projectdescription/addLink" >
<input type="hidden" name="projectdescriptionId" id="projectdescriptionId" value=""/>
Name:<br>
<input type="text" name="name" form="linkform">
<br>
URL:<br>
<input type="text" name="link" form="linkform">
<input type="url" name="link" form="linkform">
<br><br>
<input class="btn btn-default" type="submit" >
<button type="button" class="btn btn-default" data-dismiss="modal">Abbrechen</button>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment