Attachment Details
Not logged in
Overview

Artifact ID: dfedad424537842c6f04b00a183426cad70afe22
Ticket: fd5f24a5ca7e85d7290de7b1a0942f9bf9ce707c
Date: 2010-12-01 21:29:41
User: anonymous
Artifact Attached: 2a217daa993d333e6d96ff43b5693f96b0d4ea41
Filename:additional_header_stuff.txt
Description:
Content Appended
     1  
     2  <style type="text/css">
     3  .diff {padding: .5em; border: 1px solid #ccc;}
     4  .added {padding-left: .5em; border-left: .5em solid #00f;}
     5  .deleted {padding-left: .5em; border-left: .5em solid #f00;}
     6  .modified {padding-left: .5em; border-left: .5em solid #f80;}
     7  .changed {padding-left: .5em; border-left: .5em solid #0f0;}
     8  </style>
     9  <script type="text/javascript">
    10  //<![CDATA[
    11  
    12  function annotate() {
    13  /* quick, dirty & ugly color coding of annotations
    14     !only per day(s), not by event! */
    15  if (!document.title.match(/Annotation/))
    16    return false; /* go out here */
    17  
    18  /* color definitions: initial, current, next to last ..., all others (between) */
    19  var colors = new Array('#eee','#f60','#0f6','#60f','#48b','#8bb', '#ffa');
    20  var pres = document.getElementsByTagName('pre')[0].getElementsByTagName('a');
    21  var days = new Array();
    22  for (var i = 0; i < pres.length; i++) { /* collecting dates */
    23    var day = pres[i].nextSibling.data;
    24    var get = day.match(/\s+(\d{4})-(\d{2})-(\d{2})\s.+/i);
    25    trash = get.shift();
    26    days = days.concat( get.join('') ); }
    27  
    28  var initial = days.shift();
    29  days = days.sort(); i = 0;
    30  var last = '';
    31  var five = new Array('1','2','3','4','5'); /* dummy dates */
    32  do { /* getting the most recent five days */
    33    var hold = days.pop();
    34    if (hold != last) {
    35      five[i] = hold;
    36      i++;
    37      last = hold; }
    38  } while ((days.length > 0) && (i < 5));
    39  //alert(i +' '+ five+' # '+ first);
    40  /* apply color definition */
    41  var pres = document.getElementsByTagName('pre')[0].getElementsByTagName('a');
    42  //alert(pres[0].nextSibling.data);
    43  for (var i = 0; i < pres.length; i++) {
    44    var day = pres[i].nextSibling.data;
    45    var get = day.match(/\s(\d{4})-(\d{2})-(\d{2})\s.+/i);
    46    var wert = get[1]+get[2]+get[3];
    47    pres[i].style.paddingRight = '.5em';
    48    pres[i].style.borderRight = ".5em solid ";
    49    switch (wert) {
    50      case (initial): /* first ci */
    51        pres[i].style.backgroundColor = colors[0];
    52        pres[i].style.borderRightColor = colors[0];
    53        break;	
    54      case (five[0]): /* current */
    55        pres[i].style.backgroundColor = colors[1];
    56        pres[i].style.borderRightColor = colors[1];
    57        break;	
    58      case (five[1]): /* next to last */
    59        pres[i].style.backgroundColor = colors[2];
    60        pres[i].style.borderRightColor = colors[2];
    61        break;	
    62      case (five[2]):
    63        pres[i].style.borderRightColor = colors[3];
    64        break;	
    65      case (five[3]):
    66        pres[i].style.borderRightColor = colors[4];
    67        break;	
    68      case (five[4]):
    69        pres[i].style.borderRightColor = colors[5];
    70        break;	
    71      default: /* others */
    72        pres[i].style.borderRightColor = colors[6];
    73        break;
    74  }}
    75    return true;
    76  } /* annotate() */
    77  
    78  function colordiff() {
    79  var pres = document.getElementsByTagName('pre');
    80  for (var i = 0; i < pres.length; i++) {
    81    if (pres[i].hasChildNodes() && (pres[i].getAttribute('class') == 'diff')) {
    82      pres[i].innerHTML = pres[i].innerHTML.replace(/^(.+)$/mg, "<span>$1</span>");
    83      //pres[i].style.border = '1px dashed #f60';
    84      var spans = pres[i].getElementsByTagName('span');
    85      //alert(spans.length);
    86      for (var j = 0; j < spans.length; j++)
    87        if (spans[j].hasChildNodes()) {
    88          var has = spans[j].innerHTML[0];
    89          if (has) {
    90            switch (has) {
    91              case '+': /* line added */
    92                spans[j].style.backgroundColor = "#9f9";
    93                break;
    94              case '-': /* line removed */
    95                spans[j].style.backgroundColor = "#f99";
    96                break;
    97              case '@': /* sync */
    98                spans[j].style.backgroundColor = "#ff9";
    99                break;
   100              default: /* unchanded lines */
   101                // spans[j].style.color = "#999";
   102                // spans[j].style.backgroundColor = "#ffe";
   103                break;
   104  }}}}}} /* colordiff() */
   105  
   106  function main() {
   107    if (!annotate())
   108      colordiff();
   109    document.getElementsByTagName("body")[0].setAttribute('onload', '');
   110  } /* main() */
   111  
   112  //]]>
   113  </script>
   114  </head>
   115  <body onload='main()'>