[Rt-commit] rt branch, 4.2/date-input-keep-value, repushed

? sunnavy sunnavy at bestpractical.com
Thu Sep 5 08:10:25 EDT 2013


The branch 4.2/date-input-keep-value was deleted and repushed:
       was 7c9263b507540ca02e7ebf5f09d392669ca4c3d4
       now 345c6475af38119b11c269ad733d394c7b349275

1:  241a6ef ! 1:  0691801 we should keep the input value for cf date/datetime
    @@ -4,6 +4,43 @@
         
         without that, we may lose its value if first "submit" fails.
         see #19660
    +
    +diff --git a/lib/RT/Interface/Web.pm b/lib/RT/Interface/Web.pm
    +--- a/lib/RT/Interface/Web.pm
    ++++ b/lib/RT/Interface/Web.pm
    +@@
    + 
    +             my %values_hash;
    +             foreach my $value (@values) {
    +-                if ( my $entry = $cf_values->HasEntry($value) ) {
    ++                my $value_in_db = $value;
    ++                if ( $cf->Type eq 'DateTime' ) {
    ++                    my $date = RT::Date->new($session{CurrentUser});
    ++                    $date->Set(Format => 'unknown', Value => $value);
    ++                    $value_in_db = $date->ISO;
    ++                }
    ++
    ++                if ( my $entry = $cf_values->HasEntry($value_in_db) ) {
    +                     $values_hash{ $entry->id } = 1;
    +                     next;
    +                 }
    +
    +diff --git a/share/html/Elements/EditCustomField b/share/html/Elements/EditCustomField
    +--- a/share/html/Elements/EditCustomField
    ++++ b/share/html/Elements/EditCustomField
    +@@
    + if ($MaxValues == 1 && $Values) {
    +     # what exactly is this doing?  Without the "unless" it breaks RTFM
    +     # transaction extraction into articles.
    +-    $Default = ($Values->First ? $Values->First->Content : '') unless $Default;
    ++    if ( !$Default && $Values->First && $Values->First->Content ) {
    ++        my $date = RT::Date->new($session{CurrentUser});
    ++        $date->Set(Format => 'ISO', Value => $Values->First->Content);
    ++        $Default = $date->ISO(Timezone => 'user');
    ++    }
    +     $Values->GotoFirstItem;
    + }
    + # The "Magic" hidden input causes RT to know that we were trying to edit the field, even if 
     
     diff --git a/share/html/Elements/EditCustomFieldDate b/share/html/Elements/EditCustomFieldDate
     --- a/share/html/Elements/EditCustomFieldDate
    @@ -30,6 +67,11 @@
      
      <%INIT>
      my $DateObj = RT::Date->new ( $session{'CurrentUser'} );
    +-$DateObj->Set( Format => 'ISO', Value => $Default );
    ++$DateObj->Set( Format => 'unknown', Value => $Default );
    + </%INIT>
    + <%ARGS>
    + $Object => undef
     
     diff --git a/share/html/Elements/SelectDate b/share/html/Elements/SelectDate
     --- a/share/html/Elements/SelectDate
2:  7497a7f = 2:  0e8f986 allow to delete a cf date value
3:  edf403f = 3:  67ab892 keep values of ticket core date fields too
4:  5c468e1 = 4:  f12936d Remove unused Value argument to SelectDate
5:  7c9263b = 5:  345c647 check if it's necessary to add custom field value before actually adding it.



More information about the Rt-commit mailing list