Changeset 1053


Ignore:
Timestamp:
10/03/08 21:25:33 (11 years ago)
Author:
douglas
Message:

FIXED Ticket #1290 Cleanup of Word and OpenOffice? HTML junk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XinhaCore.js

    r1052 r1053  
    36403640  { 
    36413641    empty_tags : 0, 
     3642    cond_comm  : 0, 
     3643    mso_elmts  : 0, 
    36423644    mso_class  : 0, 
    36433645    mso_style  : 0, 
     
    36493651  { 
    36503652    empty_tags : "Empty tags removed: ", 
     3653    cond_comm  : "Conditional comments removed", 
     3654    mso_elmts  : "MSO invalid elements removed", 
    36513655    mso_class  : "MSO class names removed: ", 
    36523656    mso_style  : "MSO inline style removed: ", 
     
    37183722  } 
    37193723 
     3724  function removeElements(el) 
     3725  { 
     3726    if ((('link' == el.tagName.toLowerCase()) && 
     3727        (el.attributes && /File-List|Edit-Time-Data|themeData|colorSchemeMapping/.test(el.attributes['rel'].nodeValue))) || 
     3728        (/^(style|meta)$/i.test(el.tagName))) 
     3729    { 
     3730      Xinha.removeFromParent(el); 
     3731      ++stats.mso_elmts; 
     3732      return true; 
     3733    } 
     3734    return false; 
     3735  } 
     3736 
    37203737  function checkEmpty(el) 
    37213738  { 
     
    37263743      Xinha.removeFromParent(el); 
    37273744      ++stats.empty_tags; 
    3728     } 
     3745      return true; 
     3746    } 
     3747    return false; 
    37293748  } 
    37303749 
     
    37483767        if ( i.nodeType == 1 && parseTree(i) ) 
    37493768        { 
    3750           checkEmpty(i); 
     3769          if (checkEmpty(i)) 
     3770          { 
     3771            continue; 
     3772          } 
     3773          if (removeElements(i)) 
     3774          { 
     3775            continue; 
     3776          } 
     3777        } 
     3778        else if (i.nodeType == 8) 
     3779        { 
     3780          // 8 is a comment node, and can contain conditional comments. 
     3781          if (/(\s*\[\s*if\s*(([gl]te?|!)\s*)?(IE|mso)\s*(\d+(\.\d+)?\s*)?\]>)/.test(i.nodeValue)) 
     3782          { 
     3783            // We strip all conditional comments directly from the tree. 
     3784            Xinha.removeFromParent(i); 
     3785            ++stats.cond_comm; 
     3786          } 
    37513787        } 
    37523788      } 
Note: See TracChangeset for help on using the changeset viewer.