Made Incentify installable app with option to control display
diff --git a/DonayIncentify/donayincentify/incentify.py b/DonayIncentify/donayincentify/incentify.py
index 6932f14..dbcfec7 100644
--- a/DonayIncentify/donayincentify/incentify.py
+++ b/DonayIncentify/donayincentify/incentify.py
@@ -15,7 +15,18 @@
# specific language governing permissions and limitations
# under the License.
-class Incentify(object):
+from allura.app import Application
+from allura.app import DefaultAdminController
+from allura.app import ConfigOption
+
+class IncentifyApp(Application):
+ tool_label = 'Incentify'
+ tool_description = 'Donay Incentify button for tickets'
+ default_mount_label = 'Incentify'
+ default_mount_point = 'incentify'
+ config_options = Application.config_options + [
+ ConfigOption('ShowIncentify', bool, True),
+ ]
template_path_rules = [
['>', 'Tickets'],
]
diff --git a/DonayIncentify/donayincentify/override/forgetracker/templates/tracker/ticket.html b/DonayIncentify/donayincentify/override/forgetracker/templates/tracker/ticket.html
index 7b295e0..b474e2e 100644
--- a/DonayIncentify/donayincentify/override/forgetracker/templates/tracker/ticket.html
+++ b/DonayIncentify/donayincentify/override/forgetracker/templates/tracker/ticket.html
@@ -32,13 +32,6 @@
{% block header %}#{{ticket.ticket_num}} {{ticket.summary}}{% if ticket.deleted %}<span> (deleted)</span>{% endif %}{% endblock %}
{% block actions %}
-<script type="text/javascript">
- incentify_type = 'allura';
- incentify_width = 728;
- incentify_height = 90;
- incentify_panel_type = 'html';
-</script>
-<script type="text/javascript" src="https://secure.donay.com/site/scripts/incentify.js" async></script>
<a href="{{ticket.url()}}feed.rss" title="Follow this Ticket"><b data-icon="{{g.icons['feed'].char}}" class="ico {{g.icons['feed'].css}}"></b></a>
{% if c.user and c.user != c.user.anonymous() %}
{{c.subscribe_form.display(value=subscribed, tool_subscribed=tool_subscribed, action='subscribe', style='icon')}}
@@ -148,6 +141,18 @@
{% if voting_enabled %}
{{ c.vote_form.display(artifact=ticket) }}
{% endif %}
+{% set incentify = c.project.app_instance('incentify') %}
+{% if incentify and incentify.config.options.get('ShowIncentify', True) %}
+<div id="incentify-content">
+ <script type="text/javascript">
+ incentify_type = 'allura';
+ incentify_width = 728;
+ incentify_height = 90;
+ incentify_panel_type = 'html';
+ </script>
+ <script type="text/javascript" src="https://secure.donay.com/site/scripts/incentify.js" async></script>
+</div>
+{% endif %}
<div id="ticket_content">
{{g.markdown.convert(ticket.description)|safe}}
{% if ticket.attachments %}
diff --git a/DonayIncentify/setup.py b/DonayIncentify/setup.py
index 8a69609..b0eb661 100644
--- a/DonayIncentify/setup.py
+++ b/DonayIncentify/setup.py
@@ -33,6 +33,9 @@
install_requires=['Allura', 'ForgeTracker', ],
entry_points="""
# -*- Entry points: -*-
+ [allura]
+ donayincentify = donayincentify.incentify:IncentifyApp
+
[allura.theme.override]
- donayincentify = donayincentify.incentify:Incentify
+ donayincentify = donayincentify.incentify:IncentifyApp
""",)