Skip to content

Commit

Permalink
validation through connect button
Browse files Browse the repository at this point in the history
  • Loading branch information
Daniel Hobi committed Jan 30, 2014
1 parent 39565ba commit 9cfa100
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 4 deletions.
18 changes: 15 additions & 3 deletions src/main/scala/code/comet/ChatUser.scala
Expand Up @@ -35,7 +35,8 @@ class ChatUser extends User with CometActor {
val splitted = str.split(",")
Coords(splitted.head.toDouble, splitted.last.toDouble)
}
}).toJsCmd
SetHtml("connectButton", generateConnectButton)
})

def initPosition = coords match {
case Full(Coords(lat, long)) => JsRaw("map.setPosition(new google.maps.LatLng(" + lat + "," + long + "))").cmd
Expand All @@ -47,7 +48,7 @@ class ChatUser extends User with CometActor {
var lat = event.latLng.lat();
var lng = event.latLng.lng();
var value = lat+","+lng;
""" + callback("value") + """})""").cmd
""" + callback("value").toJsCmd + """})""").cmd
}

def showForm = SetHtml("userform", userForm)
Expand Down Expand Up @@ -107,6 +108,17 @@ class ChatUser extends User with CometActor {
this.color = str
JsCmds.Noop
}) &
"#userSubmit" #> SHtml.ajaxButton(Text("Connect"), () => initGlobalChat))(Templates(List("templates", "userSetup")).openOr(NodeSeq.Empty))
"#userSubmit" #> generateConnectButton)(Templates(List("templates", "userSetup")).openOr(NodeSeq.Empty))
}

def validations = List((() => this.coords.isDefined,"Please set your location on the map first."))

def getErrors = validations.collect {
case (validfunc, msg) if !validfunc() => msg
}

def generateConnectButton = getErrors match {
case l if l.isEmpty => SHtml.ajaxButton(Text("Connect"), () => initGlobalChat, "id" -> "userSubmit")
case l => SHtml.ajaxButton(Text(l.mkString(",")), () => JsCmds.Noop)
}
}
4 changes: 3 additions & 1 deletion src/main/webapp/templates/userSetup.html
Expand Up @@ -3,5 +3,7 @@
<input type="text" id="colorpicker">
<br/>
<div id="googleMap"></div>
<input type="button" id="userSubmit">
<span id="connectButton">
<input type="button" id="userSubmit">
</span>
</div>

0 comments on commit 9cfa100

Please sign in to comment.