Almirah 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/almirah/doc_fabric.rb +1 -0
- data/lib/almirah/doc_items/controlled_paragraph.rb +10 -1
- data/lib/almirah/doc_items/doc_item.rb +2 -0
- data/lib/almirah/doc_items/heading.rb +36 -0
- data/lib/almirah/doc_types/base_document.rb +2 -0
- data/lib/almirah/doc_types/traceability.rb +16 -7
- data/lib/almirah/templates/page.html +28 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4194e03230075235a57516fed73b44215dde4a7cb42474b641bdbd7ce8a6ad55
|
4
|
+
data.tar.gz: f1a4f05ca5b4cf643cd179019c67cb08ea69c8876a235dfa368e99ec782ab21f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56dc9e44de93dccbaf9424d6b654c00e08591b9cdcd62b5061d3356441b68f3c5b6a61778cc9d78bcf277fceb8c25d1b6f9bf34ca6f1a0a0f0284ce361d346a2
|
7
|
+
data.tar.gz: 59790d27191f78845e8b7ca8e19f0c26858234dbb419f248de5034a1aac3451ed9afbcc26905fa062c2efc13b0613f3a60e2b9e57b590c3f6cd01ff55df83809
|
data/lib/almirah/doc_fabric.rb
CHANGED
@@ -43,7 +43,16 @@ class ControlledParagraph < Paragraph
|
|
43
43
|
if @down_links.length == 1
|
44
44
|
s += "\t\t<td class=\"item_id\"><a href=\"./../#{down_link_doc_name}/#{down_link_doc_name}.html##{@down_links[0].id}\" class=\"external\">#{@down_links[0].id}</a></td>\n"
|
45
45
|
else
|
46
|
-
s += "\t\t<td class=\"item_id\"
|
46
|
+
s += "\t\t<td class=\"item_id\">"
|
47
|
+
s += "<div id=\"DL_#{@id}\" style=\"display: block;\">"
|
48
|
+
s += "<a href=\"#\" onclick=\"downlink_OnClick(this.parentElement); return false;\" class=\"external\">#{@down_links.length}</a>"
|
49
|
+
s += "</div>"
|
50
|
+
s += "<div id=\"DLS_#{@id}\" style=\"display: none;\">"
|
51
|
+
@down_links.each do |lnk|
|
52
|
+
s += "\t\t\t<a href=\"./../#{lnk.parent_doc.id}/#{lnk.parent_doc.id}.html##{lnk.id}\" class=\"external\">#{lnk.id}</a>\n<br>"
|
53
|
+
end
|
54
|
+
s += "</div>"
|
55
|
+
s += "</td>\n"
|
47
56
|
end
|
48
57
|
else
|
49
58
|
s += "\t\t<td class=\"item_id\"></td>\n"
|
@@ -4,11 +4,47 @@ class Heading < Paragraph
|
|
4
4
|
|
5
5
|
attr_accessor :level
|
6
6
|
attr_accessor :anchor_id
|
7
|
+
attr_accessor :section_number
|
8
|
+
|
9
|
+
@@global_section_number = ""
|
7
10
|
|
8
11
|
def initialize(text, level)
|
9
12
|
@text = text
|
10
13
|
@level = level
|
11
14
|
@anchor_id = getTextWithoutSpaces()
|
15
|
+
|
16
|
+
if @@global_section_number = ""
|
17
|
+
@@global_section_number = "1"
|
18
|
+
for n in 1..(level-1) do
|
19
|
+
@@global_section_number += ".1"
|
20
|
+
end
|
21
|
+
else
|
22
|
+
previous_level = @@global_section_number.split(".").length
|
23
|
+
|
24
|
+
if previous_level == level
|
25
|
+
|
26
|
+
a = @@global_section_number.split(".")
|
27
|
+
a[-1] = (a[-1].to_i() +1).to_s
|
28
|
+
@@global_section_number = a.join(".")
|
29
|
+
|
30
|
+
elsif previous_level < level
|
31
|
+
|
32
|
+
a = @@global_section_number.split(".")
|
33
|
+
a.push("1")
|
34
|
+
@@global_section_number = a.join(".")
|
35
|
+
|
36
|
+
else # previous_level > level
|
37
|
+
|
38
|
+
a = @@global_section_number.split(".")
|
39
|
+
a.pop
|
40
|
+
@@global_section_number = a.join(".")
|
41
|
+
end
|
42
|
+
end
|
43
|
+
@section_number = @@global_section_number
|
44
|
+
end
|
45
|
+
|
46
|
+
def get_section_info
|
47
|
+
s = @section_number + " " + @text
|
12
48
|
end
|
13
49
|
|
14
50
|
def to_html
|
@@ -36,7 +36,10 @@ class Traceability < BaseDocument
|
|
36
36
|
html_rows.append('')
|
37
37
|
s = "<h1>#{@title}</h1>\n"
|
38
38
|
s += "<table class=\"controlled\">\n"
|
39
|
-
s += "\t<thead> <th>#</th> <th style='font-weight: bold;'>#{@top_doc.title}</th>
|
39
|
+
s += "\t<thead> <th>#</th> <th style='font-weight: bold;'>#{@top_doc.title}</th> "
|
40
|
+
s += "<th>#</th> <th style='font-weight: bold;'>#{@bottom_doc.title}</th> "
|
41
|
+
s += "<th style='font-weight: bold;'>Document Section</th>"
|
42
|
+
s += "</thead>\n"
|
40
43
|
html_rows.append s
|
41
44
|
|
42
45
|
sorted_items = @top_doc.controlled_items.sort_by { |w| w.id }
|
@@ -67,11 +70,13 @@ class Traceability < BaseDocument
|
|
67
70
|
|
68
71
|
top_item.down_links.each do |bottom_item|
|
69
72
|
bottom_f_text = bottom_item.format_string( bottom_item.text )
|
73
|
+
document_section = bottom_item.parent_heading.get_section_info
|
70
74
|
s += "\t<tr>\n"
|
71
75
|
s += "\t\t<td class=\"item_id\" #{id_color}><a href=\"./../#{top_item.parent_doc.id}/#{top_item.parent_doc.id}.html##{top_item.id}\" class=\"external\">#{top_item.id}</a></td>\n"
|
72
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
76
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'>#{top_f_text}</td>\n"
|
73
77
|
s += "\t\t<td class=\"item_id\"><a href=\"./../#{bottom_item.parent_doc.id}/#{bottom_item.parent_doc.id}.html##{bottom_item.id}\" class=\"external\">#{bottom_item.id}</a></td>\n"
|
74
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
78
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'>#{bottom_f_text}</td>\n"
|
79
|
+
s += "\t\t<td class=\"item_text\" style='width: 16%;'>#{document_section}</td>\n"
|
75
80
|
s += "\t</tr>\n"
|
76
81
|
end
|
77
82
|
|
@@ -83,11 +88,14 @@ class Traceability < BaseDocument
|
|
83
88
|
if bottom_item.parent_doc.id == @bottom_doc.id
|
84
89
|
|
85
90
|
bottom_f_text = bottom_item.format_string( bottom_item.text )
|
91
|
+
document_section = bottom_item.parent_heading.get_section_info
|
92
|
+
|
86
93
|
s += "\t<tr>\n"
|
87
94
|
s += "\t\t<td class=\"item_id\" #{id_color}><a href=\"./../#{top_item.parent_doc.id}/#{top_item.parent_doc.id}.html##{top_item.id}\" class=\"external\">#{top_item.id}</a></td>\n"
|
88
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
95
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'>#{top_f_text}</td>\n"
|
89
96
|
s += "\t\t<td class=\"item_id\"><a href=\"./../#{bottom_item.parent_doc.id}/#{bottom_item.parent_doc.id}.html##{bottom_item.id}\" class=\"external\">#{bottom_item.id}</a></td>\n"
|
90
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
97
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'>#{bottom_f_text}</td>\n"
|
98
|
+
s += "\t\t<td class=\"item_text\" style='width: 16%;'>#{document_section}</td>\n"
|
91
99
|
s += "\t</tr>\n"
|
92
100
|
end
|
93
101
|
end
|
@@ -95,9 +103,10 @@ class Traceability < BaseDocument
|
|
95
103
|
else
|
96
104
|
s += "\t<tr>\n"
|
97
105
|
s += "\t\t<td class=\"item_id\"><a href=\"./../#{top_item.parent_doc.id}/#{top_item.parent_doc.id}.html##{top_item.id}\" class=\"external\">#{top_item.id}</a></td>\n"
|
98
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
106
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'>#{top_f_text}</td>\n"
|
99
107
|
s += "\t\t<td class=\"item_id\"></td>\n"
|
100
|
-
s += "\t\t<td class=\"item_text\" style='width:
|
108
|
+
s += "\t\t<td class=\"item_text\" style='width: 34%;'></td>\n"
|
109
|
+
s += "\t\t<td class=\"item_text\" style='width: 16%;'></td>\n"
|
101
110
|
s += "\t</tr>\n"
|
102
111
|
end
|
103
112
|
return s
|
@@ -174,6 +174,15 @@
|
|
174
174
|
font-size: 1.5em;
|
175
175
|
font-family: "Trebuchet MS", Verdana, sans-serif;
|
176
176
|
}
|
177
|
+
#top_nav a.split {
|
178
|
+
float: right;
|
179
|
+
color: white;
|
180
|
+
text-align: center;
|
181
|
+
padding: 4px 6px;
|
182
|
+
text-decoration: none;
|
183
|
+
font-size: 1.5em;
|
184
|
+
font-family: "Trebuchet MS", Verdana, sans-serif;
|
185
|
+
}
|
177
186
|
#top_nav a:hover {
|
178
187
|
background-color: black;
|
179
188
|
color: white;
|
@@ -194,12 +203,31 @@ function closeNav() {
|
|
194
203
|
document.getElementById("nav_pane").style.visibility = "hidden";
|
195
204
|
console.log("Mouse Out");
|
196
205
|
}
|
206
|
+
|
207
|
+
window.onload = (event) => {
|
208
|
+
for (var i = 0, n = document.images.length; i < n; i++)
|
209
|
+
{
|
210
|
+
elem = document.images[i];
|
211
|
+
if (elem.width > 640)
|
212
|
+
{
|
213
|
+
elem.style.width = "640px";
|
214
|
+
}
|
215
|
+
}
|
216
|
+
};
|
217
|
+
|
218
|
+
function downlink_OnClick(clicked){
|
219
|
+
clicked.style.display = 'none';
|
220
|
+
id_parts = clicked.id.split("_");
|
221
|
+
required_id = "DLS_" + id_parts[1];
|
222
|
+
document.getElementById(required_id).style.display = 'block';
|
223
|
+
}
|
197
224
|
</script>
|
198
225
|
</head>
|
199
226
|
<body>
|
200
227
|
<div id="top_nav">
|
201
228
|
<a href="./../../index.html"><span><i class="fa fa-home" aria-hidden="true"></i></span> Home</a>
|
202
229
|
<!--a href="javascript:void(0)"> About</a-->
|
230
|
+
<a class="split">{{DOCUMENT_TITLE}}</a>
|
203
231
|
</div>
|
204
232
|
<div id="main">
|
205
233
|
<div id="nav_pane">
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: Almirah
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Oleksandr Ivanov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-03-
|
11
|
+
date: 2024-03-13 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: The software part of the Almirah framework
|
14
14
|
email: oleksandr.ivanov.development@gmail.com
|