PageRenderTime 24ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/jira-project/jira-components/jira-webapp/src/main/webapp/secure/admin/views/importers/project/projectimportselectproject.jsp

https://bitbucket.org/ahmed_bilal_360factors/jira7-core
JavaServer Pages | 231 lines | 208 code | 20 blank | 3 comment | 28 complexity | cb07b98c062475cc2b597b3f3454773e MD5 | raw file
Possible License(s): Apache-2.0
  1. <%@ taglib uri="webwork" prefix="ww" %>
  2. <%@ taglib uri="webwork" prefix="ui" %>
  3. <%@ taglib uri="webwork" prefix="aui" %>
  4. <%@ taglib uri="sitemesh-page" prefix="page" %>
  5. <html>
  6. <head>
  7. <title>
  8. <ww:text name="'admin.project.import.select.project.title'"/>
  9. </title>
  10. <meta name="admin.active.section" content="admin_system_menu/top_system_section/import_export_section"/>
  11. <meta name="admin.active.tab" content="project_import"/>
  12. </head>
  13. <body>
  14. <div id="project-import-panel">
  15. <ui:soy moduleKey="'com.atlassian.auiplugin:aui-experimental-soy-templates'" template="'aui.progressTracker.progressTracker'">
  16. <ui:param name="'steps'" value="/progressTrackerSteps"/>
  17. </ui:soy>
  18. <page:applyDecorator name="auiform">
  19. <page:param name="action">ProjectImportSelectProject.jspa</page:param>
  20. <page:param name="cancelLinkURI">ProjectImportSelectBackup!cancel.jspa</page:param>
  21. <ww:if test="/noBackupOverview == false">
  22. <page:param name="submitButtonName"><ww:text name="'common.forms.next'"/></page:param>
  23. <page:param name="submitButtonText"><ww:text name="'common.forms.next'"/></page:param>
  24. <h2><ww:text name="'admin.project.import.select.project.title'"/></h2>
  25. <p>
  26. <ww:text name="'admin.project.import.select.project.desc'">
  27. <ww:param name="'value0'"><p></ww:param>
  28. <ww:param name="'value1'"></p></ww:param>
  29. </ww:text>
  30. </p>
  31. <fieldset>
  32. <div class="field-group">
  33. <label for="project_select"><ww:text name="'admin.project.import.select.project.label'"/></label>
  34. <select class="select" name="projectKey" id="project_select" onchange="populateProjectInfo(); return false;" onkeyup="populateProjectInfo(); return false;">
  35. <ww:iterator value="/backupOverview/projects">
  36. <option value="<ww:property value="./project/key"/>" <ww:if test="./project/key/equals(/projectKey) == true">SELECTED</ww:if>><ww:property value="./project/name"/></option>
  37. </ww:iterator>
  38. </select>
  39. <div class="description">
  40. <div id="errorBox" class="aui-message hidden aui-message-error">
  41. <ul></ul>
  42. </div>
  43. <div id="warningBox" class="aui-message hidden aui-message-warning">
  44. <ul></ul>
  45. </div>
  46. <br>
  47. <div id="projectDetails" style="display:none;">
  48. <table id="projectDetailsTable" class="aui">
  49. <tbody>
  50. <tr>
  51. <td width="20%"><b><ww:text name="'admin.project.import.select.project.proj.name'"/>:</b></td>
  52. <td width="80%" id="prj_name"></td>
  53. </tr>
  54. <tr>
  55. <td><b><ww:text name="'admin.project.import.select.project.proj.key'"/>:</b></td>
  56. <td id="prj_key"></td>
  57. </tr>
  58. <tr>
  59. <td><b><ww:text name="'common.concepts.project.type'"/>:</b></td>
  60. <td id="prj_type"></td>
  61. </tr>
  62. <tr>
  63. <td><b><ww:text name="'admin.project.import.select.project.proj.desc'"/>:</b></td>
  64. <td id="prj_desc"></td>
  65. </tr>
  66. <tr>
  67. <td><b><ww:text name="'admin.project.import.select.project.proj.lead'"/>:</b></td>
  68. <td id="prj_lead"></td>
  69. </tr>
  70. <tr>
  71. <td><b><ww:text name="'admin.project.import.select.project.proj.url'"/>:</b></td>
  72. <td id="prj_url"></td>
  73. </tr>
  74. <tr>
  75. <td><b><ww:text name="'admin.project.import.select.project.proj.sender.address'"/>:</b></td>
  76. <td id="prj_send"></td>
  77. </tr>
  78. <tr>
  79. <td><b><ww:text name="'admin.project.import.select.project.proj.default.assignee'"/>:</b></td>
  80. <td id="prj_ass"></td>
  81. </tr>
  82. <tr>
  83. <td><b><ww:text name="'admin.project.import.select.project.proj.isssues'"/>:</b></td>
  84. <td id="prj_iss"></td>
  85. </tr>
  86. <tr>
  87. <td><b><ww:text name="'admin.project.import.select.project.proj.components'"/>:</b></td>
  88. <td id="prj_comp"></td>
  89. </tr>
  90. <tr>
  91. <td><b><ww:text name="'admin.project.import.select.project.proj.versions'"/>:</b></td>
  92. <td id="prj_ver"></td>
  93. </tr>
  94. </tbody>
  95. </table>
  96. </div>
  97. </div>
  98. </div>
  99. <div class="group" id="overwriteelements">
  100. <legend><span><ww:text name="'admin.project.import.select.project.overwrite.label'"/></span></legend>
  101. <div class="checkbox">
  102. <input class="checkbox" type="checkbox" name="overwrite" id="overwrite" checked="checked" value="true">
  103. <label for="overwrite"><ww:text name="'admin.project.import.select.project.overwrite.desc'"/></label>
  104. </div>
  105. </div>
  106. </fieldset>
  107. </ww:if>
  108. </page:applyDecorator>
  109. </div>
  110. <script type="text/javascript">
  111. // build an array of all the project values to fill the info box
  112. var projectInfo = new Array();
  113. <ww:iterator value="/backupOverview/projects" status="'status'">
  114. projectInfo[<ww:property value="@status/count" /> - 1] = <ww:property value="jsonProject(.)" escape="false" />;
  115. </ww:iterator>
  116. function populateProjectInfo()
  117. {
  118. // Always make sure we show the project details div
  119. document.getElementById("projectDetails").style.display = "";
  120. var index = document.getElementById("project_select").selectedIndex;
  121. var project = projectInfo[index];
  122. document.getElementById("prj_name").innerHTML = project.prj_name;
  123. document.getElementById("prj_type").innerHTML = project.prj_type;
  124. if (project.prj_type == "")
  125. {
  126. document.getElementById("prj_type").innerHTML = "&nbsp;";
  127. }
  128. if (project.prj_name == "")
  129. {
  130. document.getElementById("prj_name").innerHTML = "&nbsp;";
  131. }
  132. document.getElementById("prj_key").innerHTML = project.prj_key;
  133. if (project.prj_key == "")
  134. {
  135. document.getElementById("prj_key").innerHTML = "&nbsp;";
  136. }
  137. document.getElementById("prj_desc").innerHTML = project.prj_desc;
  138. if (project.prj_desc == "")
  139. {
  140. document.getElementById("prj_desc").innerHTML = "&nbsp;";
  141. }
  142. document.getElementById("prj_lead").innerHTML = project.prj_lead;
  143. if (project.prj_lead == "")
  144. {
  145. document.getElementById("prj_lead").innerHTML = "&nbsp;";
  146. }
  147. document.getElementById("prj_url").innerHTML = project.prj_url;
  148. if (project.prj_url == "")
  149. {
  150. document.getElementById("prj_url").innerHTML = "&nbsp;";
  151. }
  152. document.getElementById("prj_send").innerHTML = project.prj_send;
  153. if (project.prj_send == "")
  154. {
  155. document.getElementById("prj_send").innerHTML = "&nbsp;";
  156. }
  157. document.getElementById("prj_ass").innerHTML = project.prj_ass;
  158. if (project.prj_ass == "")
  159. {
  160. document.getElementById("prj_ass").innerHTML = "&nbsp;";
  161. }
  162. document.getElementById("prj_iss").innerHTML = project.prj_iss;
  163. if (project.prj_iss == "")
  164. {
  165. document.getElementById("prj_iss").innerHTML = "&nbsp;";
  166. }
  167. document.getElementById("prj_comp").innerHTML = project.prj_comp;
  168. if (project.prj_comp == "")
  169. {
  170. document.getElementById("prj_comp").innerHTML = "&nbsp;";
  171. }
  172. document.getElementById("prj_ver").innerHTML = project.prj_ver;
  173. if (project.prj_ver == "")
  174. {
  175. document.getElementById("prj_ver").innerHTML = "&nbsp;";
  176. }
  177. // Make the import submit disabled if the project is not importable
  178. if (!project.prj_imp) {
  179. jQuery("#next_submit").addClass("disabled").attr("disabled", "disabled");
  180. }else {
  181. jQuery("#next_submit").removeClass("disabled").removeAttr("disabled");
  182. }
  183. if (project.prj_imp && project.warnings.length === 0)
  184. {
  185. document.getElementById("overwriteelements").style.display = "";
  186. }
  187. else
  188. {
  189. document.getElementById("overwriteelements").style.display = "none";
  190. }
  191. populateMessages("#errorBox", project.errors);
  192. populateMessages("#warningBox", project.warnings);
  193. }
  194. function populateMessages(selector, messages)
  195. {
  196. var $container = jQuery(selector);
  197. var $ul = $container.find("ul");
  198. $ul.find("li").remove();
  199. if (messages.length > 0) {
  200. for (var i = 0; i < messages.length; i++) {
  201. $ul.append(jQuery("<li>").html(messages[i]));
  202. }
  203. $container.removeClass("hidden").show();
  204. } else {
  205. $container.hide();
  206. }
  207. }
  208. populateProjectInfo();
  209. </script>
  210. </body>
  211. </html>