about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDaigo 3 Dango <zunda@users.noreply.github.com>2017-08-22 20:54:19 +0000
committerEugen Rochko <eugen@zeonfederated.com>2017-08-22 22:54:19 +0200
commit696c2c6f2f3338df121cf17389478da9ecab11af (patch)
tree957a1e6d30482048ea08e617bec77e784b15896b
parent5927b43c0fc74e66cd3a882b565ea70236559c02 (diff)
Add Mastodon::Source.url (#4643)
* Add Mastodon::Source.url

* Update spec

* Refactor

Move things frmo Mastodon::Source to Mastodon::Version
-rw-r--r--app/presenters/instance_presenter.rb4
-rw-r--r--app/views/about/more.html.haml4
-rw-r--r--app/views/about/show.html.haml4
-rw-r--r--lib/mastodon/version.rb17
-rw-r--r--spec/views/about/show.html.haml_spec.rb1
5 files changed, 26 insertions, 4 deletions
diff --git a/app/presenters/instance_presenter.rb b/app/presenters/instance_presenter.rb
index 5d5be58ba..8104b7531 100644
--- a/app/presenters/instance_presenter.rb
+++ b/app/presenters/instance_presenter.rb
@@ -31,4 +31,8 @@ class InstancePresenter
   def version_number
     Mastodon::Version
   end
+
+  def source_url
+    Mastodon::Version.source_url
+  end
 end
diff --git a/app/views/about/more.html.haml b/app/views/about/more.html.haml
index a6fd265fa..094188472 100644
--- a/app/views/about/more.html.haml
+++ b/app/views/about/more.html.haml
@@ -63,5 +63,5 @@
   .footer-links
     .container
       %p
-        = link_to t('about.source_code'), 'https://github.com/tootsuite/mastodon'
-        = " (#{@instance_presenter.version_number})"
\ No newline at end of file
+        = link_to t('about.source_code'), @instance_presenter.source_url
+        = " (#{@instance_presenter.version_number})"
diff --git a/app/views/about/show.html.haml b/app/views/about/show.html.haml
index acdb12ad7..93270fe3d 100644
--- a/app/views/about/show.html.haml
+++ b/app/views/about/show.html.haml
@@ -76,5 +76,5 @@
   .footer-links
     .container
       %p
-        = link_to t('about.source_code'), 'https://github.com/tootsuite/mastodon'
-        = " (#{@instance_presenter.version_number})"
\ No newline at end of file
+        = link_to t('about.source_code'), @instance_presenter.source_url
+        = " (#{@instance_presenter.version_number})"
diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb
index 381e9aac9..fcca875d9 100644
--- a/lib/mastodon/version.rb
+++ b/lib/mastodon/version.rb
@@ -31,5 +31,22 @@ module Mastodon
     def to_s
       [to_a.join('.'), flags].join
     end
+
+    def source_base_url
+      'https://github.com/tootsuite/mastodon'
+    end
+
+    # specify git tag or commit hash here
+    def source_tag
+      nil
+    end
+
+    def source_url
+      if source_tag
+        "#{source_base_url}/tree/#{source_tag}"
+      else
+        source_base_url
+      end
+    end
   end
 end
diff --git a/spec/views/about/show.html.haml_spec.rb b/spec/views/about/show.html.haml_spec.rb
index c0ead6349..aa151dd27 100644
--- a/spec/views/about/show.html.haml_spec.rb
+++ b/spec/views/about/show.html.haml_spec.rb
@@ -13,6 +13,7 @@ describe 'about/show.html.haml', without_verify_partial_doubles: true do
                                 site_title: 'something',
                                 site_description: 'something',
                                 version_number: '1.0',
+                                source_url: 'https://github.com/tootsuite/mastodon',
                                 open_registrations: false,
                                 closed_registrations_message: 'yes')
     assign(:instance_presenter, instance_presenter)