]> gitweb.factorcode.org Git - factor.git/commitdiff
add sms, twitter fields to account. create sitewatcher account when user registers
authorDoug Coleman <erg@63-251-251-241.bobbroadband.com>
Wed, 25 Mar 2009 16:20:21 +0000 (11:20 -0500)
committerDoug Coleman <erg@63-251-251-241.bobbroadband.com>
Wed, 25 Mar 2009 16:20:21 +0000 (11:20 -0500)
extra/site-watcher/db/db.factor
extra/site-watcher/site-watcher-tests.factor
extra/webapps/site-watcher/site-watcher.factor

index a1a85f825f760cc5add8665df9e1b257494b47bf..148e5b96f95ae8749c49a7f465d8f001dd589966 100644 (file)
@@ -5,15 +5,18 @@ io.directories io.files.temp kernel io.streams.string calendar
 debugger combinators.smart sequences ;
 IN: site-watcher.db
 
-TUPLE: account account-id account-name email ;
+TUPLE: account account-id account-name email twitter sms ;
 
-: <account> ( account-name -- account )
+: <account> ( account-name email -- account )
     account new
+        swap >>email
         swap >>account-name ;
 
 account "ACCOUNT" {
     { "account-name" "ACCOUNT_NAME" VARCHAR +user-assigned-id+ }
     { "email" "EMAIL" VARCHAR }
+    { "twitter" "TWITTER" VARCHAR }
+    { "sms" "SMS" VARCHAR }
 } define-persistent
 
 TUPLE: site site-id url up? changed? last-up error last-error ;
@@ -72,7 +75,7 @@ TUPLE: reporting-site email url up? changed? last-up? error last-error ;
 : insert-site ( url -- site )
     <site> dup select-tuple [ ] [ dup t >>up? insert-tuple ] ?if ;
 
-: insert-account ( account-name -- ) <account> insert-tuple ;
+: insert-account ( account-name email -- ) <account> insert-tuple ;
 
 : find-sites ( -- seq ) f <site> select-tuples ;
 
index 62233587d9b874f3fc7654a07f3a6630f1a368ae..b067504e2efb1f6139d91f4f42f9e26fc8947b64 100644 (file)
@@ -14,7 +14,7 @@ IN: site-watcher.tests
         site ensure-table
         watching-site ensure-table
 
-        "erg@factorcode.org" insert-account
+        "erg" "erg@factorcode.org" insert-account
         "http://asdfasdfasdfasdfqwerqqq.com" insert-site drop
         "http://fark.com" insert-site drop
 
@@ -22,4 +22,4 @@ IN: site-watcher.tests
         f <site> select-tuples
     ] with-db ;
 
-[ f ] [ fake-sites empty? ] unit-test
\ No newline at end of file
+[ f ] [ fake-sites empty? ] unit-test
index e220cff1d41e2b311c58700512982b88301177b1..f173edb8149cd4ca7b96ab23c731c83f85157e2b 100644 (file)
@@ -71,7 +71,7 @@ CONSTANT: site-list-url URL" $site-watcher-app/"
 : <update-notify-action> ( -- action )
     <page-action>
         [
-            username <account> select-tuple from-object
+            username <account> select-tuple from-object
         ] >>init
         { site-watcher-app "update-notify" } >>template
         [
@@ -82,8 +82,10 @@ CONSTANT: site-list-url URL" $site-watcher-app/"
             } validate-params
         ] >>validate
         [
-            username <account> select-tuple
+            username <account> select-tuple
             "email" value >>email
+            "twitter" value >>twitter
+            "sms" value >>sms
             update-tuple
             site-list-url <redirect>
         ] >>submit
@@ -122,6 +124,10 @@ CONSTANT: site-list-url URL" $site-watcher-app/"
 site-watcher-db <alloy>
 main-responder set-global
 
+M: site-watcher-app init-user-profile
+    drop
+    "username" value "email" value <account> insert-tuple ;
+
 : init-db ( -- )
     site-watcher-db [
         { site account watching-site } [ ensure-table ] each