<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>migrations/9.sql</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -61,7 +61,8 @@ send(A) -&gt;
 					     Usr:email())},
 					  {usr_gravatar_enabled,
 					   Usr:gravatar_enabled()},
-					  {twitter_status, TwitterStatus}]),
+					  {twitter_status, TwitterStatus},
+					  {spam, Usr:spammer()}]),
 		      Msg1 = Msg:save(),
 
 %%		      twoorl_stats:cast({record, twoorl}),</diff>
      <filename>src/components/api_controller.erl</filename>
    </modified>
    <modified>
      <diff>@@ -26,7 +26,7 @@ index(A) -&gt;
     FeedUrl = &lt;&lt;&quot;/feeds/main/rss&quot;&gt;&gt;,
     {response,
      [{body, [?Data(A, twoorl_util:get_feed_link(FeedUrl, &lt;&lt;&quot;RSS&quot;&gt;&gt;)),
-	       {ewc, timeline, show, [A]}]},
+	       {ewc, timeline, show, [A, undefined, [{filter_spam, true}]]}]},
        {phased_vars,
 	[{header_items,
 	  [{feed_link, &lt;&lt;&quot;rss+xml&quot;&gt;&gt;,</diff>
      <filename>src/components/main_controller.erl</filename>
    </modified>
    <modified>
      <diff>@@ -40,21 +40,25 @@ show(A, UserIds) -&gt;
 show(A, UserIds, Opts) -&gt;
     OrderBy = {order_by, {created_on, desc}},
     
+    Where = case proplists:get_value(filter_spam, Opts) of
+		true -&gt;
+		    {'not', {spam,'=',1}};
+		_ -&gt;
+		    undefined
+	    end,
     %% this function is a prime optimization candidate
-    Total = 
+    Where1 = 
 	if UserIds =/= undefined -&gt;
-		msg:count('*', {usr_id, in, UserIds});
+		{'and', [{usr_id, in, UserIds}, Where]};
 	   true -&gt;
-		msg:count('*')
+		Where
 	end,
+    Total = msg:count('*', Where1),
+
     {replace, 
      {ewc, paging,
       [A, fun(Limit) -&gt;
-		  if UserIds =/= undefined -&gt;
-			  msg:find({usr_id,in,UserIds}, [OrderBy, Limit]);
-		     true -&gt;
-			  msg:find_with([OrderBy, Limit])
-		  end
+		  msg:find(Where1, [OrderBy, Limit])
 	  end,
        fun(Msgs) -&gt;
 	       {ewc, timeline, show_msgs, [A, Msgs, Opts]}</diff>
      <filename>src/components/timeline_controller.erl</filename>
    </modified>
    <modified>
      <diff>@@ -37,3 +37,12 @@ m8() -&gt;
 	      msg:update([{body, Body1}], {id,'=',Msg:id()})
       end, Msgs).
     
+
+m9() -&gt;
+    Users = usr:find({spammer,'=',1}),
+    lists:foreach(
+      fun(Usr) -&gt;
+	      msg:update([{spam, 1}], {usr_id,'=',Usr:id()})
+      end, Users).
+	      
+    </diff>
      <filename>src/twoorl_migrations.erl</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d7d3fd64e9d8e2de5d16f96326737a587b703ce2</id>
    </parent>
  </parents>
  <author>
    <name>Yariv Sadan</name>
    <email>yarivvv@gmail.com</email>
  </author>
  <url>http://github.com/yariv/twoorl/commit/6b3c0dcf858fc135a85eaf8dbb19ee2fd879eb17</url>
  <id>6b3c0dcf858fc135a85eaf8dbb19ee2fd879eb17</id>
  <committed-date>2008-06-22T11:05:07-07:00</committed-date>
  <authored-date>2008-06-22T11:05:07-07:00</authored-date>
  <message>added spam filtering</message>
  <tree>df39dd044b375399fbcd4698f20c948dc68cd66d</tree>
  <committer>
    <name>Yariv Sadan</name>
    <email>yarivvv@gmail.com</email>
  </committer>
</commit>
