aboutsummaryrefslogtreecommitdiffstats
path: root/etherpad/src/plugins/twitterStyleTags/templates/tagBrowser.ejs
blob: 955d2e60715fde67ad20df370c5750c036a27bbe (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<% /* 
Copyright 2009 Google Inc.
Copyright 2010 Pita, Peter Martischka <petermartischka@googlemail.com>

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS-IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. */ %>
<%
 template.inherit('page.ejs');
 helpers.setHtmlTitle("EtherPad: Browse tags");
 helpers.includeCss("plugins/twitterStyleTags/tagBrowser.css");
 helpers.includeCss("plugins/twitterStyleTags/pad.css");
 helpers.addToHead('\n<link rel="alternate" href="/ep/tag/?query=' + tagsToQuery(tags, antiTags) + '&format=rss" type="application/rss+xml" title="Query results as RSS" />\n');

 function inArray(item, arr) {
   for (var i = 0; i < arr.length; i++)
     if (arr[i] == item)
       return true;
   return false;
 }
%>
<% template.define('docBarTitle', function() { var ejs_data=''; %>
  <td id="docbarpadtitle"><span>Browse Tags</span></td>
<% return ejs_data; }); %>

<% template.define('sideBar', function() { var ejs_data=''; %>
  <div id="padusers">
   <% if (isProAccountEnabled()) { %>
     <a href="/ep/pad/newpad" style="padding: 25px 0" id="home-newpad">
      Create new pad
     </a>       
     <a href="/ep/pro-signup/" style="padding: 25px 0" id="home-newteam">
      Create new team
     </a>
   <% } else { %>
     <a href="/ep/pad/newpad" id="home-newpad">
      Create new pad
     </a>
   <% } %>
  </div>

  <div id="hdraggie"><!-- --></div>

  <div id="padchat"><iframe src="<%= config['motdPage'] %>" width="100%" height="100%"></iframe></div>
<% return ejs_data; }); %>

<% template.define('editBarItemsLeft', function() { var ejs_data=''; %>
  <td>
    Query:
    <% if (tags.length == 0 && antiTags.length == 0) { %>
      Latest changed pads
    <% } else { %>
      <% for (i = 0; i < tags.length; i++) { %>
	<a href="/ep/tag/?query=<%= tagsToQuery(tags.filter(function (tag) { return tag != tags[i]}), antiTags) %>" class="padtag" title="<%= tags[i] %> matches">#<%= tags[i] %></a>
      <% } %>
      <% for (i = 0; i < antiTags.length; i++) { %>
	<a href="/ep/tag/?query=<%= tagsToQuery(tags, antiTags.filter(function (tag) { return tag != antiTags[i]})) %>" class="anti_padtag" title="<%= antiTags[i] %> matches">!#<%= antiTags[i] %></a>
      <% } %>
    <% } %>
  </td>
<% return ejs_data; }); %>

<% template.define('contentArea', function() { var ejs_data=''; %>
  <div id="editorcontainer">
   <div class="query-refiner">
    <h1>Search for pads that have the tag</h1>
    <% for (i = 0; i < newTags.length; i++) { %>
     <a href="/ep/tag/?query=<%= tagsToQuery(tags.concat([newTags[i].tagname]),antiTags) %>" class="padtag" title="<%= newTags[i].matches %> matches">#<%= newTags[i].tagname %></a>
    <% } %>

    <h1>Search for pads that <em>don't</em> have the tag</h1>
    <% for (i = 0; i < newTags.length; i++) { %>
     <a href="/ep/tag/?query=<%= tagsToQuery(tags,antiTags.concat([newTags[i].tagname])) %>" class="anti_padtag" title="<%= newTags[i].antimatches %> matches">!#<%= newTags[i].tagname %></a>
    <% } %>
   </div>

   <dl>
    <% for (i = 0; i < matchingPads.length; i++) { %>
    <%
	 var matchingPadId = matchingPads[i].ID;
	 var matchingPadUrl = matchingPadId;
	 if (!inArray('writable', matchingPads[i].TAGS)) {
	   matchingPadId = padIdToReadonly(matchingPads[i].ID);
	   matchingPadUrl = 'ep/pad/view/' + matchingPadId + '/latest';
	 }
    %>
     <dt><a href="/<%= matchingPadUrl %>"><%= matchingPadId %></a><dt>
     <dd>
      <% for (j = 0; j < matchingPads[i].TAGS.length; j++) { %>
       <a href="/ep/tag/?query=<%= tagsToQuery(tags.concat([matchingPads[i].TAGS[j]]), antiTags) %>" class="padtag" title="<%= matchingPads[i].TAGS[j] %> matches">#<%= matchingPads[i].TAGS[j] %></a>
      <% } %>
     </dd>
    <% } %>
   </dl>
  </div>
<% return ejs_data; }); %>