diff_blog.html
1 <@box>
2 <@boxHeader title='Diff ${blog.contentLabel}' i18nTitleKey='Diff de ${blog.contentLabel}' boxTools=true>
3 <form action="jsp/admin/plugins/blog/ManageBlogs.jsp" class="form-inline">
4 <input type="hidden" name="view" value="diffBlog">
5 <input type="hidden" name="id" value="${blog.id}">
6
7 <div class="form-group">
8 <select name="blog_version2" class="form-control">
9 <#list blog_version_list as blog_tmp>
10 <option value="${blog_tmp.version}" <#if blog_tmp.version == blog2.version>selected="selected"</#if> >#i18n{blog.manage_blogs.columnVersion} ${blog_tmp.version} - ${blog_tmp.updateDate}</option>
11 </#list>
12 </select>
13 </div>
14 <div class="form-group">
15 <select name="blog_version2" class="form-control" disabled>
16 <#list blog_version_list as blog_tmp>
17 <option value="${blog_tmp.version}" <#if blog_tmp.version == blog.version>selected="selected" </#if> >#i18n{blog.manage_blogs.columnVersion} ${blog_tmp.version} - ${blog_tmp.updateDate}</option>
18 </#list>
19 </select>
20 </div>
21 <div class="form-group">
22 <button type="submit" class="btn btn-default" name="button_search" value="1">#i18n{blog.diff_blog.labelButtonCompare}</button>
23 </div>
24
25 <div class="form-group">
26 <a href="jsp/admin/plugins/blog/ManageBlogs.jsp?view=historyBlog&id=${blog.id}" class="btn btn-primary btn-sm notif" title="#i18n{blog.manage_blogs.labelHistory} ${blog.version} versions ">
27 <i class="fa fa-history fa-fw"></i> #i18n{blog.manage_blogs.labelHistory} ( ${blog.version} versions )
28 </a>
29 </div>
30 </form>
31 </@boxHeader>
32 <@boxBody>
33 <div class="row">
34 <div class="col-xs-12 col-sm-12 col-md-6">
35 <h3>Vue des modifications </h3>
36 <div class="well">${blog_diff!}</div>
37 </div>
38 <div class="col-xs-12 col-sm-12 col-md-6">
39 <div class="row">
40 <div class="col-xs-12 col-sm-12">
41 <h3> Version ${blog2.version} <small>${blog2.updateDate}</small>
42 <a href="jsp/admin/plugins/blog/ManageBlogs.jsp?view=modifyBlog&id=${blog.id}&blog_version=${blog.version}"
43 class="btn btn-primary btn-sm" title="#i18n{blog.history_blog.labelReset} ${blog.version}">
44 <i class="fa fa-undo"></i>
45 </a>
46 </h3>
47 <div class="well">${blog2.htmlContent}</div>
48 </div>
49 <div class="col-xs-12 col-sm-12">
50 <h3> Version ${blog.version} <small>${blog.updateDate}</small></h3>
51 <div class="well">${blog.htmlContent}</div>
52 </div>
53 </div>
54 </div>
55 </div>
56 </@boxBody>
57 </@box>
58
59 <script type = 'text/javascript'>
60 //lifted from daisy diff.js, just this part without the whole dojo/prev/next
61 function updateOverlays(){
62 var images = document.getElementsByTagName("img");
63 for (var i = 0; i < images.length; i++) {
64 var image = images [i];
65 if (image.getAttribute('changeType') == "diff-removed-image" || image.getAttribute('changeType') == "diff-added-image") {
66 var filter;
67 var existingDivs = image.parentNode.getElementsByTagName('div');
68 if(existingDivs.length > 0 && existingDivs[0].className==image.getAttribute("changeType")){
69 filter = existingDivs[0];
70 }else {
71 filter = document.createElement("div");
72 filter.className= image.getAttribute("changeType");
73 }
74 //TODO this still places the div in a bad place sometimes, find a way to do it correctly !
75 // In particular this doesn't work very well with overflow:auto
76 filter.style.width = image.offsetWidth-4 + "px";
77 filter.style.height = image.offsetHeight-4 + "px";
78 filter.style.top = image.offsetTop + "px";
79 filter.style.left = image.offsetLeft + "px";
80 filter.style.position = "absolute";
81
82
83 if(existingDivs.length == 0 ){
84 image.parentNode.insertBefore(filter, image);
85 }
86 }
87 }
88 }
89 $( window ).load( updateOverlays );
90 $( window ).resize( updateOverlays );
91 </script>