<%inherit file="base.html" />
<%def name="online_help_token()"><% return "unit" %></%def>
<%!
from django.core.urlresolvers import reverse
from contentstore.views.helpers import EDITING_TEMPLATES
from django.utils.translation import ugettext as _
from xmodule.modulestore.django import loc_mapper
%>
<%namespace name='static' file='static_content.html'/>
<%namespace name="units" file="widgets/units.html" />
<%block name="title">${_("Individual Unit")}</%block>
<%block name="bodyclass">is-signedin course unit view-unit feature-upload</%block>

<%block name="header_extras">
% for template_name in EDITING_TEMPLATES:
<script type="text/template" id="${template_name}-tpl">
    <%static:include path="js/${template_name}.underscore" />
</script>
% endfor
</%block>

<%block name="jsextra">
  <script type='text/javascript'>
require(["domReady!", "jquery", "js/models/module_info", "coffee/src/views/unit", "jquery.ui",
        "xmodule", "coffee/src/main", "xblock/cms.runtime.v1"],
    function(doc, $, ModuleModel, UnitEditView, ui) {
  window.unit_location_analytics = '${unit_locator}';

  // tabs
  $('.tab-group').tabs();

  new UnitEditView({
    el: $('.main-wrapper'),
    view: 'unit',
    model: new ModuleModel({
      id: '${unit_locator}',
      state: '${unit_state}'
    })
  });

  $('.new-component-template').each(function(){
      $emptyEditor = $(this).find('.empty');
      $(this).prepend($emptyEditor);
  });
});
  </script>
</%block>

<%block name="content">
  <div class="main-wrapper edit-state-${unit_state}" data-locator="${unit_locator}">
    <div class="inner-wrapper">
      <div class="alert editing-draft-alert">
        <p class="alert-message"><strong>${_("You are editing a draft.")}</strong>
        % if published_date:
        ${_("This unit was originally published on {date}.").format(date=published_date)}
        % endif
        </p>
        <a href="${published_preview_link}" target="_blank" class="alert-action secondary">${_("View the Live Version")}</a>
      </div>
      <div class="main-column">
        <article class="unit-body window">
        <p class="unit-name-input"><label for="unit-display-name-input">${_("Display Name:")}</label><input type="text" value="${unit.display_name_with_default | h}" id="unit-display-name-input" class="unit-display-name-input" /></p>
          <ol class="components">
            % for locator in locators:
            <li class="component" data-locator="${locator}"/>
            % endfor
            <li class="new-component-item adding">
              <div class="new-component">
                <h5>${_("Add New Component")}</h5>
                <ul class="new-component-type">
                  % for type, templates in sorted(component_templates.items()):
                  <li>
                  % if type == 'advanced' or len(templates) > 1:
                    <a href="#" class="multiple-templates" data-type="${type}">
                  % else:
                    % for __, category, __, __ in templates:
                    <a href="#" class="single-template" data-type="${type}" data-category="${category}">
                    % endfor
                  % endif
                      <span class="large-template-icon large-${type}-icon"></span>
                      <span class="name">${type}</span>
                    </a>
                  </li>
                  % endfor
                </ul>
              </div>
                % for type, templates in sorted(component_templates.items()):
                  % if len(templates) > 1 or type == 'advanced':
                <div class="new-component-templates new-component-${type}">
                    % if type == "problem":
                    <div class="tab-group tabs">
                            <ul class="problem-type-tabs nav-tabs">
                              <li class="current">
                                <a class="link-tab" href="#tab1">${_("Common Problem Types")}</a>
                              </li>
                              <li>
                                <a class="link-tab" href="#tab2">${_("Advanced")}</a>
                              </li>
                            </ul>
                    % endif
                    <div class="tab current" id="tab1">
                      <ul class="new-component-template">
                          % for name, category, has_markdown, boilerplate_name in sorted(templates):
                            % if has_markdown or type != "problem":
                                % if boilerplate_name is None:
                                  <li class="editor-md empty">
                                    <a href="#" data-category="${category}">
                                      <span class="name">${name}</span>
                                    </a>
                                  </li>

                                % else:
                                  <li class="editor-md">
                                    <a href="#" data-category="${category}"
                                       data-boilerplate="${boilerplate_name}">
                                      <span class="name">${name}</span>
                                    </a>
                                  </li>
                                % endif
                            % endif

                          %endfor
                      </ul>
                    </div>
                    % if type == "problem":
                        <div class="tab" id="tab2">
                          <ul class="new-component-template">
                              % for name, category, has_markdown, boilerplate_name in sorted(templates):
                                % if not has_markdown:
                                  <li class="editor-manual">
                                    <a href="#" data-category="${category}"
                                       data-boilerplate="${boilerplate_name}">
                                      <span class="name">${name}</span>
                                    </a>
                                  </li>
                                % endif
                              % endfor
                          </ul>
                        </div>
                    </div>
                    % endif
                    <a href="#" class="cancel-button">Cancel</a>
                </div>
                % endif
                % endfor
            </li>
          </ol>
        </article>
      </div>

      <%
        ctx_loc = context_course.location
        index_url = loc_mapper().translate_location(ctx_loc.course_id, ctx_loc, False, True).url_reverse('course')
        subsection_url = loc_mapper().translate_location(
            ctx_loc.course_id, subsection.location, False, True
        ).url_reverse('subsection')
      %>
      <div class="sidebar">
        <div class="unit-settings window">
          <h4 class="header">${_("Unit Settings")}</h4>
          <div class="window-contents">
            <div class="row visibility">
              <label for="visibility-select" class="inline-label">${_("Visibility:")}</label>
              <select name="visibility-select" id="visibility-select" class='visibility-select'>
                <option value="public">${_("Public")}</option>
                <option value="private">${_("Private")}</option>
              </select>
            </div>
            <div class="row published-alert">
              <p class="edit-draft-message">${_('This unit has been published. To make changes, you must {link_start}edit a draft{link_end}.').format(link_start='<a href="#" class="create-draft">', link_end='</a>')}</p>
              <p class="publish-draft-message">${_('This is a draft of the published unit. To update the live version, you must {link_start}replace it with this draft{link_end}.').format(link_start='<a href="#" class="publish-draft">', link_end='</a>')}</p>
            </div>
            <div class="row status">
              <p>
               % if release_date is not None:
                  ${_("This unit is scheduled to be released to <strong>students</strong> on <strong>{date}</strong> with the subsection {link_start}{name}{link_end}").format(
                      date=release_date,
                      name=subsection.display_name_with_default,
                      link_start=u'<a href="{url}">'.format(url=subsection_url),
                      link_end=u'</a>',
                  )}
               % else:
                  ${_("This unit is scheduled to be released to <strong>students</strong> with the subsection {link_start}{name}{link_end}").format(
                      name=subsection.display_name_with_default,
                      link_start=u'<a href="{url}">'.format(url=subsection_url),
                      link_end=u'</a>',
                  )}
               % endif
              </p>
            </div>
            <div class="row unit-actions">
              <a href="#" class="delete-draft delete-button">${_("Delete Draft")}</a>
              <a href="${draft_preview_link}" target="_blank" class="preview-button">${_("Preview")}</a>
              <a href="${published_preview_link}" target="_blank" class="view-button">${_("View Live")}</a>
            </div>
          </div>
        </div>
        <div class="window unit-location">
          <h4 class="header">${_("Unit Location")}</h4>
          <div class="window-contents">
            <div class="row wrapper-unit-id">
              <p class="unit-id">
                <label for="unit-location-id-input">${_("Unit Identifier:")}</label>
                <input type="text" class="url value" id="unit-location-id-input" value="${unit.location.name}" readonly />
              </p>
            </div>
            <div class="unit-tree-location">
              <ol>
                <li class="section">
                  <a href="${index_url}" class="section-item section-name">
                    <span class="section-name">${section.display_name_with_default}</span>
                  </a>
                  <ol>
                    <li class="subsection">
                      <a href="${subsection_url}" class="section-item">
                        <span class="subsection-name"><span class="subsection-name-value">${subsection.display_name_with_default}</span></span>
                      </a>
                      ${units.enum_units(subsection, actions=False, selected=unit.location)}
                    </li>
                  </ol>
                </li>
              </ol>
             </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</%block>
