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&amp;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>