jobcode.index.ftl 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <#import "/common/common.macro.ftl" as netCommon>
  5. <@netCommon.commonStyle />
  6. <link rel="stylesheet" href="${request.contextPath}/static/plugins/codemirror/lib/codemirror.css">
  7. <link rel="stylesheet" href="${request.contextPath}/static/plugins/codemirror/addon/hint/show-hint.css">
  8. <title>${I18n.admin_name}</title>
  9. <style type="text/css">
  10. .CodeMirror {
  11. font-size:16px;
  12. width: 100%;
  13. height: 100%;
  14. /*bottom: 0;
  15. top: 0px;*/
  16. position: absolute;
  17. }
  18. </style>
  19. </head>
  20. <body class="skin-blue fixed layout-top-nav">
  21. <div class="wrapper">
  22. <header class="main-header">
  23. <nav class="navbar navbar-static-top">
  24. <div class="container">
  25. <#-- icon -->
  26. <div class="navbar-header">
  27. <a class="navbar-brand"><b>Web</b>IDE</a>
  28. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse">
  29. <i class="fa fa-bars"></i>
  30. </button>
  31. </div>
  32. <#-- left nav -->
  33. <div class="collapse navbar-collapse pull-left" id="navbar-collapse">
  34. <ul class="nav navbar-nav">
  35. <li class="active" ><a href="javascript:;">
  36. <span class="sr-only">(current)</span>
  37. 【<#list GlueTypeEnum as item><#if item == jobInfo.glueType>${item.desc}</#if></#list>】
  38. ${jobInfo.jobDesc}
  39. </a></li>
  40. </ul>
  41. </div>
  42. <#-- right nav -->
  43. <div class="navbar-custom-menu">
  44. <ul class="nav navbar-nav">
  45. <li class="dropdown">
  46. <a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false">${I18n.jobinfo_glue_rollback} <span class="caret"></span></a>
  47. <ul class="dropdown-menu" role="menu">
  48. <li <#if jobLogGlues?exists && jobLogGlues?size gt 0 >style="display: none;"</#if> >
  49. <a href="javascript:;" class="source_version" version="version_now" glueType="${jobInfo.glueType}" >
  50. <#list GlueTypeEnum as item><#if item == jobInfo.glueType>${item.desc}</#if></#list>: ${jobInfo.glueRemark}
  51. </a>
  52. </li>
  53. <textarea id="version_now" style="display:none;" >${jobInfo.glueSource}</textarea>
  54. <#if jobLogGlues?exists && jobLogGlues?size gt 0 >
  55. <#list jobLogGlues as glue>
  56. <li>
  57. <a href="javascript:;" class="source_version" version="version_${glue.id}" glueType="${glue.glueType}" >
  58. <#list GlueTypeEnum as item><#if item == glue.glueType>${item.desc}</#if></#list>: ${glue.glueRemark}
  59. </a>
  60. </li>
  61. <textarea id="version_${glue.id}" style="display:none;" >${glue.glueSource}</textarea>
  62. </#list>
  63. </#if>
  64. </ul>
  65. </li>
  66. <li id="save" >
  67. <a href="javascript:;" >
  68. <i class="fa fa-fw fa-save" ></i>
  69. ${I18n.system_save}
  70. </a>
  71. </li>
  72. </ul>
  73. </div>
  74. </div>
  75. </nav>
  76. </header>
  77. <div class="content-wrapper" id="ideWindow" ></div>
  78. <!-- footer -->
  79. <#--<@netCommon.commonFooter />-->
  80. </div>
  81. <!-- 保存.模态框 -->
  82. <div class="modal fade" id="saveModal" tabindex="-1" role="dialog" aria-hidden="true">
  83. <div class="modal-dialog ">
  84. <div class="modal-content">
  85. <div class="modal-header">
  86. <h4 class="modal-title" ><i class="fa fa-fw fa-save"></i>${I18n.system_save}</h4>
  87. </div>
  88. <div class="modal-body">
  89. <form class="form-horizontal form" role="form" >
  90. <div class="form-group">
  91. <label for="lastname" class="col-sm-2 control-label">${I18n.jobinfo_glue_remark}<font color="red">*</font></label>
  92. <div class="col-sm-10"><input type="text" class="form-control" id="glueRemark" placeholder="${I18n.system_please_input}${I18n.jobinfo_glue_remark}" maxlength="64" ></div>
  93. </div>
  94. <hr>
  95. <div class="form-group">
  96. <div class="col-sm-offset-3 col-sm-6">
  97. <button type="button" class="btn btn-primary ok" >${I18n.system_save}</button>
  98. <button type="button" class="btn btn-default" data-dismiss="modal">${I18n.system_cancel}</button>
  99. </div>
  100. </div>
  101. </form>
  102. </div>
  103. </div>
  104. </div>
  105. </div>
  106. <@netCommon.commonScript />
  107. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/clike/clike.js" />
  108. <#assign glueTypeIdeMode = "text/x-java" />
  109. <#if jobInfo.glueType == "GLUE_GROOVY" >
  110. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/clike/clike.js" />
  111. <#assign glueTypeIdeMode = "text/x-java" />
  112. <#elseif jobInfo.glueType == "GLUE_SHELL" >
  113. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/shell/shell.js" />
  114. <#assign glueTypeIdeMode = "text/x-sh" />
  115. <#elseif jobInfo.glueType == "GLUE_PYTHON" >
  116. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/python/python.js" />
  117. <#assign glueTypeIdeMode = "text/x-python" />
  118. <#elseif jobInfo.glueType == "GLUE_PHP" >
  119. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/php/php.js" />
  120. <#assign glueTypeIdeMode = "text/x-php" />
  121. <#elseif jobInfo.glueType == "GLUE_NODEJS" >
  122. <#assign glueTypeModeSrc = "${request.contextPath}/static/plugins/codemirror/mode/javascript/javascript.js" />
  123. <#assign glueTypeIdeMode = "text/javascript" />
  124. </#if>
  125. <script src="${request.contextPath}/static/plugins/codemirror/lib/codemirror.js"></script>
  126. <script src="${glueTypeModeSrc}"></script>
  127. <script src="${request.contextPath}/static/plugins/codemirror/addon/hint/show-hint.js"></script>
  128. <script src="${request.contextPath}/static/plugins/codemirror/addon/hint/anyword-hint.js"></script>
  129. <script>
  130. var id = '${jobInfo.id}';
  131. var ideMode = '${glueTypeIdeMode}';
  132. </script>
  133. <script src="${request.contextPath}/static/js/jobcode.index.1.js"></script>
  134. </body>
  135. </html>