Last active
November 9, 2020 16:32
-
-
Save fanf/2edf0757d5ec1c249f41c2afffb73d3c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6.1 | |
<a href="javascript://" onclick="lift.ajax("F1181437850057OOOOSP=true", null, null, null); return false;"><span class="treeActiveTechniqueName bsTooltip " data-toggle="tooltip" data-placement="top" data-html="true" title="
 <h4>Package manager settings (RUG/YaST/ZMD)</h4>
 <div class="tooltip-content">
 <p>This technique configures the RUG and YaST package manager using Novell's ZMD.</p>
 <p>This Technique is only compatible with <b>Classic</b> agent.</p>
 
 </div>"><i class="fa fa-gear tree-icon"></i>Package manager settings (RUG/YaST/ZMD)</span></a> | |
6.2 | |
<a href="javascript://" onclick="lift.ajax("F10805191239355LRKGG=true", null, null, null); return false;"><span class="treeActiveTechniqueName bsTooltip " data-toggle="tooltip" data-placement="top" data-html="true" title="
 <h4>Package manager settings (RUG/YaST/ZMD)</h4>
 <div class="tooltip-content">
 <p>This technique configures the RUG and YaST package manager using Novell's ZMD.</p>
 <p>This Technique is only compatible with <b>Classic</b> agent.</p>
 
 </div>"><i class="fa fa-gear tree-icon"></i>Package manager settings (RUG/YaST/ZMD)</span><span class="btn btn-success btn-xs create" style="opacity: 0;" onclick="event.preventDefault();event.stopPropagation();jQuery('#'+"policyConfiguration").replaceWith("\u000a <div id=\"policyConfiguration\">\u000a \u000a <link href=\"/rudder/cache-6.2.0~beta2-SNAPSHOT/style/rudder/rudder-filemanager.css\" rel=\"stylesheet\">\u000a <script src=\"/rudder/cache-6.2.0~beta2-SNAPSHOT/javascript/rudder/angular/fileManager.js\"></script>\u000a <script type=\"text/javascript\" id=\"angular-passwordForm\" src=\"/rudder/cache-6.2.0~beta2-SNAPSHOT/javascript/rudder/angular/passwordForm.js\"></script>\u000a <script type=\"text/javascript\" id=\"angular-textForm\" src=\"/rudder/cache-6.2.0~beta2-SNAPSHOT/javascript/rudder/angular/textForm.js\"></script>\u000a <script type=\"text/javascript\" src=\"/rudder/cache-6.2.0~beta2-SNAPSHOT/javascript/rudder/angular/tags.js\"></script>\u000a <form id=\"F10805191239342CGJW2\" action=\"javascript://\" onsubmit=\"lift.ajax(jQuery(\u0027#\u0027+&quot;F10805191239342CGJW2&quot;).serialize(), null, null, &quot;javascript&quot;);return false;\"><div id=\"editForm\">\u000a <div class=\"main-header\">\u000a <div class=\"header-title\">\u000a <h1>\u000a <i class=\"title-icon fa fa-file-text\"></i>\u000a <span id=\"info-title\">Directive <b id=\"directiveTitle\"><span class=\"\">Package manager settings (RUG/YaST/ZMD)</span></b></span>\u000a </h1>\u000a \u000a <div class=\"header-buttons\">\u000a <input id=\"removeAction\" name=\"zF1080519123886NKHBYS\" type=\"submit\" class=\"btn btn-danger\" value=\"Delete\" onclick=\"lift.setUriSuffix(\u0027zF1080519123886NKHBYS=_\u0027); return true;\">\u000a <input id=\"desactivateAction\" name=\"zF10805191238875DFK3Z\" type=\"submit\" class=\"btn btn-default\" value=\"disable\" onclick=\"lift.setUriSuffix(\u0027zF10805191238875DFK3Z=_\u0027); return true;\">\u000a <button id=\"clone\" onclick=\"lift.ajax(&quot;F1080519123888MMNCAT=true&quot;, null, null, null); return false;\" class=\"btn btn-default\" type=\"button\">Clone</button>\u000a <input name=\"zF1080519123889CQZWAO\" type=\"submit\" value=\"Save\" onclick=\"lift.setUriSuffix(\u0027zF1080519123889CQZWAO=_\u0027); return true;\" id=\"policyConfigurationSave\" class=\"btn btn-success\">\u000a </div>\u000a \u000a </div>\u000a \u000a </div>\u000a <div id=\"navbar-scrollspy\" class=\"main-navbar\">\u000a <ul class=\"ui-tabs-nav nav nav-tabs\">\u000a <li role=\"presentation\" class=\"ui-tabs-tab\">\u000a <a onclick=\"navScroll(event, \u0027#directiveInfo\u0027, \u0027.main-details\u0027)\" href=\"#directiveInfo\">\u000a Information\u000a </a>\u000a </li>\u000a <li role=\"presentation\" class=\"ui-tabs-tab\">\u000a <a onclick=\"navScroll(event, \u0027#parametersTitle\u0027, \u0027.main-details\u0027)\" href=\"#parametersTitle\">\u000a Parameters\u000a </a>\u000a </li>\u000a <li role=\"presentation\" class=\"ui-tabs-tab\">\u000a <a onclick=\"navScroll(event, \u0027#directiveRulesTabTitle\u0027, \u0027.main-details\u0027)\" href=\"#directiveRulesTabTitle\">\u000a Target Rules\u000a </a>\u000a </li>\u000a </ul>\u000a </div>\u000a \u000a \u000a <div class=\"main-details\">\u000a <div class=\"callout callout-warning hidden\" role=\"alert\" id=\"deprecation-warning\">\u000a <div class=\"marker\">\u000a <span class=\"glyphicon glyphicon-info-sign\"></span>\u000a </div>\u000a <h4>Technique version deprecated</h4>\u000a <div>This Directive uses a version of this Technique that is deprecated: <span id=\"deprecation-message\"></span>.<br>\u000a <span id=\"migrate-button\"></span>\u000a </div>\u000a </div>\u000a \u000a \u000a \u000a\u000a <div id=\"directiveInfo\">\u000a <div id=\"nameField\" class=\"row wbBaseField form-group \">\u000a <label for=\"F1080519123890AX0HJH\" class=\"col-xs-12 wbBaseFieldLabel\"><b>Name</b> </label>\u000a <div class=\"col-xs-12\">\u000a <input name=\"F1080519123891010QJP\" type=\"text\" value=\"Package manager settings (RUG/YaST/ZMD)\" id=\"F1080519123890AX0HJH\" class=\"form-control\">\u000a \u000a \u000a </div>\u000a </div>\u000a <div id=\"tagField\">\u000a <div id=\"directiveEditTagsApp\">\u000a <div ng-controller=\"tagsController\" ng-cloak=\"\" id=\"directiveTags\">\u000a <label class=\"col-xs-12 row\" for=\"newTagKey\"><span class=\"text-fit\">Tags</span></label>\u000a <div ng-class=\"{\u0027noTags\u0027:tags.length==0}\" class=\"tags-container form-group row col-xs-12\">\u000a <div ng-class=\"{\u0027match\u0027: tagMatch(tag)}\" ng-mouseleave=\"showDelete[$index\u005d = false\" ng-mouseenter=\"showDelete[$index\u005d = true\" ng-repeat=\"tag in tags track by $index\" role=\"group\" class=\"btn-group btn-group-xs\">\u000a <button ng-click=\"toggleTag(tag)\" class=\"btn btn-default tags-label\" type=\"button\">\u000a <i class=\"fa fa-tag\"></i>\u000a <span class=\"tag-key\">{{tag.key}}</span>\u000a <span class=\"tag-separator\">=</span>\u000a <span class=\"tag-value\">{{tag.value}}</span>\u000a <span class=\"fa fa-search-plus\"></span>\u000a </button>\u000a <button ng-click=\"removeTag($index)\" class=\"btn btn-default\" type=\"button\" ng-if=\"isEditForm && showDelete[$index\u005d\"><span class=\"fa fa-times text-danger\"></span></button>\u000a </div>\u000a </div>\u000a \u000a <div class=\"form-group\">\u000a <div class=\"input-group col-xs-6\">\u000a \u000a <div override-suggestions=\"true\" input-changed=\"updateTag\" match-class=\"highlight\" input-class=\"form-control input-sm input-key\" title-field=\"value\" remote-url-data-field=\"data\" remote-url=\"{{contextPath}}/secure/api/completion/tags/{{kind}}/key/\" selected-object=\"selectTag\" pause=\"500\" maxlength=\"100\" minlength=\"1\" placeholder=\"key\" angucomplete-alt=\"\" id=\"newTagKey\">\u000a </div>\u000a <span class=\"input-group-addon addon-json\">=</span>\u000a \u000a <div override-suggestions=\"true\" input-changed=\"updateValue\" match-class=\"highlight\" input-class=\"form-control input-sm input-value\" title-field=\"value\" remote-url-data-field=\"data\" remote-url=\"{{contextPath}}/secure/api/completion/tags/{{kind}}/value/{{newTag.key}}/\" selected-object=\"selectValue\" pause=\"500\" maxlength=\"100\" minlength=\"1\" placeholder=\"value\" angucomplete-alt=\"\" id=\"newTagValue\">\u000a </div>\u000a <span class=\"input-group-btn\">\u000a <button ng-click=\"addTag()\" ng-disabled=\"newTag === undefined || newTag.key.length === 0 || newTag.value.length === 0\" class=\"btn btn-success btn-sm\" type=\"button\"><span class=\"fa fa-plus\"></span></button>\u000a </span>\u000a </div>\u000a </div>\u000a\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F1080519123892GWINYD\"></textarea></div>\u000a </div>\u000a</div>\u000a <div id=\"shortDescriptionField\" class=\"row wbBaseField form-group \">\u000a <label for=\"F1080519123893M3A5A1\" class=\"col-xs-12 wbBaseFieldLabel\"><span class=\"text-fit\">Short description</span> </label>\u000a <div class=\"col-xs-12\">\u000a <input name=\"F1080519123894LW0AXF\" type=\"text\" value=\"\" id=\"F1080519123893M3A5A1\" class=\"form-control\">\u000a \u000a \u000a </div>\u000a </div>\u000a <div id=\"longDescriptionFieldMarkdownContainer\">\u000a <label class=\"wbBaseFieldLabel\"><span class=\"text-fit\">Description</span>\u000a <i onclick=\"toggleMarkdownEditor(\u0027longDescriptionField\u0027)\" onmouseout=\"toggleOpacity(this)\" title=\"Edit description\" onmouseenter=\"toggleOpacity(this)\" class=\"fa fa-pencil text-primary cursorPointer half-opacity edit-description-icon\"></i>\u000a </label>\u000a <div class=\"markdown\">\u000a <div id=\"longDescriptionFieldMarkdown\"></div>\u000a <p class=\"nodisplay half-opacity\" id=\"longDescriptionFieldMarkdownEmpty\">No description defined, click on <i onclick=\"toggleMarkdownEditor(\u0027longDescriptionField\u0027)\" onmouseout=\"toggleOpacity(this)\" onmouseenter=\"toggleOpacity(this)\" class=\"fa fa-pencil text-primary cursorPointer half-opacity\"></i> to edit </p>\u000a </div>\u000a </div>\u000a <div class=\"nodisplay\" id=\"longDescriptionFieldContainer\">\u000a <div id=\"longDescriptionField\" class=\"row wbBaseField form-group col-xs-6 row\">\u000a <label for=\"F1080519123895EBVZUW\" class=\"row col-xs-12 wbBaseFieldLabel\"><span class=\"text-fit\">Description</span> <i class=\"fa fa-check text-success cursorPointer half-opacity\" onmouseenter=\"toggleOpacity(this)\" title=\"Valid description\" onmouseout=\"toggleOpacity(this)\" onclick=\"toggleMarkdownEditor(\u0027longDescriptionField\u0027)\"></i> <i class=\"fa fa-eye-slash text-primary cursorPointer half-opacity\" onmouseenter=\"toggleOpacity(this)\" title=\"Show/hide preview\" onmouseout=\"toggleOpacity(this)\" onclick=\"togglePreview(this, \u0027longDescriptionField\u0027)\"></i></label>\u000a <div class=\"row col-xs-12\">\u000a <textarea name=\"F1080519123896FLBAGU\" id=\"F1080519123895EBVZUW\" class=\"form-control\" rows=\"15\"></textarea>\u000a \u000a \u000a </div>\u000a </div>\u000a <div class=\"wbBaseField col-xs-6 row\" id=\"longDescriptionFieldMarkdownPreviewContainer\">\u000a <label class=\"col-xs-12 row wbBaseFieldLabel\"><span class=\"text-fit\">Preview</span></label>\u000a <div class=\" col-xs-12 row markdown\" id=\"longDescriptionFieldPreviewMarkdown\"></div>\u000a </div>\u000a </div>\u000a <div>\u000a <label class=\"wbBaseFieldLabel\"><span class=\"text-fit\">Technique documentation</span></label>\u000a <div class=\"markdown\">\u000a <div id=\"techniqueDescription\">This technique configures the RUG and YaST package manager using Novell\u0027s ZMD.</div>\u000a </div>\u000a </div>\u000a <div id=\"priority\" class=\"row wbBaseField form-group \">\u000a <label for=\"F10805191238972F4BBH\" class=\"col-xs-12 wbBaseFieldLabel\"><div>\u000a <b>Priority</b>\u000a <span>\u000a <span tooltipid=\"priorityId\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span>\u000a <div class=\"tooltipContent\" id=\"priorityId\">\u000a <h4> Priority </h4>\u000a <p>Priority has two uses depending if the technique from which that directive is derived is <b>Unique</b> or not.</p>\u000a <p>Unique directives can be applied only once (for example Time Settings), so only the highest priority will be applied.</p>\u000a <p>For <b>non-unique</b> directives, priority is used to choose the order of the directive application when applicable. The\u000a highest priority directive comes first.</p>\u000a <p>Note that overriding variable definitions are the ones coming last and so, the used value will be the one with the lowest priority.</p>\u000a <p>More information is available in <a href=\"https://docs.rudder.io/reference/current/usage/advanced_configuration_management.html#_special_use_case_overriding_generic_variable_definition\">documentation about ordering directive application</a>.</p>\u000a </div>\u000a </span>\u000a </div> </label>\u000a <div class=\"col-xs-12\">\u000a <select name=\"F1080519123898XG4F4V\" id=\"F10805191238972F4BBH\" class=\"form-control\"><option value=\"SYGMBO2Z10UT0QOP10VW\">Highest</option><option value=\"HWIEBQHR5OUALIIEPX5Q\">+4</option><option value=\"SVQBNQ5QINENZGUEBNUP\">+3</option><option value=\"R50YZMDETMPKJKDNJ0U1\">+2</option><option value=\"D4UFA23UR311MBKEF1O0\">+1</option><option selected=\"selected\" value=\"SEPZTFBJKMSYG2XOYRB0\">Default</option><option value=\"UVWRDTPUALLOP5PUK0TM\">-1</option><option value=\"KX2PDQHDPTZ1MNFM3NUB\">-2</option><option value=\"AZSQVIYVEDXYFW0GZ3RQ\">-3</option><option value=\"SZNRG5R0L3ZQQ2JHCL3U\">-4</option><option value=\"GBVX2AFYLIH3U34OENNG\">Lowest</option></select>\u000a \u000a \u000a </div>\u000a </div>\u000a <div class=\"wbBaseField form-group\">\u000a <label id=\"policyModesLabel\" class=\"wbBaseFieldLabel\">\u000a <b>Policy mode</b>\u000a <span>\u000a <span tooltipid=\"policyModeId\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span>\u000a <div class=\"tooltipContent\" id=\"policyModeId\">\u000a <h4>Policy mode</h4>\u000a <p>Configuration rules in Rudder can operate in one of two modes:</p>\u000a <ol>\u000a <li><b>Audit</b>: the agent will examine configurations and report any differences, but will not make any changes</li>\u000a <li><b>Enforce</b>: the agent will make changes to fix any configurations that differ from your directives</li>\u000a </ol>\u000a <p>\u000a By default all nodes and all directives operate in the global default mode defined in\u000a <b> Settings</b>, which is currently <b>enforce</b>.\u000a </p>\u000a <div>\u000a You may override the agent policy mode on this directive.\u000a If set to <b>Audit</b> this directive will never be enforced.\u000a If set to <b>Enforce</b> this directive will appply necessary changes except on Nodes with a <b>Verify</b> override setting.\u000a </div>\u000a </div>\u000a </span>\u000a </label>\u000a <div id=\"policyModes\" class=\"row wbBaseField form-group \">\u000a <label for=\"F10805191238995GPQQX\" class=\"hidden wbBaseFieldLabel\"><span class=\"text-fit\">Policy Mode</span> </label>\u000a <div class=\"col-xs-12\">\u000a <div id=\"F10805191238995GPQQX\" class=\"checkbox-group policymode-group\">\u000a <label class=\"radio-inline\">\u000a <input checked=\"checked\" class=\"radio\" type=\"radio\" name=\"F1080519123900CL3SHD\" value=\"global\">\u000a <span class=\"radioTextLabel\"><span class=\"global-btn\">Global mode (<span class=\"global-mode enforce\"></span>)</span></span>\u000a </label><label class=\"radio-inline\">\u000a <input class=\"radio\" type=\"radio\" name=\"F1080519123900CL3SHD\" value=\"audit\">\u000a <span class=\"radioTextLabel\"><span class=\"audit-btn\">Audit</span></span>\u000a </label><label class=\"radio-inline\">\u000a <input class=\"radio\" type=\"radio\" name=\"F1080519123900CL3SHD\" value=\"enforce\">\u000a <span class=\"radioTextLabel\"><span class=\"enforce-btn\">Enforce</span></span>\u000a </label>\u000a </div>\u000a \u000a \u000a </div>\u000a </div>\u000a </div>\u000a <div class=\"row wbBaseField form-group\" id=\"version\">\u000a <label for=\"version\" class=\"col-xs-12 wbBaseFieldLabel\"><span class=\"text-fit\"><b>Technique version</b></span></label>\u000a <div class=\"col-xs-12\"><input name=\"version\" class=\"form-control\" readonly=\"\" value=\"3.0\"></div>\u000a </div>\u000a <div id=\"showTechnical\" class=\"directiveTechnicalInfo\"><button type=\"button\" class=\"btn btn-technical-details btn-sm btn-primary\" onclick=\"$(\u0027#technicalDetails\u0027).toggle(400);$(this).toggleClass(\u0027opened\u0027);\">Technical Details</button></div>\u000a <div class=\"well\" style=\"display:none\" id=\"technicalDetails\">\u000a\u000a <table>\u000a <tbody><tr>\u000a <td><label>Directive ID:</label></td>\u000a <td id=\"directiveID\">9e3f2dfb-9b31-467f-97ea-81e7d0924e22</td>\u000a </tr>\u000a <tr>\u000a <td><label>Technique ID:</label></td>\u000a <td id=\"techniqueID\">zmdPackageManagerSettings</td>\u000a </tr>\u000a <tr>\u000a <td><label>Technique name:</label></td>\u000a <td id=\"techniqueName\"><a href=\"/rudder/secure/administration/techniqueLibraryManagement/zmdPackageManagerSettings\">\u000a Package manager settings (RUG/YaST/ZMD) version 3.0\u000a </a></td>\u000a </tr>\u000a <tr>\u000a <td><label>Technique unicity:</label></td>\u000a <td id=\"isSingle\"><span>\u000a Multi instance: Several Directives based on this Technique can be applied on any given node\u000a </span></td>\u000a </tr>\u000a </tbody></table>\u000a </div>\u000a </div>\u000a\u000a <h2 class=\"title-tab\" id=\"parametersTitle\">Parameters</h2>\u000a <div id=\"parameters\" class=\"variableDefinition\">\u000a <table class=\"directiveVarDef\">\u000a <tr><td colspan=\"3\">\u000a <div id=\"F1080519123914XUOYCW\" class=\"sectionFieldset foldableSection unfoldedSection\">\u000a <div class=\"section-title\" onClick=\"F1080519123915UPGO5Z()\">Section: General settings</div>\u000a <table class=\"directiveSectionDef\">\u000a <tr>\u000a <td colspan=\"2\">\u000a <span><b>Security level</b> <span tooltipid=\"F1080519123904CVTVKF\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span><div class=\"tooltipContent\" id=\"F1080519123904CVTVKF\">This option defines which component of a repository is used as a trusted reference for the packages. Signature checks the package against the repository PGP key and Checksum only checks the package integrity. None installs the packages blindly without checking them.</div> </span>\u000a </td>\u000a <td class=\"directiveVarValue\"><select name=\"F1080519123903DK0XXH\"><option value=\"signature\">Signature</option><option value=\"checksum\">Checksum</option><option value=\"none\">Nothing</option><option selected=\"selected\" value=\"dontchange\">Don\u0027t change</option></select></td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span>Proxy URL <span tooltipid=\"F108051912390744SYEK\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span><div class=\"tooltipContent\" id=\"F108051912390744SYEK\">The URL should be in the following format: http://[user:password@\u005dserver[:port\u005d/</div> <span> - <small class=\"greyscala\">Optional</small></span></span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F10805191239052S2ZRV\" class=\"directive-input-group\">\u000a <div id=\"F10805191239052S2ZRV-controller\" ng-controller=\"textController\" class=\"input-group input-group-sm text-section col-xs-12\">\u000a <div ng-cloak=\"\" ng-show=\"feature\" class=\"input-group-btn\">\u000a <button type=\"button\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\">{{prefixName()}} <span class=\"caret\"></span></button>\u000a <ul class=\"dropdown-menu\">\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027\u0027\">Text</a></li>\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027evaljs:\u0027\">JS</a></li>\u000a </ul>\u000a </div>\u000a <input type=\"text\" ng-model=\"current.value\" class=\"form-control monospace-font\">\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F1080519123906I351CU\"></textarea></div>\u000a </div>\u000a</td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span>Proxy username <span tooltipid=\"F1080519123910KZ0G5Z\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span><div class=\"tooltipContent\" id=\"F1080519123910KZ0G5Z\">This should be the username used to connect to the proxy, if required</div> <span> - <small class=\"greyscala\">Optional</small></span></span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F1080519123908HHEGMH\" class=\"directive-input-group\">\u000a <div id=\"F1080519123908HHEGMH-controller\" ng-controller=\"textController\" class=\"input-group input-group-sm text-section col-xs-12\">\u000a <div ng-cloak=\"\" ng-show=\"feature\" class=\"input-group-btn\">\u000a <button type=\"button\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\">{{prefixName()}} <span class=\"caret\"></span></button>\u000a <ul class=\"dropdown-menu\">\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027\u0027\">Text</a></li>\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027evaljs:\u0027\">JS</a></li>\u000a </ul>\u000a </div>\u000a <input type=\"text\" ng-model=\"current.value\" class=\"form-control monospace-font\">\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F1080519123909QWH2YQ\"></textarea></div>\u000a </div>\u000a</td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span>Proxy password <span tooltipid=\"F1080519123913ZT14GO\" class=\"ruddericon tooltipable glyphicon glyphicon-question-sign\" title=\"\"></span><div class=\"tooltipContent\" id=\"F1080519123913ZT14GO\">This should be the password used to connect to the proxy, if required</div> <span> - <small class=\"greyscala\">Optional</small></span></span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F1080519123911A1JVJK\" class=\"password-app\">\u000a <div id=\"F1080519123911A1JVJK-controller\" ng-cloak=\"\" ng-controller=\"passwordController\" class=\"password-section\">\u000a <div ng-if=\"displayCurrent()\" class=\"current-password padding-form\">\u000a <div class=\"form-group row is-passwd\" ng-if=\"! current.isScript\">\u000a <label class=\"control-label\">Current password <small style=\"color: #999\">- {{displayCurrentHash()}}</small></label>\u000a <div class=\"input-group col-xs-12\">\u000a <input ng-value=\"displayedPass\" class=\"form-control toggle-type\" placeholder=\"\" readonly=\"\" ng-if=\"current.show\" type=\"text\">\u000a <input placeholder=\"\" ng-model=\"displayedPass\" class=\"form-control toggle-type animate-show\" readonly=\"\" type=\"password\" ng-hide=\"current.show\">\u000a <span class=\"input-group-btn\">\u000a <button aria-expanded=\"false\" aria-haspopup=\"true\" ng-if=\"otherPasswords !== undefined\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\" type=\"button\">\u000a <span class=\"caret\"></span><span class=\"sr-only\">Toggle Dropdown</span>\u000a </button>\u000a <ul ng-if=\"otherPasswords !== undefined\" class=\"dropdown-menu dropdown-menu-right\">\u000a <li><a ng-click=\"changeDisplayPass(current.password)\">Default</a></li>\u000a <li ng-repeat=\"(name, password) in otherPasswords\">\u000a <a ng-click=\"changeDisplayPass(password)\">{{name}}</a></li>\u000a </ul>\u000a <button class=\"btn btn-default reveal-password\" ng-click=\"current.show = ! current.show\" type=\"button\">\u000a <span class=\"glyphicon \" ng-class=\"current.show ? \u0027glyphicon-eye-close\u0027 : \u0027glyphicon-eye-open\u0027\"></span>\u000a </button> \u000a <button ng-click=\"changeAction(\u0027change\u0027)\" ng-if=\"action !== \u0027change\u0027\" class=\"btn btn-info\" type=\"button\">Change</button>\u000a <button ng-click=\"changeAction(\u0027keep\u0027)\" ng-if=\"action === \u0027change\u0027\" class=\"btn btn-success\" type=\"button\">Revert</button>\u000a <button ng-if=\"canBeDeleted\" ng-click=\"changeAction(\u0027delete\u0027)\" class=\"btn btn-danger\" type=\"button\">Delete</button>\u000a </span>\u000a </div>\u000a </div>\u000a <div>\u000a <div ng-if=\"current.isScript\" class=\"form-group is-script\">\u000a <label class=\"control-label\">Script to compute passwords</label>\u000a <span class=\"btn-group\">\u000a <button ng-click=\"changeAction(\u0027change\u0027)\" ng-if=\"action !== \u0027change\u0027\" class=\"btn btn-info\" type=\"button\">Change</button>\u000a <button ng-click=\"changeAction(\u0027keep\u0027)\" ng-if=\"action === \u0027change\u0027\" class=\"btn btn-success\" type=\"button\">Revert</button>\u000a <button ng-click=\"changeAction(\u0027delete\u0027)\" class=\"btn btn-danger\" type=\"button\">Delete</button>\u000a </span>\u000a <div class=\"input-group col-xs-12\">\u000a <textarea placeholder=\"\" ng-model=\"current.password\" class=\"form-control toggle-type\" rows=\"4\" readonly=\"\"></textarea>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a <div ng-if=\"action === \u0027delete\u0027\" class=\"password-deleted\">\u000a <h4 class=\"\">Password will not be managed by Rudder anymore\u000a <button ng-click=\"changeAction(\u0027keep\u0027)\" class=\"btn btn-success\" type=\"button\">Revert</button>\u000a </h4>\u000a </div>\u000a <div ng-if=\"action === \u0027change\u0027\" class=\"actions\">\u000a <div role=\"group\" class=\"btn-group \">\u000a <a class=\"btn btn-default\" ng-click=\"passwordForm(\u0027withHashes\u0027)\" ng-class=\"formType === \u0027withHashes\u0027 ? \u0027active\u0027 : \u0027\u0027 \">Enter password + hash</a>\u000a <a class=\"btn btn-default\" ng-click=\"passwordForm(\u0027preHashed\u0027) \" ng-class=\"formType === \u0027preHashed\u0027 ? \u0027active\u0027 : \u0027\u0027 \">Enter pre-hashed value</a>\u000a <a class=\"btn btn-default\" ng-click=\"passwordForm(\u0027clearText\u0027) \" ng-class=\"formType === \u0027clearText\u0027 ? \u0027active\u0027 : \u0027\u0027 \">Use clear text password</a>\u000a <a ng-if=\"scriptEnabled\" class=\"btn btn-default\" ng-click=\"passwordForm(\u0027script\u0027) \" ng-class=\"formType === \u0027script\u0027 ? \u0027active\u0027 : \u0027\u0027 \">Enter script to set passwords</a>\u000a </div>\u000a <div ng-if=\"formType === \u0027withHashes\u0027\" class=\"bloc-action\">\u000a <div>\u000a <div class=\"form-group has-feedback\">\u000a <label class=\"control-label\">New password</label>\u000a <div class=\"input-group col-xs-12\">\u000a <input placeholder=\"\" ng-model=\"newPassword.password\" class=\"form-control toggle-type animate-show\" type=\"text\" ng-if=\"newPassword.show\">\u000a <input placeholder=\"\" ng-model=\"newPassword.password\" class=\"form-control toggle-type animate-show\" type=\"password\" ng-hide=\"newPassword.show\">\u000a <span class=\"input-group-btn\">\u000a <button class=\"btn btn-default reveal-password\" ng-click=\"newPassword.show = ! newPassword.show\" type=\"button\">\u000a <span class=\"glyphicon \" ng-class=\"newPassword.show ? \u0027glyphicon-eye-close\u0027 : \u0027glyphicon-eye-open\u0027\"></span>\u000a </button>\u000a </span>\u000a </div>\u000a </div>\u000a <div class=\"form-group \">\u000a <label class=\"control-label\">Hash algorithm</label>\u000a <div class=\"col-xs-12\">\u000a <select ng-options=\"prefix as hash for (prefix, hash) in hashes\" ng-model=\"newPassword.hash\" class=\"form-control\">\u000a </select>\u000a <span class=\"help-block\">\u000a This password will be hashed using the <strong>{{hashes[newPassword.hash\u005d}}</strong> algorithm and stored and distributed only as a hash.\u000a The plain text value entered above will not be stored.\u000a </span>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a <div ng-if=\"formType === \u0027preHashed\u0027 || formType === \u0027clearText\u0027\" class=\"panel bloc-action\">\u000a <div class=\"\">\u000a <div class=\"form-group has-feedback\">\u000a <label class=\"control-label\">New password</label>\u000a <div ng-if=\" formType === \u0027clearText\u0027\" class=\"input-group col-xs-12\">\u000a\u000a <input placeholder=\"\" ng-model=\"newPassword.password\" class=\"form-control toggle-type animate-show\" type=\"text\" ng-if=\"newPassword.show\">\u000a <input placeholder=\"\" ng-model=\"newPassword.password\" class=\"form-control toggle-type animate-show\" type=\"password\" ng-hide=\"newPassword.show\">\u000a <span class=\"input-group-btn\">\u000a <button class=\"btn btn-default reveal-password\" ng-click=\"newPassword.show = ! newPassword.show\" type=\"button\">\u000a <span class=\"glyphicon \" ng-class=\"newPassword.show ? \u0027glyphicon-eye-close\u0027 : \u0027glyphicon-eye-open\u0027\"></span>\u000a </button>\u000a </span>\u000a </div>\u000a <div ng-if=\" formType === \u0027preHashed\u0027\" class=\"col-xs-12\">\u000a <input placeholder=\"\" ng-model=\"newPassword.password\" class=\"form-control toggle-type\" type=\"text\">\u000a </div>\u000a <span class=\"help-block col-xs-12\">\u000a This <strong class=\"variation\">{{formType === \u0027preHashed\u0027 ? &quot;hash&quot; : &quot;password&quot;}}</strong> will be stored and distributed verbatim (plain text).\u000a </span>\u000a </div>\u000a </div>\u000a </div>\u000a <div ng-if=\"formType === \u0027script\u0027\" class=\"panel bloc-action\">\u000a <div class=\"\">\u000a <div class=\"form-group has-feedback\">\u000a <label class=\"control-label\">Script</label>\u000a <div class=\"input-group col-xs-12 \">\u000a <textarea rows=\"4\" ng-model=\"newPassword.password\" class=\"form-control\"></textarea>\u000a <span class=\"help-block\">\u000a You can enter a JavaScript expression here. See <a href=\"/rudder-doc/reference/current/usage/advanced_configuration_management.html#_javascript_evaluation_in_directives\">documentation</a> here for details.<br>\u000a Passwords will be computed for each node during policy generation. To use hashed passwords, make sure to call the rudder.password function in the script above.\u000a </span>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a <input value=\"\" ng-hide=\"true\" ng-model=\"result\" type=\"text\" name=\"F1080519123912LJPQNE\"></div>\u000a </div>\u000a</td>\u000a </tr>\u000a </table>\u000a </div>\u000a </td></tr><tr><td colspan=\"3\">\u000a <div id=\"F1080519123932UVUQ2D\" class=\"sectionFieldset foldableSection unfoldedSection\">\u000a <div class=\"section-title\" onClick=\"F10805191239333RES3W()\">Section: Repository settings</div>\u000a <table class=\"directiveSectionDef\">\u000a <tr>\u000a <td colspan=\"2\">\u000a <span><b>Add the following repository(ies)</b> </span>\u000a </td>\u000a <td class=\"directiveVarValue\"><input type=\"checkbox\" name=\"F1080519123916XRUKPZ\" value=\"true\"><input type=\"hidden\" name=\"F1080519123916XRUKPZ\" value=\"false\"></td>\u000a </tr><tr id=\"F1080519123874J5TQEY\"><td colspan=\"3\">\u000a <div class=\"directiveGroup\"><div id=\"F1080519123917JZYWY2\" class=\"groupFieldset foldableSection foldedSection\">\u000a <div class=\"section-title\" onClick=\"F1080519123918VBKHTZ()\">Repository #1</div>\u000a <table class=\"directiveGroupDef\">\u000a <tbody>\u000a <tr>\u000a <td colspan=\"2\">\u000a <span>Repository URL <span> - <small class=\"greyscala\">Optional</small></span></span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F1080519123919KACJQE\" class=\"directive-input-group\">\u000a <div id=\"F1080519123919KACJQE-controller\" ng-controller=\"textController\" class=\"input-group input-group-sm text-section col-xs-12\">\u000a <div ng-cloak=\"\" ng-show=\"feature\" class=\"input-group-btn\">\u000a <button type=\"button\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\">{{prefixName()}} <span class=\"caret\"></span></button>\u000a <ul class=\"dropdown-menu\">\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027\u0027\">Text</a></li>\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027evaljs:\u0027\">JS</a></li>\u000a </ul>\u000a </div>\u000a <input type=\"text\" ng-model=\"current.value\" class=\"form-control monospace-font\">\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F108051912392001BQAH\"></textarea></div>\u000a </div>\u000a</td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span>Repository local name <span> - <small class=\"greyscala\">Optional</small></span></span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F1080519123921VEKQ4C\" class=\"directive-input-group\">\u000a <div id=\"F1080519123921VEKQ4C-controller\" ng-controller=\"textController\" class=\"input-group input-group-sm text-section col-xs-12\">\u000a <div ng-cloak=\"\" ng-show=\"feature\" class=\"input-group-btn\">\u000a <button type=\"button\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\">{{prefixName()}} <span class=\"caret\"></span></button>\u000a <ul class=\"dropdown-menu\">\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027\u0027\">Text</a></li>\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027evaljs:\u0027\">JS</a></li>\u000a </ul>\u000a </div>\u000a <input type=\"text\" ng-model=\"current.value\" class=\"form-control monospace-font\">\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F1080519123922ZPFM02\"></textarea></div>\u000a </div>\u000a</td>\u000a </tr>\u000a </tbody>\u000a </table>\u000a <div class=\"textright directiveDeleteGroup\"><input onclick=\"lift.setUriSuffix(\u0027zF10805191239235WOUPD=_\u0027); return true;\" value=\"Delete \u0027Repository #1\u0027\" class=\"btn btn-danger\" disabled=\"true\" type=\"submit\" name=\"zF10805191239235WOUPD\"></div>\u000a \u000a \u000a <div class=\"directiveAddGroup\"><input onclick=\"lift.setUriSuffix(\u0027zF1080519123924DB10PM=_\u0027); return true;\" value=\"Add another \u0027Repository\u0027\" class=\"btn new-icon btn-success btn-outline\" type=\"submit\" name=\"zF1080519123924DB10PM\"></div>\u000a \u000a </div></div>\u000a </td></tr><tr><td colspan=\"3\">\u000a <div id=\"F1080519123930ZFN5SK\" class=\"sectionFieldset foldableSection unfoldedSection\">\u000a <div class=\"section-title\" onClick=\"F1080519123931OFN3CD()\">Section: Advanced repository settings</div>\u000a <table class=\"directiveSectionDef\">\u000a <tr>\u000a <td colspan=\"2\">\u000a <span><b>Set the refresh interval</b> </span>\u000a </td>\u000a <td class=\"directiveVarValue\"><input type=\"checkbox\" name=\"F1080519123925DMVBMD\" value=\"true\"><input type=\"hidden\" name=\"F1080519123925DMVBMD\" value=\"false\"></td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span><b>How long between refreshes, in seconds</b> </span>\u000a </td>\u000a <td class=\"directiveVarValue\">\u000a <div id=\"F108051912392653Y1P0\" class=\"directive-input-group\">\u000a <div id=\"F108051912392653Y1P0-controller\" ng-controller=\"textController\" class=\"input-group input-group-sm text-section col-xs-12\">\u000a <div ng-cloak=\"\" ng-show=\"feature\" class=\"input-group-btn\">\u000a <button type=\"button\" data-toggle=\"dropdown\" class=\"btn btn-default dropdown-toggle\">{{prefixName()}} <span class=\"caret\"></span></button>\u000a <ul class=\"dropdown-menu\">\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027\u0027\">Text</a></li>\u000a <li><a href=\"#\" ng-click=\"current.prefix = \u0027evaljs:\u0027\">JS</a></li>\u000a </ul>\u000a </div>\u000a <input type=\"text\" ng-model=\"current.value\" class=\"form-control monospace-font\">\u000a <textarea ng-hide=\"true\" ng-model=\"result\" name=\"F1080519123927KQ3KCJ\"></textarea></div>\u000a </div>\u000a</td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span><b>Allow clients to connect remotely to this daemon</b> </span>\u000a </td>\u000a <td class=\"directiveVarValue\"><div><div class=\"radio\">\u000a <label>\u000a <input type=\"radio\" name=\"F1080519123928IQB0PO\" value=\"True\">\u000a True\u000a </label>\u000a </div><div class=\"radio\">\u000a <label>\u000a <input type=\"radio\" name=\"F1080519123928IQB0PO\" value=\"False\">\u000a False\u000a </label>\u000a </div><div class=\"radio\">\u000a <label>\u000a <input checked=\"checked\" type=\"radio\" name=\"F1080519123928IQB0PO\" value=\"dontchange\">\u000a Don\u0027t change\u000a </label>\u000a </div></div></td>\u000a </tr><tr>\u000a <td colspan=\"2\">\u000a <span><b>Logging level (off, fatal, error, warn, info, debug)</b> </span>\u000a </td>\u000a <td class=\"directiveVarValue\"><select name=\"F1080519123929VA43OO\"><option value=\"off\">Off</option><option value=\"fatal\">Fatal</option><option value=\"error\">Error</option><option value=\"warn\">Warn</option><option value=\"info\">Info</option><option value=\"debug\">Debug</option><option selected=\"selected\" value=\"dontchange\">Don\u0027t change</option></select></td>\u000a </tr>\u000a </table>\u000a </div>\u000a </td></tr>\u000a </table>\u000a </div>\u000a </td></tr>\u000a </table>\u000a </div>\u000a <h2 class=\"title-tab\" id=\"directiveRulesTabTitle\">Target rules</h2>\u000a <div id=\"directiveRulesTab\"><div>\u000a <div class=\"row col-small-padding\">\u000a <div class=\"col-xs-12 col-lg-3 col-md-4\">\u000a <div class=\"box\">\u000a <div class=\"box-header with-border\">\u000a <h3 class=\"box-title\"><i class=\"fa fa-filter\" aria-hidden=\"true\"></i>Filters</h3>\u000a <div class=\"box-tools pull-right\">\u000a <button class=\"btn btn-box-tool\" data-widget=\"collapse\"><i class=\"fa fa-chevron-down\"></i></button>\u000a </div>\u000a </div>\u000a <div class=\"box-body\">\u000a <div class=\"row\">\u000a <div class=\"col-xs-12\">\u000a <div id=\"showFiltersRules\" ng-controller=\"filterTagCtrl\" ng-init=\"initRule()\" class=\"filters\" ng-cloak=\"\">\u000a <div class=\"filters-container\">\u000a <div class=\"filterTag\">\u000a <div class=\"input-group search-addon\">\u000a <label for=\"searchStr\" class=\"input-group-addon search-addon\"><span class=\"ion ion-search\"></span></label>\u000a <input type=\"text\" id=\"searchStr\" class=\"input-sm form-control\" placeholder=\"Filter\" ng-model=\"strSearch\" ng-keyup=\"filterGlobal(strSearch)\">\u000a </div>\u000a <div class=\"form-group\">\u000a <label>Tags</label>\u000a <div class=\"input-group\">\u000a <div id=\"ruleFilterKeyInput\" angucomplete-alt=\"\" placeholder=\"key\" minlength=\"1\" maxlength=\"100\" pause=\"500\" selected-object=\"selectTag\" remote-url=\"{{contextPath}}/secure/api/completion/tags/rule/key/\" remote-url-data-field=\"data\" title-field=\"value\" input-class=\"form-control input-sm input-key\" match-class=\"highlight\" input-changed=\"updateTag\" override-suggestions=\"true\">\u000a </div>\u000a <span class=\"input-group-addon addon-json\">=</span>\u000a <div id=\"ruleFilterValueInput\" angucomplete-alt=\"\" placeholder=\"value\" minlength=\"1\" maxlength=\"100\" pause=\"500\" selected-object=\"selectValue\" remote-url=\"{{contextPath}}/secure/api/completion/tags/rule/value/{{newTag.key}}/\" remote-url-data-field=\"data\" title-field=\"value\" input-class=\"form-control input-sm input-value\" match-class=\"highlight\" input-changed=\"updateValue\" override-suggestions=\"true\">\u000a </div>\u000a <span class=\"input-group-btn\">\u000a <button type=\"button\" ng-click=\"addTag(newTag)\" class=\"btn btn-success btn-sm\" ng-disabled=\" (isEmptyOrBlank(newTag.key) &amp;&amp; isEmptyOrBlank(newTag.value)); \">\u000a <span class=\"fa fa-plus\"></span>\u000a </button>\u000a </span>\u000a </div>\u000a </div>\u000a <div class=\"only-tags\">\u000a <button class=\"btn btn-default btn-xs pull-right\" ng-click=\"clearAllTags()\" ng-hide=\"tags.length==0\">\u000a Clear all tags\u000a <i class=\"fa fa-trash\" aria-hidden=\"true\"></i>\u000a </button>\u000a </div>\u000a <div class=\"tags-container\">\u000a <div class=\"btn-group btn-group-xs\" role=\"group\" ng-repeat=\"tag in tags track by $index\">\u000a <button class=\"btn btn-default tags-label\" ng-class=\"{\u0027onlyKey\u0027:only.key, \u0027onlyValue\u0027:only.value, \u0027already-exist\u0027:tag.alreadyExist}\" ng-click=\"modifyTag(tag,\u0027ruleFilterKeyInput\u0027,\u0027ruleFilterValueInput\u0027)\">\u000a <i class=\"fa fa-tag\"></i>\u000a <span class=\"tag-key\">\u000a <span ng-show=\"tag.key!=\u0027\u0027\">{{tag.key}}</span>\u000a <i class=\"fa fa-asterisk\" aria-hidden=\"true\" ng-show=\"tag.key==\u0027\u0027\"></i>\u000a </span>\u000a <span class=\"tag-separator\">=</span>\u000a <span class=\"tag-value\">\u000a <span ng-show=\"tag.value!=\u0027\u0027\">{{tag.value}}</span>\u000a <i class=\"fa fa-asterisk\" aria-hidden=\"true\" ng-show=\"tag.value==\u0027\u0027\"></i>\u000a </span>\u000a </button>\u000a <button type=\"button\" class=\"btn btn-default\" ng-click=\"removeTag($index)\">\u000a <span class=\"fa fa-times\"></span>\u000a </button>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a <div class=\"box\">\u000a <div class=\"box-header with-border\">\u000a <h3 class=\"box-title\"><i class=\"fa fa-list\" aria-hidden=\"true\"></i>Categories</h3>\u000a <div class=\"box-tools pull-right\">\u000a \u000a \u000a \u000a <button class=\"btn btn-sm btn-box-tool\" data-widget=\"collapse\"><i class=\"fa fa-chevron-down\"></i></button>\u000a </div>\u000a </div>\u000a <div class=\"box-body\" id=\"boxTreeRules\">\u000a <div class=\"row\">\u000a <div class=\"col-xs-12\" id=\"categoryTreeParent\">\u000a <div id=\"treeParent\">\u000a <ul class=\"form-group list-sm\">\u000a <li class=\"rudder-form\">\u000a <div class=\"input-group\">\u000a <label for=\"includeCheckbox\" class=\"input-group-addon\" id=\"includeSubCategory\">\u000a <input onclick=\"lift.ajax(\u0027F1080519123876ZWUAQ0=\u0027 + this.checked, null, null, null)\" checked=\"checked\" id=\"includeCheckbox\" type=\"checkbox\">\u000a <label class=\"label-radio\" for=\"includeCheckbox\">\u000a <span class=\"ion ion-checkmark-round\"></span>\u000a </label>\u000a <span class=\"ion ion-checkmark-round check-icon\"></span>\u000a </label>\u000a <label for=\"includeCheckbox\" class=\"form-control\">\u000a Display Rules from subcategories\u000a </label>\u000a </div>\u000a </li>\u000a </ul>\u000a <div id=\"categoryTree\">\u000a <ul><li id=\"rootRuleCategory\" data-jstree=\"{ &quot;type&quot; : &quot;category&quot; }\">\u000a <a href=\"javascript://\" onclick=\"lift.ajax(&quot;F10805191238801JI35T=true&quot;, null, null, null); return false;\"><span id=\"rootRuleCategoryName\" tooltipid=\"F1080519123877UWPJD2\" title=\"\" class=\"treeRuleCategoryName tooltipable\">\u000a <input onclick=\"lift.ajax(\u0027F1080519123879D0P303=\u0027 + this.checked, null, null, null)\" style=\"margin : 2px 5px 0px 2px;\" id=\"rootRuleCategoryCheckbox\" type=\"checkbox\">Rules\u000a </span><div class=\"tooltipContent\" id=\"F1080519123877UWPJD2\">\u000a <h3>Rules</h3>\u000a <div>This is the main category of Rules</div>\u000a </div></a>\u000a <ul>\u000a \u000a </ul>\u000a </li>\u000a </ul>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a <div class=\"col-lg-9 col-xs-12 col-md-8\">\u000a <div class=\"box\">\u000a <div class=\"box-header with-border\">\u000a <h3 class=\"box-title\"><i class=\"fa fa-gears\" aria-hidden=\"true\"></i>Rules</h3>\u000a <div class=\"box-tools pull-right\">\u000a <button class=\"btn btn-box-tool btn-blue toggleTabFilter updateTable btn-sm\" id=\"updateRuleTable\">Refresh<span class=\"fa fa-refresh\"></span></button>\u000a \u000a \u000a \u000a </div>\u000a </div>\u000a <div class=\"box-body\">\u000a <div class=\"row\">\u000a <div class=\"col-xs-12\" id=\"view\">\u000a <div>\u000a <div id=\"rules_grid_zone\">\u000a <div id=\"modal_rules_grid_zone\" class=\"nodisplay\">\u000a <div id=\"popup_rules_grid_zone\"></div>\u000a </div>\u000a <table id=\"grid_rules_grid_zone\" class=\"display\" cellspacing=\"0\"> </table>\u000a <div class=\"grid_rules_grid_zone_pagination, paginatescala\">\u000a <div id=\"grid_rules_grid_zone_paginate_area\"></div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div>\u000a </div></div>\u000a </div>\u000a </div></form>\u000a \u000a <div tabindex=\"-1\" data-keyboard=\"true\" class=\"modal fade\" id=\"removeActionDialog\"></div>\u000a <div tabindex=\"-1\" data-keyboard=\"true\" class=\"modal fade\" id=\"disableActionDialog\"></div>\u000a <div tabindex=\"-1\" data-keyboard=\"true\" class=\"modal fade\" id=\"confirmUpdateActionDialog\"></div>\u000a <div tabindex=\"-1\" data-keyboard=\"true\" class=\"modal fade\" id=\"createCloneDirectivePopup\"></div>\u000a\u000a </div>\u000a"); 
// <![CDATA[
jQuery(document).ready(function() {
 if(!angular.element('#directiveEditTagsApp').scope()){
 angular.bootstrap('#directiveEditTagsApp', ['tags']);
 }
 var scope = angular.element($("#directiveTags")).scope();
 scope.$apply(function(){
 scope.init( [], "directiveFilter" , true, false, "9e3f2dfb-9b31-467f-97ea-81e7d0924e22");
 });
 ;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F10805191239052S2ZRV", ['text']);
 var scope = angular.element($("#F10805191239052S2ZRV-controller")).scope();
 scope.$apply(function(){
 scope.init(
 ""
 , ""
 , true
 );
 });;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F1080519123908HHEGMH", ['text']);
 var scope = angular.element($("#F1080519123908HHEGMH-controller")).scope();
 scope.$apply(function(){
 scope.init(
 ""
 , ""
 , true
 );
 });;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F1080519123911A1JVJK", ['password']);
 var scope = angular.element($("#F1080519123911A1JVJK-controller")).scope();
 scope.$apply(function(){
 scope.init(
 undefined
 , "plain"
 , false
 , "keep"
 , {}
 , undefined
 , true
 , true
 , undefined
 , "plain"
 , false
 );
 });;});
// ]]>
;

// <![CDATA[
 function F1080519123915UPGO5Z() { lift.ajax('F1080519123915UPGO5Z=' + encodeURIComponent(), null, null, null) } ;
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F1080519123919KACJQE", ['text']);
 var scope = angular.element($("#F1080519123919KACJQE-controller")).scope();
 scope.$apply(function(){
 scope.init(
 ""
 , ""
 , true
 );
 });;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F1080519123921VEKQ4C", ['text']);
 var scope = angular.element($("#F1080519123921VEKQ4C-controller")).scope();
 scope.$apply(function(){
 scope.init(
 ""
 , ""
 , true
 );
 });;});
// ]]>
;

// <![CDATA[
 function F1080519123918VBKHTZ() { lift.ajax('F1080519123918VBKHTZ=' + encodeURIComponent(), null, null, null) } ;
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 $("input").not("#treeSearch").keydown( function(event) {
 processKey(event , 'policyConfigurationSave')
 } ); ;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {
 angular.bootstrap("#F108051912392653Y1P0", ['text']);
 var scope = angular.element($("#F108051912392653Y1P0-controller")).scope();
 scope.$apply(function(){
 scope.init(
 "86400"
 , ""
 , true
 );
 });;});
// ]]>
;

// <![CDATA[
 function F1080519123931OFN3CD() { lift.ajax('F1080519123931OFN3CD=' + encodeURIComponent(), null, null, null) } ;
// ]]>
;

// <![CDATA[
 function F10805191239333RES3W() { lift.ajax('F10805191239333RES3W=' + encodeURIComponent(), null, null, null) } ;
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {setTimeout(function() {
 $('#rootRuleCategoryCheckbox').click(function (e) { e.stopPropagation(); })
 $('#rootRuleCategoryCheckbox').prop("indeterminate",false);;}, 400);});
// ]]>
;

// <![CDATA[
setTimeout(function() {
 buildRuleCategoryTreeNoDnD('#categoryTree','rootRuleCategory','/rudder');
 $('#categoryTree').bind("move_node.jstree", function (e,data) {
 var sourceCatId = data.node.id;
 var destCatId = data.parent;
 if( destCatId ) {
 if( sourceCatId ) {
 var arg = JSON.stringify({ 'sourceCatId' : sourceCatId, 'destCatId' : destCatId });
 lift.ajax('F1080519123881YW3Y3X=' + encodeURIComponent(arg), null, null, null);
 } else {
 alert("Can not move that kind of object");
 $.jstree.rollback(data.rlbk);
 }
 } else {
 alert("Can not move to something else than a category");
 $.jstree.rollback(data.rlbk);
 }
 });
 createTooltip();;}, 50);
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {createRuleTable (
 "grid_rules_grid_zone"
 , []

 , true
 , false
 , false
 , false
 , function(checked) {lift.ajax('F1080519123882NQQEAU=' + encodeURIComponent(checked), null, null, null);}
 , "/rudder"
 , function() {lift.ajax('F1080519123883CY4K1X=' + encodeURIComponent(null), null, null, null);}
 , false
 );
 createTooltip();
 createTooltiptr();
 var scopeElmnt = '#showFiltersRules'
 if(angular.element(scopeElmnt).length && !angular.element(scopeElmnt).scope()){
 angular.bootstrap(scopeElmnt, ['filters']);
 }
 ;});
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {(function() {lift.ajax('F1080519123884MTIM55=' + encodeURIComponent(null), null, null, null);})();});
// ]]>
;

// <![CDATA[

 var include = true;
 var filter = "";
 var column = 3;;
// ]]>
;

// <![CDATA[
jQuery(document).ready(function() {activateButtonOnFormChange("policyConfiguration", "policyConfigurationSave");
setupMarkdown("", "longDescriptionField")
generateMarkdown("This technique configures the RUG and YaST package manager using Novell\u0027s ZMD.", "#techniqueDescription")
$('#technicalDetails').hide();
$("input").not("#treeSearch").keydown( function(event) {
 processKey(event , 'policyConfigurationSave');
} );
checkMigrationButton("3.0 ","F108051912388541X0FE");
$('#F108051912388541X0FE').change( function () {
 checkMigrationButton("3.0 ","F108051912388541X0FE")
} );
$(document).ready(function(){$('.main-details').bsScrollSpy({ target: '#navbar-scrollspy' })});;});
// ]]>
;;
jQuery('#'+"techniqueDetails").html("");
createTooltip();;" title="Create Directive with latest version"><i class="fa fa-plus"></i></span></a> | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment