<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Editing Widgets in Developer Mode</title><link>https://community.telligent.com/community/11/w/developer-training/65067/editing-widgets-in-developer-mode</link><description /><dc:language>en-US</dc:language><generator>14.0.0.586 14</generator><item><title>Editing Widgets in Developer Mode</title><link>https://community.telligent.com/community/11/w/developer-training/65067/editing-widgets-in-developer-mode</link><pubDate>Wed, 05 Aug 2020 15:13:40 GMT</pubDate><guid isPermaLink="false">4aad5d55-fa6a-4e9c-b97f-3dc000ccb144</guid><dc:creator>Former Member</dc:creator><comments>https://community.telligent.com/community/11/w/developer-training/65067/editing-widgets-in-developer-mode#comments</comments><description>Current Revision posted to Developer Training by Former Member on 08/05/2020 15:13:40&lt;br /&gt;
&lt;p&gt;Understanding Developer Mode support requires familiarity with [[Widgets|widgets]], [[Working with Widget Studio|Widget Studio]], and [[Factory Default Widget Providers|Factory Default Widgets]].&lt;/p&gt;
&lt;p&gt;[toc]&lt;/p&gt;
&lt;h2&gt;&lt;a id="When_would_I_use_Developer_Mode" name="When_would_I_use_Developer_Mode"&gt;&lt;/a&gt;When would I use Developer Mode?&lt;/h2&gt;
&lt;p&gt;Developer mode is useful when working on Factory Default widgets within a team environment and it is beneficial to have file system access for source control management of widget development while still benefiting from editing directly in Widget Studio, including staging, preview and publish workflows, built-in documentation, and more. &lt;strong&gt;Developer mode should never be used in a production environment.&lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;&lt;a id="What_does_Developer_Mode_do" name="What_does_Developer_Mode_do"&gt;&lt;/a&gt;What does Developer Mode do?&lt;/h2&gt;
&lt;p&gt;Developer Mode is a site-wide local-development-only setting that transforms Verint Community into an IDE with the ability to edit [[Factory Default Widget Providers|Factory Default]] [[Widgets|widgets]] directly in the [[Centralized File Storage|Centralized File Storage]].&lt;/p&gt;
&lt;p&gt;Widgets created or edited in developer mode are still initially saved to staging. However, publishing widgets saves directly to Factory Defaults in CFS, either adding to or replacing existing default files.&lt;/p&gt;
&lt;p&gt;Since edited factory defaults have no ability to revert to their previous factory default version, Developer Mode &lt;em&gt;should never be used in production&lt;/em&gt;, as developers and administrators lose the ability to install, compare, and revert custom versions of widgets. To help prevent inadvertent enablement in production, developer mode requires access to the web.config and will not be honored in an environment with a production license.&lt;/p&gt;
&lt;p&gt;Developer mode also enables extra developer utilities within the Development area of the Administration UI.&lt;/p&gt;
&lt;h2&gt;&lt;a id="Using_Developer_Mode" name="Using_Developer_Mode"&gt;&lt;/a&gt;Using Developer Mode&lt;/h2&gt;
&lt;h3&gt;&lt;a id="Enabling_Developer_Mode" name="Enabling_Developer_Mode"&gt;&lt;/a&gt;Enabling Developer Mode&lt;/h3&gt;
&lt;p&gt;Developer mode can be enabled by setting &lt;code&gt;EnableDeveloperMode&lt;/code&gt; to true in &lt;code&gt;web.config&lt;/code&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;lt;add key=&amp;quot;EnableDeveloperMode&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;&lt;a id="What_widgets_are_editable" name="What_widgets_are_editable"&gt;&lt;/a&gt;What widgets are editable?&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, any factory default widget provided by a [[Factory Default Widget Providers|factory default provider]] within an &lt;strong&gt;assembly compiled in debug mode&lt;/strong&gt; is available for saving as a factory default. In this way, it is not possible to edit platform-provided factory defaults, but only those associated with local development efforts.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Creating_New_Widgets" name="Creating_New_Widgets"&gt;&lt;/a&gt;Creating New Widgets&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, creating new widgets requires a Widget ID and Factory Default Provider.&lt;/p&gt;
&lt;p&gt;&lt;a href="/cfs-file/__key/communityserver-wikis-components-files/00-00-00-12-83/6835.png"&gt;&lt;img style="border:1px solid #DDD;width:532px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/6835.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As factory default widgets are often used in context of [[api-documentation:IScriptablePlugin Plugin Type|IScriptablePlugin]] plugins, it is necessary to be explicit about the widget identifier. If an ID is not provided, one will be generated automatically.&lt;/p&gt;
&lt;p&gt;The list of available installed factory default providers includes only those within assemblies compiled in debug mode.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Importing_Widgets" name="Importing_Widgets"&gt;&lt;/a&gt;Importing Widgets&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, importing widgets also requires selection of a Factory Default Provider.&lt;/p&gt;
&lt;p&gt;&lt;a href="/cfs-file/__key/communityserver-wikis-components-files/00-00-00-12-83/6763.png"&gt;&lt;img style="border:1px solid #DDD;width:523px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/6763.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;&lt;a id="Staging_Comparing_and_Publishing" name="Staging_Comparing_and_Publishing"&gt;&lt;/a&gt;Staging, Comparing, and Publishing&lt;/h3&gt;
&lt;p&gt;Editor views in Widget Studio already identify the state of the widget: default, custom, or customized default, themed or not themed, and staged or not staged.&lt;/p&gt;
&lt;p&gt;In Developer Mode, these same views identify that new and imported widgets currently in staging are also of type default, rather than custom or customized default. As such, it is only possible to compare staged with published factory default versions, as developer mode has no recognition of custom or customized default widget versions.&lt;/p&gt;
&lt;p&gt;&lt;img style="border:1px solid #DDD;width:496px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/3730.png" /&gt;&lt;/p&gt;
&lt;h2&gt;&lt;a id="Related_Topics" name="Related_Topics"&gt;&lt;/a&gt;Related Topics&lt;/h2&gt;
&lt;h3&gt;&lt;a id="Managing_Widget_Source_and_Distribution" name="Managing_Widget_Source_and_Distribution"&gt;&lt;/a&gt;[[Managing Widget Source and Distribution]]&lt;/h3&gt;
&lt;p&gt;Best practices when working with factory default providers, developer mode, and team-based widget development.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Factory_Default_Widget_Providers" name="Factory_Default_Widget_Providers"&gt;&lt;/a&gt;[[Factory Default Widget Providers]]&lt;/h3&gt;
&lt;p&gt;Understanding factory default provider plugins&lt;/p&gt;
&lt;h3&gt;&lt;a id="Working_with_Widget_Studio" name="Working_with_Widget_Studio"&gt;&lt;/a&gt;[[Working with Widget Studio]]&lt;/h3&gt;
&lt;p&gt;Details of using Widget Studio&lt;/p&gt;
&lt;h3&gt;&lt;a id="Widgets" name="Widgets"&gt;&lt;/a&gt;[[Widgets]]&lt;/h3&gt;
&lt;p&gt;Basic overview of Widgets in Verint Community&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Editing Widgets in Developer Mode</title><link>https://community.telligent.com/community/11/w/developer-training/65067/editing-widgets-in-developer-mode/revision/1</link><pubDate>Thu, 20 Jun 2019 20:13:47 GMT</pubDate><guid isPermaLink="false">4aad5d55-fa6a-4e9c-b97f-3dc000ccb144</guid><dc:creator>Ben Tiedt</dc:creator><comments>https://community.telligent.com/community/11/w/developer-training/65067/editing-widgets-in-developer-mode#comments</comments><description>Revision 1 posted to Developer Training by Ben Tiedt on 06/20/2019 20:13:47&lt;br /&gt;
&lt;p&gt;Understanding Developer Mode support requires familiarity with [[Widgets|widgets]], [[Working with Widget Studio|Widget Studio]], and [[Factory Default Widget Providers|Factory Default Widgets]].&lt;/p&gt;
&lt;p&gt;[toc]&lt;/p&gt;
&lt;h2&gt;&lt;a id="When_would_I_use_Developer_Mode" name="When_would_I_use_Developer_Mode"&gt;&lt;/a&gt;When would I use Developer Mode?&lt;/h2&gt;
&lt;p&gt;Developer mode is useful when working on Factory Default widgets within a team environment and it is beneficial to have file system access for source control management of widget development while still benefiting from editing directly in Widget Studio, including staging, preview and publish workflows, built-in documentation, and more. &lt;strong&gt;Developer mode should never be used in a production environment.&lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;&lt;a id="What_does_Developer_Mode_do" name="What_does_Developer_Mode_do"&gt;&lt;/a&gt;What does Developer Mode do?&lt;/h2&gt;
&lt;p&gt;Developer Mode is a site-wide local-development-only setting that transforms Telligent Community into an IDE with the ability to edit [[Factory Default Widget Providers|Factory Default]] [[Widgets|widgets]] directly in the [[Centralized File Storage|Centralized File Storage]].&lt;/p&gt;
&lt;p&gt;Widgets created or edited in developer mode are still initially saved to staging. However, publishing widgets saves directly to Factory Defaults in CFS, either adding to or replacing existing default files.&lt;/p&gt;
&lt;p&gt;Since edited factory defaults have no ability to revert to their previous factory default version, Developer Mode &lt;em&gt;should never be used in production&lt;/em&gt;, as developers and administrators lose the ability to install, compare, and revert custom versions of widgets. To help prevent inadvertent enablement in production, developer mode requires access to the web.config and will not be honored in an environment with a production license.&lt;/p&gt;
&lt;p&gt;Developer mode also enables extra developer utilities within the Development area of the Administration UI.&lt;/p&gt;
&lt;h2&gt;&lt;a id="Using_Developer_Mode" name="Using_Developer_Mode"&gt;&lt;/a&gt;Using Developer Mode&lt;/h2&gt;
&lt;h3&gt;&lt;a id="Enabling_Developer_Mode" name="Enabling_Developer_Mode"&gt;&lt;/a&gt;Enabling Developer Mode&lt;/h3&gt;
&lt;p&gt;Developer mode can be enabled by setting &lt;code&gt;EnableDeveloperMode&lt;/code&gt; to true in &lt;code&gt;web.config&lt;/code&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;lt;add key=&amp;quot;EnableDeveloperMode&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;&lt;a id="What_widgets_are_editable" name="What_widgets_are_editable"&gt;&lt;/a&gt;What widgets are editable?&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, any factory default widget provided by a [[Factory Default Widget Providers|factory default provider]] within an &lt;strong&gt;assembly compiled in debug mode&lt;/strong&gt; is available for saving as a factory default. In this way, it is not possible to edit platform-provided factory defaults, but only those associated with local development efforts.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Creating_New_Widgets" name="Creating_New_Widgets"&gt;&lt;/a&gt;Creating New Widgets&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, creating new widgets requires a Widget ID and Factory Default Provider.&lt;/p&gt;
&lt;p&gt;&lt;a href="/cfs-file/__key/communityserver-wikis-components-files/00-00-00-12-83/6835.png"&gt;&lt;img style="width:532px;border:1px solid #DDD;" src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/6835.png" alt=" " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As factory default widgets are often used in context of [[api-documentation:IScriptablePlugin Plugin Type|IScriptablePlugin]] plugins, it is necessary to be explicit about the widget identifier. If an ID is not provided, one will be generated automatically.&lt;/p&gt;
&lt;p&gt;The list of available installed factory default providers includes only those within assemblies compiled in debug mode.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Importing_Widgets" name="Importing_Widgets"&gt;&lt;/a&gt;Importing Widgets&lt;/h3&gt;
&lt;p&gt;With developer mode enabled, importing widgets also requires selection of a Factory Default Provider.&lt;/p&gt;
&lt;p&gt;&lt;a href="/cfs-file/__key/communityserver-wikis-components-files/00-00-00-12-83/6763.png"&gt;&lt;img style="width:523px;border:1px solid #DDD;" src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/6763.png" alt=" " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;&lt;a id="Staging_Comparing_and_Publishing" name="Staging_Comparing_and_Publishing"&gt;&lt;/a&gt;Staging, Comparing, and Publishing&lt;/h3&gt;
&lt;p&gt;Editor views in Widget Studio already identify the state of the widget: default, custom, or customized default, themed or not themed, and staged or not staged.&lt;/p&gt;
&lt;p&gt;In Developer Mode, these same views identify that new and imported widgets currently in staging are also of type default, rather than custom or customized default. As such, it is only possible to compare staged with published factory default versions, as developer mode has no recognition of custom or customized default widget versions.&lt;/p&gt;
&lt;p&gt;&lt;img style="width:496px;border:1px solid #DDD;" src="/resized-image/__size/640x480/__key/communityserver-wikis-components-files/00-00-00-12-83/3730.png" alt=" " /&gt;&lt;/p&gt;
&lt;h2&gt;&lt;a id="Related_Topics" name="Related_Topics"&gt;&lt;/a&gt;Related Topics&lt;/h2&gt;
&lt;h3&gt;&lt;a id="Managing_Widget_Source_and_Distribution" name="Managing_Widget_Source_and_Distribution"&gt;&lt;/a&gt;[[Managing Widget Source and Distribution]]&lt;/h3&gt;
&lt;p&gt;Best practices when working with factory default providers, developer mode, and team-based widget development.&lt;/p&gt;
&lt;h3&gt;&lt;a id="Factory_Default_Widget_Providers" name="Factory_Default_Widget_Providers"&gt;&lt;/a&gt;[[Factory Default Widget Providers]]&lt;/h3&gt;
&lt;p&gt;Understanding factory default provider plugins&lt;/p&gt;
&lt;h3&gt;&lt;a id="Working_with_Widget_Studio" name="Working_with_Widget_Studio"&gt;&lt;/a&gt;[[Working with Widget Studio]]&lt;/h3&gt;
&lt;p&gt;Details of using Widget Studio&lt;/p&gt;
&lt;h3&gt;&lt;a id="Widgets" name="Widgets"&gt;&lt;/a&gt;[[Widgets]]&lt;/h3&gt;
&lt;p&gt;Basic overview of Widgets in Telligent Community&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item></channel></rss>