source: documentViewer/zpt/layer_text_annotator.zpt @ 586:230ba358da3c

Last change on this file since 586:230ba358da3c was 557:abcb67f5cab4, checked in by casties, 12 years ago

better configurable annotation server.

File size: 6.4 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<metal:block metal:define-macro="html_head" tal:condition="python:'annotator' in viewLayers">
6  <!--  annotator -->
7  <link rel="stylesheet" type="text/css"
8    tal:attributes="href string:$rootUrl/template/annotator_files/css/annotator.css" />
9
10  <script
11    tal:attributes="src string:$rootUrl/template/annotator_files/lib/vendor/json2.js"></script>
12  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/extensions.js"></script>
13  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/console.js"></script>
14  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/class.js"></script>
15  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/range.js"></script>
16  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/annotator.js"></script>
17  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/widget.js"></script>
18  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/editor.js"></script>
19  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/viewer.js"></script>
20  <script
21    tal:attributes="src string:$rootUrl/template/annotator_files/lib/notification.js"></script>
22  <script
23    tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/store.js"></script>
24  <script
25    tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/permissions.js"></script>
26  <!-- <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/annotateitpermissions.js"></script> -->
27  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/auth.js"></script>
28  <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/tags.js"></script>
29  <script
30    tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/unsupported.js"></script>
31  <!-- <script tal:attributes="src string:$rootUrl/template/annotator_files/lib/plugin/filter.js"></script> -->
32
33  <script type="text/javascript"
34    tal:define="global annServerUrl string:http://tuxserve03.mpiwg-berlin.mpg.de/AnnotationManager;
35    annUrl python:'http://echo.mpiwg-berlin.mpg.de/documents%s?pn=%s'%(docinfo['documentPath'],pageinfo['pn']);
36    resUrl python:'http://echo.mpiwg-berlin.mpg.de/documents%s'%(docinfo['documentPath']);
37    global annUser python:here.getAuthenticatedUser(anon='anonymous');
38    global annGroup python:request.get('annotator_group', None);
39    permUser python:test(annGroup, 'group:%s'%annGroup, annUser);"
40    tal:content="structure string:
41    var annotatorServerUrl='$annServerUrl';
42    var annotatorPageUrl='$annUrl';
43    var annotatorResourceUrl='$resUrl';
44    var annotatorUser='$annUser';
45    var permissionUser='$permUser';"></script>
46
47  <script type="text/javascript">
48            // <!--
49            $(document).ready(function() {
50                // annotator
51                var elem = $('div.pageContent').get(0);
52                var uri = annotatorPageUrl;
53                var devAnnotator = new Annotator(elem).addPlugin('Auth', {
54                    tokenUrl : 'template/token?user='+annotatorUser
55                }).addPlugin('Permissions', {
56                    permissions: {
57                        'read':   [],
58                        'update': [permissionUser],
59                        'delete': [permissionUser],
60                        'admin':  [permissionUser]
61                    },
62                    user : permissionUser,
63                    userString : function(user) {
64                        if (user && user.name) {
65                            return user.name;
66                        }
67                        return user;
68                    },
69                    userId : function(user) {
70                        if (user && user.id) {
71                            return user.id;
72                        }
73                        return user;
74                    }
75                }).addPlugin('Store', {
76                    prefix: annotatorServerUrl+'/annotator',
77                    annotationData : {
78                        'uri' : uri,
79                        'resource' : annotatorResourceUrl
80                    },
81                    loadFromSearch : {
82                        'limit' : 20,
83                        'uri' : uri
84                    }
85                }).addPlugin('Tags'
86                );
87            });
88        // -->
89        </script>
90
91</metal:block>
92</head>
93<body>
94  <!-- right-side options -->
95  <div class="col buttons">
96    <!-- LAYER DISPLAY OPTION  -->
97    <ul>
98      <li metal:define-macro="layer_select_li">
99        <input type="checkbox" class="autosubmit" name="viewLayer" value="annotator"
100          tal:attributes="checked python:'annotator' in viewLayers" /> Annotator
101      </li>
102    </ul>
103  </div>
104
105  <metal:block metal:define-macro="options_box" tal:condition="python:'annotator' in viewLayers">
106    <!-- BEGIN ANNOTATIONS -->
107    <div class="options">
108      <h4>Annotator</h4>
109      <p>
110        User "<span tal:replace="annUser" />"<span tal:condition="annGroup" tal:content="string: ($annGroup)"/>.
111      </p>
112      <!-- TODO: login button -->
113      <form class="autosubmit" tal:attributes="action viewerUrl">
114        <input type="hidden" tal:define="params python:here.getParams(params={'annotator_group':None});" tal:repeat="param params"
115          tal:attributes="name param; value python:params[param]" />
116        <p>
117          In group
118          <select class="autosubmit" name="annotator_group">
119            <option value="" tal:attributes="selected not:annGroup;"> </option>
120            <option
121              tal:repeat="group python:here.getAnnotatorGroupsForUser(user=annUser,annotationServerUrl=annServerUrl)"
122              tal:attributes="value group/id; selected python:group['id']==annGroup;" tal:content="group/name" />
123          </select> <br />
124          <input type="submit" value="Go!" />
125        </p>
126      </form>
127      <p tal:define="std modules/Products.PythonScripts.standard">
128        <a class="button" tal:attributes="href python:'%s/login/login?came_from=%s'%(viewerUrl,std.url_quote(here.getLink()))">log in</a>
129        <!--  <a class="button" tal:attributes="href python:'%s/login/logout?came_from=%s'%(viewerUrl,std.url_quote(here.getLink()))">log out</a> -->
130      </p>
131    </div>
132    <!-- END ANNOTATIONS -->
133  </metal:block>
134
135</body>
136
137</html>
Note: See TracBrowser for help on using the repository browser.