View | Details | Raw Unified | Return to bug 20307
Collapse All | Expand All

(-)a/Koha/AuthorisedValue.pm (-3 / +19 lines)
Lines 71-77 sub opac_translated_description { Link Here
71
    return $self->translated_description unless $self->lib_opac;
71
    return $self->translated_description unless $self->lib_opac;
72
72
73
    my $translated_description = Koha::Localizations->search({
73
    my $translated_description = Koha::Localizations->search({
74
        code => sprintf( "%s_%s", $self->category, $self->authorised_value ),
74
        code => $self->build_code,
75
        entity => 'authorised_values',
75
        entity => 'authorised_values',
76
        lang => $lang,
76
        lang => $lang,
77
        interface => 'opac',
77
        interface => 'opac',
Lines 97-103 sub translated_description { Link Here
97
    }
97
    }
98
    $lang ||= C4::Languages::getlanguage;
98
    $lang ||= C4::Languages::getlanguage;
99
    my $translated_description = Koha::Localizations->search({
99
    my $translated_description = Koha::Localizations->search({
100
        code => sprintf( "%s_%s", $self->category, $self->authorised_value ),
100
        code => $self->build_code,
101
        entity => 'authorised_values',
101
        entity => 'authorised_values',
102
        lang => $lang,
102
        lang => $lang,
103
    })->next;
103
    })->next;
Lines 114-120 sub translated_descriptions { Link Here
114
    my ( $self ) = @_;
114
    my ( $self ) = @_;
115
    my @translated_descriptions = Koha::Localizations->search(
115
    my @translated_descriptions = Koha::Localizations->search(
116
        {   entity => 'authorised_values',
116
        {   entity => 'authorised_values',
117
            code => sprintf( "%s_%s", $self->category, $self->authorised_value ),
117
            code => $self->build_code,
118
        }
118
        }
119
    );
119
    );
120
    return [ map {
120
    return [ map {
Lines 134-139 sub image_location { Link Here
134
    return C4::Koha::getitemtypeimagelocation( $interface, $self->SUPER::imageurl );
134
    return C4::Koha::getitemtypeimagelocation( $interface, $self->SUPER::imageurl );
135
}
135
}
136
136
137
=head3 build_code
138
139
my $code = $av->build_code;
140
141
Return the "code" used by the translation mecanism to identify a row.
142
It is a concatenation of category and authorised_value.
143
144
Note that is is also used in Koha/Schema/Result/AuthorisedValue.pm
145
146
=cut
147
148
sub build_code {
149
    my ( $self ) = @_;
150
    return sprintf "%s#%s", $self->category, $self->authorised_value;
151
}
152
137
=head3 _type
153
=head3 _type
138
154
139
=cut
155
=cut
(-)a/Koha/Schema/Result/AuthorisedValue.pm (-1 / +1 lines)
Lines 159-165 __PACKAGE__->has_many( Link Here
159
        die "no interface specified!" unless $INTERFACE;
159
        die "no interface specified!" unless $INTERFACE;
160
160
161
        return ({
161
        return ({
162
            "$args->{foreign_alias}.code" => \["= CONCAT(me.category, '_', me.authorised_value)"],
162
            "$args->{foreign_alias}.code" => \["= CONCAT(me.category, '#', me.authorised_value)"],
163
            "$args->{foreign_alias}.lang" => $LANGUAGE,
163
            "$args->{foreign_alias}.lang" => $LANGUAGE,
164
            "$args->{foreign_alias}.interface" => $INTERFACE,
164
            "$args->{foreign_alias}.interface" => $INTERFACE,
165
        });
165
        });
(-)a/t/db_dependent/AuthorisedValues.t (-6 / +5 lines)
Lines 259-265 subtest "localization" => sub { Link Here
259
    Koha::Localization->new(
259
    Koha::Localization->new(
260
        {
260
        {
261
            entity => 'authorised_values',
261
            entity => 'authorised_values',
262
            code => sprintf( "%s_%s", $av1->category, $av1->authorised_value ),
262
            code => $av1->build_code,
263
            lang => 'es-ES',
263
            lang => 'es-ES',
264
            interface => 'intranet',
264
            interface => 'intranet',
265
            translation => 'traducción 1'
265
            translation => 'traducción 1'
Lines 268-274 subtest "localization" => sub { Link Here
268
    Koha::Localization->new(
268
    Koha::Localization->new(
269
        {
269
        {
270
            entity => 'authorised_values',
270
            entity => 'authorised_values',
271
            code => sprintf( "%s_%s", $av1->category, $av1->authorised_value ),
271
            code => $av1->build_code,
272
            lang => 'es-ES',
272
            lang => 'es-ES',
273
            interface => 'opac',
273
            interface => 'opac',
274
            translation => 'opac traducción 1'
274
            translation => 'opac traducción 1'
Lines 277-283 subtest "localization" => sub { Link Here
277
    Koha::Localization->new(
277
    Koha::Localization->new(
278
        {
278
        {
279
            entity => 'authorised_values',
279
            entity => 'authorised_values',
280
            code => sprintf( "%s_%s", $av1->category, $av2->authorised_value ),
280
            code => $av2->build_code,
281
            lang => 'es-ES',
281
            lang => 'es-ES',
282
            interface => 'intranet',
282
            interface => 'intranet',
283
            translation => 'traducción 2'
283
            translation => 'traducción 2'
Lines 287-293 subtest "localization" => sub { Link Here
287
    Koha::Localization->new(
287
    Koha::Localization->new(
288
        {
288
        {
289
            entity => 'authorised_values',
289
            entity => 'authorised_values',
290
            code => sprintf( "%s_%s", $av1->category, $av1->authorised_value ),
290
            code => $av1->build_code,
291
            lang => 'fr-FR',
291
            lang => 'fr-FR',
292
            interface => 'intranet',
292
            interface => 'intranet',
293
            translation => 'traduction 1'
293
            translation => 'traduction 1'
Lines 296-302 subtest "localization" => sub { Link Here
296
    Koha::Localization->new(
296
    Koha::Localization->new(
297
        {
297
        {
298
            entity => 'authorised_values',
298
            entity => 'authorised_values',
299
            code => sprintf( "%s_%s", $av2->category, $av2->authorised_value ),
299
            code => $av2->build_code,
300
            lang => 'de-DE',
300
            lang => 'de-DE',
301
            interface => 'intranet',
301
            interface => 'intranet',
302
            translation => 'Übersetzung 2'
302
            translation => 'Übersetzung 2'
303
- 

Return to bug 20307