src/p4l/templates/p4l/record_update_form.html
author ymh <ymh.work@gmail.com>
Mon, 09 Sep 2013 02:39:50 +0200
changeset 49 fcfa68f39f6b
parent 47 b07f8d11f2b8
child 50 2e52a8a10f8e
permissions -rw-r--r--
model/controler separation. Add controler for thesaurus.

{% extends "p4l/p4l_base.html" %}
{% load static %}
{% load i18n %}

{% block page_title %}{% trans 'Record' %} {{ params.identifier }} - {% trans 'View' %}{% endblock %}

{% block css_page %}
  <link rel="stylesheet" href="{% static 'p4l/lib/css/smoothness/jquery-ui-1.10.3.custom.css' %}">
  <link rel="stylesheet" href="{% static 'p4l/css/semantictree.css' %}">
{% endblock %}

{% block js_page %}
<script type="text/javascript" src="{% url 'django.views.i18n.javascript_catalog' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/angular/angular.min.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/angular/angular-route.min.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/angular/angular-resource.min.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/angular-mod/angular-translate.min.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/jquery-1.9.1.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/jquery-ui-1.10.3.custom.min.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/lib/jquery.jstree.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/js/p4l.js' %}"></script>
<script type="text/javascript" src="{% static 'p4l/js/semantictree.js' %}"></script>
<script type="text/javascript">
    angular.module("recordApp")
        .value('context', {
            record_id: "{{record.identifier}}",
            uri_labels: angular.fromJson('{{uri_labels | safe | addslashes}}'),
            csrf_token: "{{ csrf_token }}",
            urls: {
                record_api: "{% url 'record-detail' identifier=':recordId' %}".replace("\%3A",":")
            }
        })
        .config(['$translateProvider', function($translateProvider) {
            $translateProvider.translations(catalog); //catalog is declared in django.views.i18n.javascript_catalog
        }]);
    
    var sqd = angular.fromJson('{{ subjects_query_dict | safe | addslashes}}');
    for (var k in sqd){
        if (sqd.hasOwnProperty(k)) {
            $("#id_addSubjectText").attr(k,sqd[k]);
        }
    }
</script>
{% endblock %}

{% block content %}
{% verbatim %}
<div ng-app="recordApp" ng-controller="RecordCtrl">
<table class="table record-table">
  <thead>
    <tr><td>{{'property' | translate}}</td><td>{{'value' | translate }}</td></tr>
  </thead>
  <tbody>
    <tr>
      <td>URI</td>
      <td>{{record.uri}}</td>
    </tr>
    <tr>
      <td>{{'identifier' | translate}}</td>
      <td>{{record.identifier}}</td>
    </tr>
    <tr>
      <td>{{'subjects' | translate}}</td>
      <td>
          <ul ng-repeat="subject in record.subjects">
              <li>{{uriLabels[subject]}} <small class="text-muted">({{subject}})</small> <a ng-click='removeFromList(subject, record.subjects)' class="btn btn-default btn-xs"><i class="glyphicon glyphicon-trash"></i></a></li>
          </ul>
          <form class="form-inline" role="form" ng-submit="addSubject()" ng-controller="ThesaurusCtrl">
	        <div class="form-group col-md-8">
	          <input id="id_addSubjectText" ng-model="addSubjectText" class="semantic-tree form-control col-md-10" type="text" placeholder="{{'Add a new subject' | translate}}" required="required"/>
	          {{'or' | translate}} 
	          <span id="dialog-link-container-addSubjectText" class="dialog-link-container ui-state-default ui-corner-all">
	            <a href="#" id="dialog-link-addSubjectText" class="btn dialog-link" title="Browse">{{'Browse' | translate}}</a>
	          </span>
	          <span id="dialog-addSubjectText" class="dialog" title="Select term"><span id="term-tree-addSubjectText"></span></span>
	        </div>
	        <div class="form-group">
	          <button type="submit" class="btn btn-primary">{{'Add' | translate}}</button>
	        </div>
	      </form>
      </td>
    </tr>
    <tr>
        <td>{{'notes' | translate}}</td>
        <td><textarea id="record-notes-input" class="form-control" ng-model="record.notes"></textarea></td>
    </tr>
  </tbody>
</table>
<button ng-click="submitRecord()">{{ 'Save' | translate }}</button>
</div>
{% endverbatim %}
{% endblock %}