;
LogIn ;{{{ ((defn login [] (handle "login" (fn [request response] "") (fn [request response] (let [wikiName (.getParameter request "wikiName") pw (.getParameter request "password") idServer "http://id.mindbroker.de/" idPage (fetch-url-s (str idServer "id?wikiName=" wikiName )) publicKey (get (re-find #"
([a-zA-Z0-9]+)" idPage) 1) mindId (get (re-find #"
([0-9]+)" idPage) 1) pwDigest (de.mindbroker.tools.Hash/getHash (str publicKey "#" pw)) login
StatusUrl (str idServer "login?wikiName=" wikiName "&passwordDigest=" pwDigest) login
StatusPage (fetch-url-s login
StatusUrl) hConf (new org.apache.hadoop.hbase.
HBaseConfiguration) hTable (new org.apache.hadoop.hbase.client.HTable "
EventLog") batch (new org.apache.hadoop.hbase.io.
BatchUpdate (date
OfNow))] (if (.contains login
StatusPage "\"login\": true") (do (.put batch "log:
EventType" (.getBytes "
LogIn")) (.put batch "log:
MindId" (.getBytes mindId)) (.put batch "log:
RemoteAddr" (.getBytes (.get
RemoteAddr request))) (.put batch "log:
RemoteHost" (.getBytes (.get
RemoteHost request))) (.commit hTable batch) (.setAttribute (.getSession request) "
MindId" mindId) (.setAttribute (.getSession request) "
WikiName" wikiName) (.sendRedirect response (.getParameter request "pathInfo")) ) (.sendRedirect response (str (.getParameter request "pathInfo") "&message=wrongPassword")) ))) ))) ;}}}