Mercurial > p > roundup > code
annotate roundup/cgi/KeywordsExpr.py @ 8264:09e8d1a4c796
docs: clarify wording, fix index, add superseder link
Make superseder, messages etc. properties index entries point to the
right place.
Link to description of using Superseder in the original overview.
fix bad wording on boolean properties.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Wed, 08 Jan 2025 11:39:54 -0500 |
| parents | 07ce4e4110f5 |
| children |
| rev | line source |
|---|---|
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
1 # This module is free software, you may redistribute it |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
2 # and/or modify under the same terms as Python. |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
3 |
|
6416
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
4 WINDOW_CONTENT = r''' |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
5 <h3>Keyword Expression Editor:</h3> |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
6 <hr/> |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
7 <div id="content"></div> |
|
5217
17b213eab274
Add nonce to embedded script references.
John Rouillard <rouilj@ieee.org>
parents:
5132
diff
changeset
|
8 <script nonce="%(nonce)s" type="text/javascript"> |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
9 <!-- |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
10 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
11 var NOT_OP = "-2"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
12 var AND_OP = "-3"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
13 var OR_OP = "-4"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
14 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
15 var original = "%(original)s"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
16 var current = original; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
17 var undo = []; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
18 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
19 var KEYWORDS = [ |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
20 %(keywords)s |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
21 ]; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
22 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
23 function find_keyword(x) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
24 for (var i = 0; i < KEYWORDS.length; ++i) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
25 if (KEYWORDS[i][0] == x) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
26 return KEYWORDS[i][1]; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
27 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
28 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
29 return "unknown"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
30 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
31 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
32 function Equals(x) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
33 this.x = x; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
34 this.brackets = false; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
35 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
36 this.infix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
37 return find_keyword(this.x); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
38 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
39 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
40 this.postfix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
41 return this.x; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
42 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
43 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
44 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
45 function Not(x) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
46 this.x = x; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
47 this.brackets = false; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
48 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
49 this.infix = function() { |
|
7228
07ce4e4110f5
flake8 fixes: whitespace, remove unused imports
John Rouillard <rouilj@ieee.org>
parents:
6416
diff
changeset
|
50 return this.x.brackets |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
51 ? "NOT(" + this.x.infix() + ")" |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
52 : "NOT " + this.x.infix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
53 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
54 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
55 this.postfix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
56 return this.x.postfix() + "," + NOT_OP; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
57 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
58 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
59 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
60 function And(x, y) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
61 this.x = x; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
62 this.y = y; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
63 this.brackets = true; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
64 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
65 this.infix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
66 var a = this.x.brackets ? "(" + this.x.infix() + ")" : this.x.infix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
67 var b = this.y.brackets ? "(" + this.y.infix() + ")" : this.y.infix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
68 return a + " AND " + b; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
69 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
70 this.postfix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
71 return this.x.postfix() + "," + this.y.postfix() + "," + AND_OP; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
72 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
73 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
74 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
75 function Or(x, y) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
76 this.x = x; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
77 this.y = y; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
78 this.brackets = true; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
79 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
80 this.infix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
81 var a = this.x.brackets ? "(" + this.x.infix() + ")" : this.x.infix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
82 var b = this.y.brackets ? "(" + this.y.infix() + ")" : this.y.infix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
83 return a + " OR " + b; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
84 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
85 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
86 this.postfix = function() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
87 return this.x.postfix() + "," + this.y.postfix() + "," + OR_OP; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
88 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
89 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
90 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
91 function trim(s) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
92 return s.replace (/^\s+/, '').replace(/\s+$/, ''); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
93 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
94 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
95 function parse(s) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
96 var operators = s.split(","); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
97 var stack = []; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
98 for (var i = 0; i < operators.length; ++i) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
99 var operator = trim(operators[i]); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
100 if (operator == "") continue; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
101 if (operator == NOT_OP) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
102 stack.push(new Not(stack.pop())); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
103 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
104 else if (operator == AND_OP) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
105 var a = stack.pop(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
106 var b = stack.pop(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
107 stack.push(new And(b, a)); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
108 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
109 else if (operator == OR_OP) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
110 var a = stack.pop(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
111 var b = stack.pop(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
112 stack.push(new Or(b, a)); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
113 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
114 else { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
115 stack.push(new Equals(operator)); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
116 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
117 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
118 return stack.length > 0 ? stack.pop() : null; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
119 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
120 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
121 function render_select(handler) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
122 var out = '<select name="keyword" id="keyword"'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
123 if (handler != null) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
124 out += ' onchange="' + handler + '"'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
125 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
126 out += '>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
127 out += '<option value="-1"><\/option>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
128 for (var i = 0; i < KEYWORDS.length; ++i) { |
|
7228
07ce4e4110f5
flake8 fixes: whitespace, remove unused imports
John Rouillard <rouilj@ieee.org>
parents:
6416
diff
changeset
|
129 out += '<option value="' + KEYWORDS[i][0] + |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
130 '">' + KEYWORDS[i][1] + "<\/option>"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
131 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
132 out += '<\/select>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
133 return out; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
134 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
135 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
136 function first_select() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
137 var value = document.getElementById("keyword").value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
138 current = value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
139 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
140 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
141 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
142 function not_clicked() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
143 var expr = parse(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
144 if (expr == null) return; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
145 undo.push(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
146 current = expr instanceof Not |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
147 ? expr.x.postfix() |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
148 : new Not(expr).postfix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
149 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
150 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
151 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
152 function not_b_wrap(expr) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
153 var value = document.getElementById("not_b").checked; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
154 return value ? new Not(expr) : expr; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
155 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
156 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
157 function and_clicked() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
158 var expr = parse(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
159 if (expr == null) return; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
160 var value = document.getElementById("keyword").value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
161 if (value == "-1") return; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
162 undo.push(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
163 current = new And(expr, not_b_wrap(new Equals(value))).postfix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
164 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
165 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
166 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
167 function or_clicked() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
168 var expr = parse(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
169 if (expr == null) return; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
170 var value = document.getElementById("keyword").value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
171 if (value == "-1") return; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
172 undo.push(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
173 current = new Or(expr, not_b_wrap(new Equals(value))).postfix(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
174 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
175 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
176 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
177 function undo_clicked() { |
|
7228
07ce4e4110f5
flake8 fixes: whitespace, remove unused imports
John Rouillard <rouilj@ieee.org>
parents:
6416
diff
changeset
|
178 current = undo.length > 0 |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
179 ? undo.pop() |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
180 : original; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
181 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
182 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
183 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
184 function enable_and_or() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
185 var value = document.getElementById("keyword").value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
186 value = value == "-1"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
187 document.getElementById("and").disabled = value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
188 document.getElementById("or").disabled = value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
189 document.getElementById("not_b").disabled = value; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
190 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
191 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
192 function create() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
193 var expr = parse(current); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
194 var out = ""; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
195 if (expr == null) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
196 out += "Keyword: "; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
197 out += render_select("first_select();"); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
198 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
199 else { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
200 out += '<table><tr>' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
201 out += '<td><input type="button" name="not" onclick="not_clicked();" value="NOT"\/><\/td>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
202 out += "<td><tt><strong>" + expr.infix() + "<\/strong><\/tt><\/td>"; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
203 out += '<td><table>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
204 out += '<tr><td><input type="button" id="and" name="and" onclick="and_clicked();"' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
205 + ' value="AND" disabled="disabled"\/><\/td><\/tr>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
206 out += '<tr><td><input type="button" id="or" name="or" onclick="or_clicked();"' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
207 + ' value="OR" disabled="disabled"\/><\/td><\/tr>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
208 out += '<\/table><\/td>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
209 out += '<td><label for="not_b">NOT<\/label><br/>' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
210 + '<input type="checkbox" name="not_b" id="not_b" disabled="disabled"\/><\/td>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
211 out += '<td>' + render_select("enable_and_or();") + '<\/td>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
212 out += '<\/tr><\/table>' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
213 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
214 out += '<hr\/>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
215 if (undo.length > 0 || (undo.length == 0 && current != original)) { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
216 out += '<input type="button" onclick="undo_clicked();" value="Undo"\/>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
217 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
218 out += '<input type="button" onclick="modify_main();" value="Apply"\/>' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
219 + '<input type="button" onclick="window.close();" value="Close Window"\/>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
220 return out; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
221 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
222 |
|
6416
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
223 function main_display() { |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
224 var out = ''; |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
225 out += '<span id="display_%(prop)s">' + parse(current).infix() + '<\/span>'; |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
226 return out; |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
227 } |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
228 |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
229 function main_input() { |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
230 var out = ''; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
231 out += '<input type="hidden" name="%(prop)s" value="' + current + '"\/>'; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
232 return out; |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
233 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
234 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
235 function modify_main() { |
|
6416
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
236 /* if display form of expression exists, overwrite */ |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
237 display = window.opener.document.getElementById('display_%(prop)s'); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
238 if ( display ) { |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
239 display.outerHTML = main_display(); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
240 } |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
241 |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
242 /* overwrite select if present, otherwise overwrite the hidden input */ |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
243 input = window.opener.document.querySelector('select[name="%(prop)s"]'); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
244 if (! input) { |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
245 input = window.opener.document.querySelector('input[name="%(prop)s"]'); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
246 } |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
247 |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
248 /* if display exists, only update hidden input. If display doesn't |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
249 exist, inject both hidden input and display. */ |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
250 if ( display ) { |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
251 content = main_input(); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
252 } else { |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
253 content = main_input() + main_display(); |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
254 } |
|
99d344aa825d
- issue2550648 - keyword boolean search multiple issues
John Rouillard <rouilj@ieee.org>
parents:
6046
diff
changeset
|
255 input.outerHTML = content; |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
256 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
257 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
258 function set_content() { |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
259 document.getElementById("content").innerHTML = create(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
260 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
261 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
262 set_content(); |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
263 //--> |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
264 </script> |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
265 ''' |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
266 |
| 6046 | 267 |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
268 def list_nodes(request): |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
269 prop = request.form.getfirst("property") |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
270 cls = request.client.db.getclass(prop) |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
271 items = [] |
|
5132
0142b4fb5a2d
issue2550648 - partial fix for problem in this issue. Ezio Melotti
John Rouillard <rouilj@ieee.org>
parents:
4467
diff
changeset
|
272 for nodeid in cls.getnodeids(retired=0): |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
273 l = cls.getnode(nodeid).items() |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
274 l = dict([x for x in l if len(x) == 2]) |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
275 try: |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
276 items.append((l['id'], l['name'])) |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
277 except KeyError: |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
278 pass |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
279 items.sort(key=lambda x: int(x[0])) |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
280 return items |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
281 |
| 6046 | 282 |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
283 def items_to_keywords(items): |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
284 return ',\n '.join(['["%s", "%s"]' % x for x in items]) |
| 6046 | 285 |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
286 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
287 def render_keywords_expression_editor(request): |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
288 prop = request.form.getfirst("property") |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
289 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
290 window_content = WINDOW_CONTENT % { |
| 6046 | 291 'prop': prop, |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
292 'keywords': items_to_keywords(list_nodes(request)), |
|
5217
17b213eab274
Add nonce to embedded script references.
John Rouillard <rouilj@ieee.org>
parents:
5132
diff
changeset
|
293 'original': '', |
|
17b213eab274
Add nonce to embedded script references.
John Rouillard <rouilj@ieee.org>
parents:
5132
diff
changeset
|
294 'nonce': request.client.client_nonce |
|
4467
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
295 } |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
296 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
297 return window_content |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
298 |
|
e46b15b0bc25
Adding missing files from last commit (of 2010-11-08T11:21:02)...
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents:
diff
changeset
|
299 # vim: set et sts=4 sw=4 : |
