From 264e4beceac8028967dfc3d0098e096c50bac6bd Mon Sep 17 00:00:00 2001 From: Kyle Drake Date: Mon, 19 May 2014 18:31:46 +0200 Subject: [PATCH] follow/followings fixes, general cleanups --- app.rb | 2 ++ models/tag.rb | 11 ++++++++++- views/_follows.erb | 19 ++++++++++++++++--- views/_tags.erb | 4 ++-- views/home.erb | 14 +++++++------- views/site.erb | 15 ++++----------- 6 files changed, 41 insertions(+), 24 deletions(-) diff --git a/app.rb b/app.rb index 3d1b9295..26976881 100644 --- a/app.rb +++ b/app.rb @@ -76,6 +76,8 @@ end post '/site/:sitename/comment' do |sitename| require_login + redirect "/site/#{sitename}" if params[:message].empty? + site = Site[username: sitename] DB.transaction do diff --git a/models/tag.rb b/models/tag.rb index 4dd917f6..ecffdbaf 100644 --- a/models/tag.rb +++ b/models/tag.rb @@ -1,3 +1,12 @@ class Tag < Sequel::Model many_to_many :sites -end \ No newline at end of file + + def before_create + super + values[:name].downcase! + end + + def self.create_unless_exists(name) + dataset.filter(name: name).first || create(name: name) + end +end diff --git a/views/_follows.erb b/views/_follows.erb index 8a6a229b..8cfdb49e 100644 --- a/views/_follows.erb +++ b/views/_follows.erb @@ -1,12 +1,25 @@ <% if (!is_current_site && site.followings_dataset.count > 0) || is_current_site %> -

Following

+

<%= is_current_site ? 'You follow' : 'This site follows' %>

<% if site.followings_dataset.count == 0 %>

You are not following any sites yet. Add some by browsing sites or looking at your tags. <% else %> <% site.followings.each do |following| %> - + <% end %> <% end %>

-<% end %> \ No newline at end of file +<% end %> + +<% if (!is_current_site && site.follows_dataset.count > 0) || is_current_site %> +

Followers

+
+ <% if site.follows_dataset.count == 0 %> + No followers yet. + <% else %> + <% site.follows.each do |follow| %> + + <% end %> + <% end %> +
+<% end %> diff --git a/views/_tags.erb b/views/_tags.erb index 2644bd15..dc49993c 100644 --- a/views/_tags.erb +++ b/views/_tags.erb @@ -4,7 +4,7 @@

You don't have any tags yet. Add some! <% else %> <% site.tags.each do |tag| %> - <%= tag.name %> + <%= tag.name %> <% end %> <% end %> -<% end %> \ No newline at end of file +<% end %> diff --git a/views/home.erb b/views/home.erb index 643808de..528a2d1c 100644 --- a/views/home.erb +++ b/views/home.erb @@ -33,7 +33,7 @@ Art Cooking - +

- +
- + - +
- + \ No newline at end of file +
diff --git a/views/site.erb b/views/site.erb index ff8a7519..b8fe6c36 100644 --- a/views/site.erb +++ b/views/site.erb @@ -69,16 +69,17 @@ Last updated <% if site.updated_at.nil? %> - Just Created + <%= site.created_at.ago.downcase %> <% else %> <%= site.updated_at.ago.downcase %> <% end %>
-
Total updates<%= site.changed_count %>
+
Number of updates<%= site.changed_count %>
Created<%= site.created_at.strftime('%B %-d, %Y') %>
+ <%== erb :'_follows', layout: false, locals: {site: site, is_current_site: site == current_site} %>