cgaspard / mantiskanban

Mantis Kanban that uses ajax and mantisconnect
45 stars 33 forks source link

enhancement - remember last project selected #11

Closed dreed47 closed 11 years ago

dreed47 commented 11 years ago

Suggestion to remember the last project selected in the UI.

This could be done by setting a cookie in the SelectProject() function SetCookie("lastMantisProjectId", Mantis.CurrentProjectID, 999)

And a change to the BuildProjectsGUI() to look like this.

function BuildProjectsGUI() { var projectDivContainer = document.getElementById("projectlist"); try { while(projectDivContainer.childNodes.length > 0) { projectDivContainer.removeChild(projectDivContainer.firstChild); } } catch(e) { } for(var i = 0; i < Kanban.Projects.length; i++) { var projectDiv = document.createElement("div"); projectDiv.setAttribute("class", "projectbutton"); projectDiv.setAttribute("id", "project" + Kanban.Projects[i].ID); projectDiv.setAttribute("onclick", "document.getElementById('seletedproject').value = '" + Kanban.Projects[i].ID + "'; SelectProject(); SwapSelectedProject(this.id);"); // projectDiv.setAttribute("selected", i == 0 ? "true" : "false"); projectDiv.setAttribute("selected", "false"); projectDiv.innerHTML = Kanban.Projects[i].Name; projectDivContainer.appendChild(projectDiv); }

    var selectedProjectId = GetCookie("lastMantisProjectId");
if (selectedProjectId == false) {
    selectedProjectId = Kanban.Projects[0].ID;
}
document.getElementById("project" + selectedProjectId).setAttribute("selected", "true");
document.getElementById("seletedproject").value = selectedProjectId;

}

cgaspard commented 11 years ago

This is now implemented utilizing html 5 local storage.