mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
Support a url
field in plugin metadata
This commit is contained in:
parent
3d7b534564
commit
7dea65122e
@ -23,7 +23,7 @@
|
|||||||
{{admin-nav-item route='admin.api' label='admin.api.title'}}
|
{{admin-nav-item route='admin.api' label='admin.api.title'}}
|
||||||
{{admin-nav-item route='admin.backups' label='admin.backups.title'}}
|
{{admin-nav-item route='admin.backups' label='admin.backups.title'}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{admin-nav-item route='adminPlugins.index' label='admin.plugins.title'}}
|
{{admin-nav-item route='adminPlugins' label='admin.plugins.title'}}
|
||||||
{{plugin-outlet "admin-menu" tagName="li"}}
|
{{plugin-outlet "admin-menu" tagName="li"}}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
@ -20,8 +20,8 @@
|
|||||||
{{#each plugin in controller}}
|
{{#each plugin in controller}}
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
{{#if plugin.admin_route}}
|
{{#if plugin.url}}
|
||||||
{{#link-to plugin.admin_route.full_location}}{{plugin.name}}{{/link-to}}
|
<a {{bind-attr href=plugin.url}} target="_blank">{{plugin.name}}</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{plugin.name}}
|
{{plugin.name}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -34,3 +34,6 @@
|
|||||||
{{else}}
|
{{else}}
|
||||||
<p>{{i18n "admin.plugins.none_installed"}}</p>
|
<p>{{i18n "admin.plugins.none_installed"}}</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
<p><a href="https://meta.discourse.org/t/install-a-plugin/19157">{{i18n "admin.plugins.howto"}}</a></p>
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
class AdminPluginSerializer < ApplicationSerializer
|
class AdminPluginSerializer < ApplicationSerializer
|
||||||
attributes :name,
|
attributes :name,
|
||||||
:version,
|
:version,
|
||||||
|
:url,
|
||||||
:admin_route
|
:admin_route
|
||||||
|
|
||||||
def name
|
def name
|
||||||
@ -11,6 +12,14 @@ class AdminPluginSerializer < ApplicationSerializer
|
|||||||
object.metadata.version
|
object.metadata.version
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def url
|
||||||
|
object.metadata.url
|
||||||
|
end
|
||||||
|
|
||||||
|
def include_url?
|
||||||
|
url.present?
|
||||||
|
end
|
||||||
|
|
||||||
def admin_route
|
def admin_route
|
||||||
route = object.admin_route
|
route = object.admin_route
|
||||||
return unless route
|
return unless route
|
||||||
|
@ -1672,6 +1672,7 @@ en:
|
|||||||
none_installed: "You don't have any plugins installed."
|
none_installed: "You don't have any plugins installed."
|
||||||
version: "Version"
|
version: "Version"
|
||||||
change_settings: "Change Settings"
|
change_settings: "Change Settings"
|
||||||
|
howto: "How do I install plugins?"
|
||||||
|
|
||||||
backups:
|
backups:
|
||||||
title: "Backups"
|
title: "Backups"
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
module Plugin; end
|
module Plugin; end
|
||||||
|
|
||||||
class Plugin::Metadata
|
class Plugin::Metadata
|
||||||
FIELDS ||= [:name, :about, :version, :authors]
|
FIELDS ||= [:name, :about, :version, :authors, :url]
|
||||||
attr_accessor *FIELDS
|
attr_accessor *FIELDS
|
||||||
|
|
||||||
def self.parse(text)
|
def self.parse(text)
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
# about: Uses the lazyYT plugin to lazy load Youtube videos
|
# about: Uses the lazyYT plugin to lazy load Youtube videos
|
||||||
# version: 1.0.1
|
# version: 1.0.1
|
||||||
# authors: Arpit Jalan
|
# authors: Arpit Jalan
|
||||||
|
# url: https://github.com/discourse/discourse/tree/master/plugins/lazyYT
|
||||||
|
|
||||||
# javascript
|
# javascript
|
||||||
register_asset "javascripts/lazyYT.js"
|
register_asset "javascripts/lazyYT.js"
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
# about: adds poll support to Discourse
|
# about: adds poll support to Discourse
|
||||||
# version: 0.1
|
# version: 0.1
|
||||||
# authors: Vikhyat Korrapati
|
# authors: Vikhyat Korrapati
|
||||||
|
# url: https://github.com/discourse/discourse/tree/master/plugins/poll
|
||||||
|
|
||||||
load File.expand_path("../poll.rb", __FILE__)
|
load File.expand_path("../poll.rb", __FILE__)
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ describe Plugin::Metadata do
|
|||||||
# about: about: my plugin
|
# about: about: my plugin
|
||||||
# version: 0.1
|
# version: 0.1
|
||||||
# authors: Frank Zappa
|
# authors: Frank Zappa
|
||||||
|
# url: http://discourse.org
|
||||||
|
|
||||||
some_ruby
|
some_ruby
|
||||||
TEXT
|
TEXT
|
||||||
@ -17,6 +18,7 @@ TEXT
|
|||||||
expect(metadata.about).to eq("about: my plugin")
|
expect(metadata.about).to eq("about: my plugin")
|
||||||
expect(metadata.version).to eq("0.1")
|
expect(metadata.version).to eq("0.1")
|
||||||
expect(metadata.authors).to eq("Frank Zappa")
|
expect(metadata.authors).to eq("Frank Zappa")
|
||||||
|
expect(metadata.url).to eq("http://discourse.org")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user