Changeset 465

Show
Ignore:
Timestamp:
01/14/08 11:55:15 (10 months ago)
Author:
bermiferrer
Message:

Adding support for class names on the DiffHelper? plugin

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/diff_helper/lib/diff_helper.php

    r464 r465  
    3232    function diff($from_text, $to_text, $options = array()) 
    3333    { 
     34        $default_options = array( 
     35            'insert_class' => '', 
     36            'delete_class' => '', 
     37        ); 
     38        $options = array_merge($default_options, $options); 
     39     
    3440        require_once('PEAR'.DS.'Text'.DS.'Diff.php'); 
    3541        require_once('PEAR'.DS.'Text'.DS.'Diff'.DS.'Renderer.php'); 
     
    4248 
    4349        $Renderer =& new Text_Diff_Renderer_inline(); 
     50        $Renderer->_ins_prefix = empty($options['insert_class']) ? '<ins>' : '<ins class="'.$options['insert_class'].'">'; 
     51        $Renderer->_del_prefix = empty($options['delete_class']) ? '<del>' : '<del class="'.$options['delete_class'].'">'; 
    4452        return trim($Renderer->render(new Text_Diff($from_text, $to_text)),"\n"); 
    4553 
  • plugins/diff_helper/test/diff_helper_tests.php

    r464 r465  
    2525    } 
    2626 
     27    function test_should_add_classes_to_insert_and_delete_tags() 
     28    { 
     29        $original = 'open source'; 
     30        $modified = 'Open Source'; 
     31        $expected_diff = '<del class="version-1">open source</del><ins class="version-2">Open Source</ins>'; 
     32 
     33        $generated_diff = $this->diff_helper->diff($original, $modified, array('insert_class'=>'version-2','delete_class'=>'version-1')); 
     34        $this->assertEqual($generated_diff, $expected_diff); 
     35    } 
     36 
    2737    function test_should_return_diff_html() 
    2838    {