/templates/requests/common/view_sample.mako

https://bitbucket.org/cistrome/cistrome-harvard/ · Mako · 122 lines · 115 code · 7 blank · 0 comment · 6 complexity · 98dd860b23e9b03e0f608aacb25c77c1 MD5 · raw file

  1. <%inherit file="/base.mako"/>
  2. <%namespace file="/message.mako" import="render_msg" />
  3. <%namespace file="/common/template_common.mako" import="render_template_fields" />
  4. <%def name="render_external_service_actions( external_service )">
  5. %if external_service:
  6. <p>
  7. <div class="toolForm">
  8. <div class="toolFormTitle">Available External Service Actions for ${sample.name} at ${external_service.name}</div>
  9. <div class="toolFormBody">
  10. <div class="toolMenu">
  11. %for item in external_service.actions:
  12. ${ render_external_service_action_group( item ) }
  13. %endfor
  14. </div>
  15. </div>
  16. </div>
  17. </p>
  18. %endif
  19. </%def>
  20. <%def name="render_external_service_action_group( external_service_group )">
  21. %if external_service_group.has_action():
  22. %if external_service_group.label:
  23. <div class="form-row">
  24. <div class="toolSectionList">
  25. <div class="toolSectionTitle">
  26. <span>${external_service_group.label}</span>
  27. </div>
  28. <div class="toolSectionBody">
  29. <div class="toolSectionBg">
  30. %endif
  31. %for item in external_service_group:
  32. %if isinstance( item, list ):
  33. ${ render_external_service_action_group( item ) }
  34. %else:
  35. ${ render_external_service_action( item ) }
  36. %endif
  37. %endfor
  38. %if external_service_group.label:
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. %endif
  44. %endif
  45. </%def>
  46. <%def name="render_external_service_action( external_service_action )">
  47. <%
  48. if hasattr( external_service_action.action, 'target' ):
  49. target = external_service_action.action.target
  50. else:
  51. target = 'galaxy_main'
  52. %>
  53. <div class="toolTitle">
  54. <a href="${external_service_action.get_action_access_link( trans )}" target="${target}">${external_service_action.label}</a>
  55. </div>
  56. </%def>
  57. <br/><br/>
  58. <ul class="manage-table-actions">
  59. <li><a class="action-button" id="sample-${sample.id}-popup" class="menubutton">Sample Actions</a></li>
  60. <div popupmenu="sample-${sample.id}-popup">
  61. <a class="action-button" href="${h.url_for( controller='requests_common', action='view_request', cntrller=cntrller, id=trans.security.encode_id( sample.request.id ) )}">Browse this request</a>
  62. %if sample.runs:
  63. <a class="action-button" href="${h.url_for( controller='requests_common', action='edit_template', cntrller=cntrller, item_type='sample', form_type=trans.app.model.FormDefinition.types.RUN_DETAILS_TEMPLATE, sample_id=trans.security.encode_id( sample.id ) )}">Edit template</a>
  64. <a class="action-button" href="${h.url_for( controller='requests_common', action='delete_template', cntrller=cntrller, item_type='sample', form_type=trans.app.model.FormDefinition.types.RUN_DETAILS_TEMPLATE, sample_id=trans.security.encode_id( sample.id ) )}">Unuse template</a>
  65. %endif
  66. </div>
  67. </ul>
  68. %if message:
  69. ${render_msg( message, status )}
  70. %endif
  71. <div class="toolForm">
  72. <div class="toolFormTitle">Sample "${sample.name}"</div>
  73. <div class="toolFormBody">
  74. <div class="form-row">
  75. <label>Name:</label>
  76. ${sample.name}
  77. <div style="clear: both"></div>
  78. </div>
  79. <div class="form-row">
  80. <label>Description:</label>
  81. ${sample.desc}
  82. <div style="clear: both"></div>
  83. </div>
  84. <div class="form-row">
  85. <label>Barcode:</label>
  86. ${sample.bar_code}
  87. <div style="clear: both"></div>
  88. </div>
  89. %if sample.library:
  90. <div class="form-row">
  91. <label>Library:</label>
  92. ${sample.library.name}
  93. <div style="clear: both"></div>
  94. </div>
  95. <div class="form-row">
  96. <label>Folder:</label>
  97. ${sample.folder.name}
  98. <div style="clear: both"></div>
  99. </div>
  100. %endif
  101. <div class="form-row">
  102. <label>Request:</label>
  103. ${sample.request.name}
  104. <div style="clear: both"></div>
  105. </div>
  106. </div>
  107. </div>
  108. %if widgets:
  109. ${render_template_fields( cntrller=cntrller, item_type='sample', widgets=widgets, widget_fields_have_contents=widget_fields_have_contents, sample_id=trans.security.encode_id( sample.id ), editable=False )}
  110. %endif
  111. %if external_services:
  112. %for external_service in external_services:
  113. ${ render_external_service_actions( external_service ) }
  114. %endfor
  115. %endif