localize Plugins

Change-Id: Ia1931439e12f502ffed7da16ee0c1c8df7e1bb68
Reviewed-on: https://gerrit.instructure.com/4260
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
This commit is contained in:
Jacob Fugal 2011-06-16 17:21:06 -06:00
parent 52dbe5f1ae
commit 971979a7ce
13 changed files with 143 additions and 155 deletions

View File

@ -27,7 +27,7 @@ class PluginsController < ApplicationController
if find_plugin_setting
@settings = @plugin.settings
else
flash[:notice] = "The plugin #{params[:id]} doesn't exist."
flash[:notice] = t('errors.plugin_doesnt_exist', "The plugin %{id} doesn't exist.", :id => params[:id])
redirect_to plugins_path
end
end
@ -37,15 +37,15 @@ class PluginsController < ApplicationController
@plugin_setting.disabled = params[:plugin_setting][:disabled] if params[:plugin_setting] && params[:plugin_setting][:disabled]
@plugin_setting.posted_settings = params[:settings] unless @plugin_setting.disabled
if @plugin_setting.save
flash[:notice] = "Plugin settings successfully updated."
flash[:notice] = t('notices.settings_updated', "Plugin settings successfully updated.")
redirect_to plugin_path(@plugin.id)
else
@settings = @plugin.settings
flash[:error] = "There was an error saving the plugin settings."
flash[:error] = t('errors.setting_update_failed', "There was an error saving the plugin settings.")
render :action => 'show'
end
else
flash[:error] = "The plugin #{params[:id]} doesn't exist."
flash[:error] = t('errors.plugin_doesnt_exist', "The plugin %{id} doesn't exist.", :id => params[:id])
redirect_to plugins_path
end
end

View File

@ -2,44 +2,45 @@
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
<p><%= t(:description, <<-TEXT)
Error reporting can be enabled on the console by calling
Setting.set('show_feedback_link', 'true'). Once this is
enabled you can specify an email address or a POST URL where
error messages will be delivered.
</p>
TEXT
%></p>
</td>
</tr>
<tr>
<td><%= f.label :action, "Action:" %></td>
<td><%= f.blabel :action, :en => "Action" %></td>
<td>
<%= f.select :action, [['Do Nothing', 'nothing'], ['Send an Email', 'email'], ['Post to a URL', 'post']], {}, :class => "select_action" %>
<%= f.select :action, [[t('options.nothing', 'Do Nothing'), 'nothing'], [t('options.email', 'Send an Email'), 'email'], [t('options.post', 'Post to a URL'), 'post']], {}, :class => "select_action" %>
</td>
</tr>
<tr class="email sub_setting" style="display: none;">
<td><%= f.label :email, "Email Address:" %></td>
<td><%= f.blabel :email, :en => "Email Address" %></td>
<td>
<%= f.text_field :email %>
</td>
</tr>
<tr class="post sub_setting" style="display: none;">
<td><%= f.label :url, "URL:" %></td>
<td><%= f.blabel :url, :en => "URL" %></td>
<td>
<%= f.text_field :url %>
</td>
</tr>
<tr class="post sub_setting" style="display: none;">
<td><%= f.label :subject_param, "Subject Param:" %></td>
<td><%= f.blabel :subject_param, :en => "Subject Param" %></td>
<td>
<%= f.text_field :subject_param %>
<div style="font-size: 0.8em;">The subject of the message will be sent with this key</div>
<div class="hint"><%= t('hints.subject_param', "The subject of the message will be sent with this key") %></div>
</td>
</tr>
<tr class="post sub_setting" style="display: none;">
<td><%= f.label :body_param, "Body Param:" %></td>
<td><%= f.blabel :body_param, "Body Param" %></td>
<td>
<%= f.text_field :body_param %>
<div style="font-size: 0.8em;">The body of the message will be sent with this key</div>
<div class="hint"><%= t('hints.body_param', "The body of the message will be sent with this key") %></div>
</td>
</tr>
</table>
@ -52,4 +53,4 @@ $(document).ready(function() {
}).change();
});
</script>
<% end %>
<% end %>

View File

@ -2,34 +2,32 @@
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
<p><%= t(:description, <<-TEXT)
EtherPad is now an open source project. There are a number of public
hosted instances of EtherPad that you can use if you'd like. These
include:
</p>
TEXT
%></p>
<ul>
<li><a href="http://piratepad.net/">Pirate Pad</a></li>
<li><a href="http://primarypad.com/">Primary Pad</a></li>
<li><a href="http://sketchpad.cc/">SketchPad</a></li>
<li><a href="http://www.edupad.ch/">eduPad</a></li>
<li><a href="http://typewith.me/">TypeWith.me</a></li>
<li><a href="http://piratepad.net/"><%= t(:pirate_pad, "Pirate Pad") %></a></li>
<li><a href="http://primarypad.com/"><%= t(:primary_pad, "Primary Pad") %></a></li>
<li><a href="http://sketchpad.cc/"><%= t(:sketchpad, "SketchPad") %></a></li>
<li><a href="http://www.edupad.ch/"><%= t(:edupad, "eduPad") %></a></li>
<li><a href="http://typewith.me/"><%= t(:typewithme, "TypeWith.me") %></a></li>
</ul>
<p>
Or you can always <a href="http://etherpad.org/">set
up your own EtherPad site</a>.
</p>
<p><%= mt(:host_your_own, "Or you can always [set up your own EtherPad site](%{etherpad_url}).", :etherpad_url => 'http://etherpad.org/') %></p>
</td>
</tr>
<tr>
<td><%= f.label :domain, "Domain:" %></td>
<td><%= f.blabel :domain, :en => "Domain" %></td>
<td>
<%= f.text_field :domain %>
<div class="hint">Don't include the "http://" part or any slashes
<div class="hint"><%= t('hints.domain', "Don't include the \"http://\" part or any slashes") %>
</td>
</tr>
<tr>
<td><%= f.label :name, "Name:" %></td>
<td><%= f.blabel :name, :en => "Name" %></td>
<td>
<%= f.text_field :name %>
</td>

View File

@ -1,66 +1,63 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to create a <a href="http://www.facebook.com/developers">new app on facebook.com</a>.
Set the following configuration options to ensure your Facebook app
works correctly:
<ul>
<li><b>Web Site -- Site URL:</b> set to https://&lt; domain &gt;/</li>
<li><b>Web Site -- Site Domain:</b> domain of your main Canvas site. This must match the Site URL setting</li>
<li><b>Facebook Integration -- Canvas Page:</b> make a note of whatever you choose and enter in the form below</li>
<li><b>Facebook Integration -- Canvas URL:</b> set to https://&lt; domain &gt;/facebook</li>
<li>Make sure <b>Advanced -- OAuth 2.0 for Canvas</b> is enabled</li>
<li>After you save your app, make a note of the App ID, API Key and App Secret</li>
</ul>
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :site_url => raw('<span class="nobr">https://&lt; domain &gt;/</span>'), :canvas_url => raw('<span class="nobr">https://&lt; domain &gt;/facebook</span>'))
You will need to create a [new app on facebook.com](http://www.facebook.com/developers).
Set the following configuration options to ensure your Facebook app
works correctly:
* **Web Site -- Site URL:** set to %{site_url}
* **Web Site -- Site Domain:** domain of your main Canvas site. This must match the Site URL setting
* **Facebook Integration -- Canvas Page:** make a note of whatever you choose and enter in the form below
* **Facebook Integration -- Canvas URL:** set to %{canvas_url}
* Make sure **Advanced -- OAuth 2.0 for Canvas** is enabled
* After you save your app, make a note of the App ID, API Key and App Secret
TEXT
%></td>
</tr>
<tr>
<td colspan="2" class="sub">
<h3>Domain Settings</h3>
<h3><%= t('headers.domain_settings', "Domain Settings") %></h3>
</td>
</tr>
<tr>
<td><%= f.label :app_id, "App ID:" %></td>
<td><%= f.blabel :app_id, :en => "App ID" %></td>
<td>
<%= f.text_field :app_id %>
</td>
</tr>
<tr>
<td><%= f.label :api_key, "API Key:" %></td>
<td><%= f.blabel :api_key, :en => "API Key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret, "App Secret:" %></td>
<td><%= f.blabel :secret, :en => "App Secret" %></td>
<td>
<%= f.text_field :secret %>
</td>
</tr>
<tr>
<td><%= f.label :canvas_name, "Canvas Name:" %></td>
<td><%= f.blabel :canvas_name, :en => "Canvas Name" %></td>
<td>
<%= f.text_field :canvas_name %>
<div class="hint">this is the path specified in "Canvas Page"</div>
<div class="hint"><%= t('hints.canvas_name', 'this is the path specified in "Canvas Page"') %></div>
</td>
</tr>
<tr>
<td><%= f.label :canvas_domain, "Canvas Domain:" %></td>
<td><%= f.blabel :canvas_domain, :en => "Canvas Domain" %></td>
<td>
<%= f.text_field :canvas_domain %>
<div class="hint">this is the domain specified in "Canvas URL"</div>
<div class="hint"><%= t('hints.canvas_domain', 'this is the domain specified in "Canvas URL"') %></div>
</td>
</tr>
<tr>
<td></td>
<td>
<%= f.check_box :disable_ssl %>
<%= f.label :disable_ssl, "Disable SSL" %>
<div class="hint">Use only for local testing</div>
<%= f.label :disable_ssl, :en => "Disable SSL" %>
<div class="hint"><%= t('hints.disable_ssl', "Use only for local testing") %></div>
</td>
</tr>
</table>
@ -74,4 +71,4 @@ $(document).ready(function() {
});
});
</script>
<% end %>
<% end %>

View File

@ -1,22 +1,20 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to <a href="https://www.google.com/accounts/ManageDomains">
register your domain with Google</a>. Make a note of your "OAuth
Consumer Key" and "OAuth Consumer Secret" values.
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :google_url => 'https://www.google.com/accounts/ManageDomains')
You will need to [register your domain with Google](%{google_url}).
Make a note of your "OAuth Consumer Key" and "OAuth Consumer Secret" values.
TEXT
%></td>
</tr>
<tr>
<td><%= f.label :api_key, "OAuth Consumer Key:" %></td>
<td><%= f.blabel :api_key, :en => "OAuth Consumer Key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret_key, "OAuth Consumer Secret:" %></td>
<td><%= f.blabel :secret_key, :en => "OAuth Consumer Secret" %></td>
<td>
<%= f.text_field :secret_key %>
</td>

View File

@ -2,22 +2,22 @@
<table style="width: 500px;" class="formtable">
<tr>
<td colspan=2><%= f.check_box :enabled, {}, 'true', 'false' %>
<%= f.label :enabled, "Enabled" %></td>
<%= f.label :enabled, :en => "Enabled" %></td>
</tr>
<tr>
<td><%= f.label :format_type, "Output format type:" %></td>
<td><%= f.blabel :format_type, :en => "Output format type" %></td>
<td><%= f.select :format_type, Course.valid_grade_export_types.keys.map{|k| [Course.valid_grade_export_types[k][:name], k]}, {} %>
</tr>
<tr>
<td><%= f.label :publish_endpoint, "Endpoint to publish to:" %></td>
<td><%= f.blabel :publish_endpoint, :en => "Endpoint to publish to" %></td>
<td><%= f.text_field :publish_endpoint %></td>
</tr>
<tr>
<td colspan=2><%= f.check_box :wait_for_success, {}, 'yes', 'no' %>
<%= f.label :wait_for_success, "Wait for success notifications" %></td>
<%= f.label :wait_for_success, :en => "Wait for success notifications" %></td>
</tr>
<tr>
<td><%= f.label :success_timeout, "Success notification timeout (in seconds):" %></td>
<td><%= f.blabel :success_timeout, :en => "Success notification timeout (in seconds)" %></td>
<td><%= f.text_field :success_timeout %></td>
</tr>
</table>

View File

@ -1,81 +1,79 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need an account either at <a href="http://www.kaltura.com">Kaltura.com</a>
or with a self-hosted instance of Kaltura.
</p>
<p>
<strong>Note:</strong> once you have Kaltura configured within Canvas,
you need to go to the Kaltura Management Console and under "Settings ->
Integration Settings" enable server notifications with a
Notification URL of:
</p>
<p>http://your_canvas_domain/media_objects/kaltura_notifications</p>
<p>
Then check the boxes for "Add Entry" and "Delete Entry" in the "Sent by Server" column.
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :kaltura_url => 'http://www.kaltura.com', :notification_url => 'http://your_canvas_domain/media_objects/kaltura_notifications')
You will need an account either at [Kaltura.com](%{kaltura_url})
or with a self-hosted instance of Kaltura.
**Note:** once you have Kaltura configured within Canvas,
you need to go to the Kaltura Management Console and under "Settings ->
Integration Settings" enable server notifications with a
Notification URL of:
%{notification_url}
Then check the boxes for "Add Entry" and "Delete Entry" in the "Sent by Server" column.
TEXT
%></td>
</tr>
<tr>
<td colspan="2" class="sub">
<h3>Domain Settings</h3>
<h3><%= t('headers.domain_settings', "Domain Settings") %></h3>
</td>
</tr>
<tr>
<td><%= f.label :domain, "Domain:" %></td>
<td><%= f.blabel :domain, :en => "Domain" %></td>
<td>
<%= f.text_field :domain %>
<div class="hint">For hosted accounts, use "www.kaltura.com"</div>
<div class="hint"><%= t('hints.domain', 'For hosted accounts, use "www.kaltura.com"') %></div>
</td>
</tr>
<tr>
<td><%= f.label :resource_domain, "Resource Domain:" %></td>
<td><%= f.blabel :resource_domain, :en => "Resource Domain" %></td>
<td>
<%= f.text_field :resource_domain %>
<div class="hint">For hosted accounts, use "cdn.kaltura.com"</div>
<div class="hint"><%= t('hints.resource_domain', 'For hosted accounts, use "cdn.kaltura.com"') %></div>
</td>
</tr>
<tr>
<td colspan="2" class="sub">
<h3>Account Settings</h3>
<p>These values can be found in the Kaltura Management Console under "Settings -> Integration Settings"</p>
<h3><%= t('headers.account_settings', "Account Settings") %></h3>
<p><%= t(:account_settings, 'These values can be found in the Kaltura Management Console under "Settings -> Integration Settings"') %></p>
</td>
</tr>
<tr>
<td><%= f.label :partner_id, "Partner ID:" %></td>
<td><%= f.blabel :partner_id, :en => "Partner ID" %></td>
<td><%= f.text_field :partner_id %></td>
</tr>
<tr>
<td><%= f.label :subpartner_id, "Sub Partner ID:" %></td>
<td><%= f.blabel :subpartner_id, :en => "Sub Partner ID" %></td>
<td><%= f.text_field :subpartner_id %></td>
</tr>
<tr>
<td><%= f.label :secret_key, "Administrator Secret:" %></td>
<td><%= f.blabel :secret_key, :en => "Administrator Secret" %></td>
<td><%= f.text_field :secret_key %></td>
</tr>
<tr>
<td><%= f.label :user_secret_key, "User Secret:" %></td>
<td><%= f.blabel :user_secret_key, :en => "User Secret" %></td>
<td><%= f.text_field :user_secret_key %></td>
</tr>
<tr>
<td colspan="2" class="sub">
<h3>UI Conf IDs</h3>
<p>For Kaltura-hosted customers, you can ask Kaltura to provide you with these ids. Self-hosted instances can find these values in the ui_confs table.</p>
<h3><%= t('headers.ui_conf_ids', "UI Conf IDs") %></h3>
<p><%= t(:ui_conf_ids, "For Kaltura-hosted customers, you can ask Kaltura to provide you with these ids. Self-hosted instances can find these values in the ui_confs table.") %></p>
</td>
</tr>
<tr>
<td><%= f.label :player_ui_conf, "Player UI Conf ID:" %></td>
<td><%= f.blabel :player_ui_conf, :en => "Player UI Conf ID" %></td>
<td><%= f.text_field :player_ui_conf %></td>
</tr>
<tr>
<td><%= f.label :kcw_ui_conf, "KCW UI Conf ID:" %></td>
<td><%= f.blabel :kcw_ui_conf, :en => "KCW UI Conf ID" %></td>
<td><%= f.text_field :kcw_ui_conf %></td>
</tr>
<tr>
<td><%= f.label :upload_ui_conf, "Uploader UI Conf ID:" %></td>
<td><%= f.blabel :upload_ui_conf, :en => "Uploader UI Conf ID" %></td>
<td><%= f.text_field :upload_ui_conf %></td>
</tr>
</table>
<% end %>
<% end %>

View File

@ -1,29 +1,26 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to register a <a href="https://www.linkedin.com/secure/developer">new app on LinkedIn</a>.
Set the following configuration options to ensure your LinkedIn integration
works correctly:
<ul>
<li><b>Application Type:</b> set to "Web Application"</li>
<li><b>Live Status:</b> set to "Live"</li>
<li><b>OAuth Redirect URL:</b> set to <span class="nobr">https://&lt; domain &gt;/oauth_success?service=linked_in</span></li>
<li>After you save your app, make a note of the API Key and Secret Key</li>
</ul>
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :linkedin_url => 'https://www.linkedin.com/secure/developer', :oauth_url => raw('<span class="nobr">https://&lt; domain &gt;/oauth_success?service=linked_in</span>'))
You will need to register a [new app on LinkedIn](%{linkedin_url}).
Set the following configuration options to ensure your LinkedIn integration
works correctly:
* **Application Type:** set to "Web Application"
* **Live Status:** set to "Live"
* **OAuth Redirect URL:** set to %{oauth_url}
* After you save your app, make a note of the API Key and Secret Key
TEXT
%></td>
</tr>
<tr>
<td><%= f.label :api_key, "API Key:" %></td>
<td><%= f.blabel :api_key, :en => "API Key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret_key, "Secret Key:" %></td>
<td><%= f.blabel :secret_key, :en => "Secret Key" %></td>
<td>
<%= f.text_field :secret_key %>
</td>

View File

@ -1,22 +1,21 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to <a href="http://www.scribd.com/developers">sign up for a Scribd API Account</a>.
Make a note of your API key and API secret. These are available from
"Settings -> API" in your profile after creation.
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :scribd_url => 'http://www.scribd.com/developers')
You will need to [sign up for a Scribd API Account](%{scribd_url}).
Make a note of your API key and API secret. These are available from
"Settings -> API" in your profile after creation.
TEXT
%></td>
</tr>
<tr>
<td><%= f.label :api_key, "API key:" %></td>
<td><%= f.blabel :api_key, :en => "API key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret_key, "API secret:" %></td>
<td><%= f.blabel :secret_key, :en => "API secret" %></td>
<td>
<%= f.text_field :secret_key %>
</td>

View File

@ -1,15 +1,15 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td><%= f.label :parallelism, "Number of job processors to use to process SIS imports in parallel:" %></td>
<td><%= f.blabel :parallelism, :en => "Number of job processors to use to process SIS imports in parallel" %></td>
<td><%= f.text_field :parallelism %></td>
</tr>
<tr>
<td><%= f.label :minimum_rows_for_parallel, "Minimum rows in a SIS import before using parallel processing:" %></td>
<td><%= f.blabel :minimum_rows_for_parallel, :en => "Minimum rows in a SIS import before using parallel processing" %></td>
<td><%= f.text_field :minimum_rows_for_parallel %></td>
</tr>
<tr>
<td><%= f.label :queue_for_parallel_jobs, "Job queue to use for parallel jobs (blank for default):" %></td>
<td><%= f.blabel :queue_for_parallel_jobs, :en => "Job queue to use for parallel jobs (blank for default)" %></td>
<td><%= f.text_field :queue_for_parallel_jobs %></td>
</tr>
</table>

View File

@ -2,20 +2,21 @@
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to register a <a href="http://tinychat.com/developer/dashboard">new app on Tinychat</a>.
Make a note of your app's Public Key and Secret Key values.
</p>
<p><%= mt(:description, <<-TEXT, :tinychat_url => 'http://tinychat.com/developer/dashboard')
You will need to register a [new app on Tinychat](%{tinychat_url}).
Make a note of your app's Public Key and Secret Key values.
TEXT
%></p>
</td>
</tr>
<tr>
<td><%= f.label :api_key, "Public Key:" %></td>
<td><%= f.blabel :api_key, :en => "Public Key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret_key, "Secret Key:" %></td>
<td><%= f.blabel :secret_key, :en => "Secret Key" %></td>
<td>
<%= f.text_field :secret_key %>
</td>

View File

@ -1,29 +1,26 @@
<% fields_for :settings, OpenObject.new(settings) do |f| %>
<table style="width: 500px;" class="formtable">
<tr>
<td colspan="2">
<p>
You will need to create a <a href="http://dev.twitter.com">new app on Twitter</a>.
Set the following configuration options to ensure your Twitter app
works correctly:
<ul>
<li><b>Application Type:</b> set to "Browser"</li>
<li><b>Callback URL:</b> set to <span class="nobr">https://&lt; domain &gt;/oauth_success?service=twitter</span></li>
<li><b>Default Access type:</b> set to "Read, Write & Private Message"</li>
<li>After you save your app, make a note of the Consumer key and Consumer secret</li>
</ul>
</p>
</td>
<td colspan="2"><%= mt(:description, <<-TEXT, :twitter_url => 'http://dev.twitter.com', :callback_url => raw('<span class="nobr">https://&lt; domain &gt;/oauth_success?service=twitter</span>'))
You will need to create a [new app on Twitter](%{twitter_url}).
Set the following configuration options to ensure your Twitter app
works correctly:
* **Application Type:** set to "Browser"
* **Callback URL:** set to %{callback_url}
* **Default Access type:** set to "Read, Write & Private Message"
* After you save your app, make a note of the Consumer key and Consumer secret
TEXT
%></td>
</tr>
<tr>
<td><%= f.label :api_key, "Consumer Key:" %></td>
<td><%= f.blabel :api_key, :en => "Consumer Key" %></td>
<td>
<%= f.text_field :api_key %>
</td>
</tr>
<tr>
<td><%= f.label :secret_key, "Consumer Secret:" %></td>
<td><%= f.blabel :secret_key, :en => "Consumer Secret" %></td>
<td>
<%= f.text_field :secret_key %>
</td>

View File

@ -1,8 +1,10 @@
I18n.scoped('plugins', function(I18n) {
$("form.edit_plugin_setting").live('submit', function() {
$(this).find("button").attr('disabled', true).filter(".save_button").text("Saving...");
$(this).find("button").attr('disabled', true).filter(".save_button").text(I18n.t('buttons.saving', "Saving..."));
});
$(document).ready(function() {
$(".disabled_checkbox").change(function() {
$("#settings .plugin_settings").showIf(!$(this).attr('checked'));
}).change();
});
});
})