Skip to content

Commit

Permalink
added 'Delete all discussion comments' to user profile
Browse files Browse the repository at this point in the history
  • Loading branch information
ignatov committed Aug 19, 2011
1 parent fa52751 commit c677508
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 6 deletions.
29 changes: 25 additions & 4 deletions src/main/scala/scala/tools/colladoc/snippet/ProfileOps.scala
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ import net.liftweb.http.js.{JsCmds, JsCmd}
import net.liftweb.http.js.JsCmds._
import tools.nsc.doc.model.{DocTemplateEntity, MemberEntity}
import lib.util.PathUtils._
import net.liftweb.http.js.jquery.JqJE.Jq
import lib.js.JqUI.Button

/**
* User profile snippet.
Expand Down Expand Up @@ -364,11 +366,11 @@ class ProfileOps {
val comments = new History(model.vend.rootPackage).commentsToHtml(cmts)

val template: Template = new Template(model.vend.rootPackage)
val dscs = Discussion.findAll(By(Discussion.user, user), By(Discussion.valid, true), OrderBy(Discussion.dateTime, Ascending))
def dscs = Discussion.findAll(By(Discussion.user, user), By(Discussion.valid, true), OrderBy(Discussion.dateTime, Ascending))

val entities = dscs.map(d => (d.qualifiedName.is, d)).groupBy(p => p._1)
def entities = dscs.map(d => (d.qualifiedName.is, d)).groupBy(p => p._1)

lazy val entitiesHtml = entities map { case (qualifiedName, value) => {
def entitiesHtml = entities map { case (qualifiedName, value) => {
val m = pathToTemplate(model.vend.rootPackage, fixedPath(qualifiedName))

val containingType = tmpl(m);
Expand All @@ -395,7 +397,26 @@ class ProfileOps {
bind("discussion_comment", template.discussionToHtml(d))
}

val discussionComments = <xml:group>{entitiesHtml}</xml:group>
def discussionComments: NodeSeq =
<xml:group>
{
if (User.validSuperUser_?)
SHtml.a(
ColladocConfirm("Confirm delete"),
() => {
dscs.foreach(c => c.valid(false).save())
Replace("discussion_comments_tab",
<div id="discussion_comments_tab">
{discussionComments}
</div>
) & Jq(Str(".button")) ~> Button()
},
Text("Delete all comments"), ("class", "button delete_all_button"))
}
{
entitiesHtml
}
</xml:group>

bind("profile",
profile.body,
Expand Down
9 changes: 7 additions & 2 deletions src/main/webapp/coprofile.css
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,7 @@
}

#discussion_comments_tab {
padding-left: 0;
padding-right: 0;
padding: 0;
}

.definition > a {
Expand All @@ -111,4 +110,10 @@

.discussion_wrapper {
margin-left: 20px;
}

.delete_all_button {
margin-left: 20px;
margin-top: 10px;
margin-bottom: 10px;
}
4 changes: 4 additions & 0 deletions src/main/webapp/scripts/coprofile.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,10 @@ $(document).ready(function() {
$("#discussion_comments_tab > div > h4.definition").live("click", function(){
$(this).next('.discussion_wrapper').slideToggle(100)
});

if ($("#discussion_comments_tab > .delete_all_button").length == 0) {
$("#discussion_comments_tab").css("padding-top", "1em");
}
});

function replaceIcon(type) {
Expand Down

0 comments on commit c677508

Please sign in to comment.