Changeset 794

Show
Ignore:
Timestamp:
07/07/08 20:52:06 (5 months ago)
Author:
mpaschal
Message:

Stick LECF options into CF page
Don't embed perl code in the config.yaml either

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/LinkedEntryCustomFields/config.yaml

    r793 r794  
    1212            select_entry:    $RightFieldsConvert::RightFieldsConvert::App::select_entry 
    1313            convert_rf2cf:   $RightFieldsConvert::RightFieldsConvert::App::convert_rf2cf 
     14        callbacks: 
     15            template_param.edit_field: $RightFieldsConvert::RightFieldsConvert::App::inject_addl_field_settings 
    1416 
    1517customfield_types: 
     
    1820        order: 800 
    1921        field_html: <mt:Include name="field_html.mtml" component="RightFieldsConvert"> 
    20         field_html_params: sub { my $e = MT->model('entry')->load($_[2]->{value}); $_[2]->{preview} = $e->title if $e; } 
     22        field_html_params: $RightFieldsConvert::RightFieldsConvert::App::field_html_params 
    2123        column_def: vchar_idx 
    2224        no_default: 1 
  • trunk/LinkedEntryCustomFields/lib/RightFieldsConvert/App.pm

    r790 r794  
    11 
    22package RightFieldsConvert::App; 
     3 
     4sub field_html_params { 
     5    my ($field_type, $tmpl_type, $param) = @_; 
     6    my $e = MT->model('entry')->load($param->{value}); 
     7    $param->{preview} = $e->title if $e; 
     8} 
     9 
     10sub inject_addl_field_settings { 
     11    my ($cb, $app, $param, $tmpl) = @_; 
     12    return 1 if $param->{type} && $param->{type} ne 'entry'; 
     13 
     14    # Inject settings template code. 
     15    my $addl_settings = MT->component('RightFieldsConvert')->load_tmpl('addl_settings.mtml'); 
     16    my $new_node = $tmpl->createElement('section'); 
     17    $new_node->innerHTML($addl_settings->text); 
     18    $tmpl->insertAfter($new_node, $tmpl->getElementById('options')); 
     19 
     20    # Add supporting params for our new template code. 
     21    my ($blog_id, $options_categories) = split /\s*,\s*/, $param->{options}, 2; 
     22    my @blogs = map { +{ 
     23        blog_id       => $_->id, 
     24        blog_name     => $_->name, 
     25        blog_selected => ($_->id == $blog_id ? 1 : 0) 
     26    } } MT->model('blog')->load(); 
     27    $param->{blogs} = \@blogs; 
     28    $param->{field_categories} = $options_categories || q{}; 
     29 
     30    return 1; 
     31} 
    332 
    433sub list_entry_mini {