<?php

use_helper('Field', 'SmartFormat', 'sfBBCode');
$item_i18n = $item->getRaw('OutingI18n');
$item_i18n = $item_i18n[0];
$a = sfConfig::get('app_activities_list');
$c = sfConfig::get('mod_outings_conditions_statuses_list');
$f = sfConfig::get('mod_outings_frequentation_statuses_list');
$conditions_status = doctrine_value($item['conditions_status']);
$frequentation_status = doctrine_value($item['frequentation_status']);
$properties = array('module' => 'outings', 'name' => $item_i18n['name'], 'url' => jsonlist_url($item_i18n, 'outings'), 'date' => $item['date'], 'activities' => $use_keys ? BaseDocument::convertStringToArray($item['activities']) : BaseDocument::convertStringToArrayTranslate($item['activities'], $a), 'creator' => $item['creator'], 'maxElevation' => doctrine_value($item['max_elevation']), 'heightDiffUp' => doctrine_value($item['height_diff_up']), 'routesRating' => isset($item['linked_routes']) ? field_route_ratings_data($item, false, false, false, $use_keys ? 'jsonkeys' : 'json') : null, 'conditionsStatus' => $use_keys ? $conditions_status : @$c[$conditions_status], 'frequentationStatus' => $use_keys ? $frequentation_status : @$f[$frequentation_status], 'nbLinkedImages' => isset($item['nb_images']) ? $item['nb_images'] : 0, 'nbComments' => isset($item['nb_comments']) ? $item['nb_comments'] : 0, 'hasTrack' => strlen($item['geom_wkt']) > 0 ? true : false, 'linkedAreas' => json_decode(get_partial('documents/regions4jsonlist', array('geoassociations' => $item['geoassociations'], 'use_keys' => $use_keys))));
if ($add_conditions) {
    $avalanche_date_list = sfConfig::get('mod_outings_avalanche_date_list');
    $avalanche_date = $use_keys ? BaseDocument::convertStringToArray($item['avalanche_date']) : BaseDocument::convertStringToArrayTranslate($item['avalanche_date'], $avalanche_date_list);
    $has_avalanche_date = check_not_empty($avalanche_date) && !$avalanche_date instanceof sfOutputEscaperObjectDecorator && count($avalanche_date) && !array_intersect(array(0, 1), $avalanche_date);
    $glacier_statuses = sfConfig::get('mod_outings_glacier_statuses_list');
    $glacier_status = doctrine_value($item['glacier_status']);
    $properties = array_merge($properties, array('accessElevation' => doctrine_value($item['access_elevation']), 'upSnowElevation' => doctrine_value($item['up_snow_elevation']), 'downSnowElevation' => doctrine_value($item['down_snow_elevation']), 'glacierStatus' => $use_keys ? $glacier_status : @$glacier_statuses[$glacier_status], 'avalancheObsType' => $avalanche_date));
    if ($add_text) {
        $outing_route_desc = $item_i18n['outing_route_desc'];
        if (check_not_empty($outing_route_desc) && !$outing_route_desc instanceof sfOutputEscaperObjectDecorator) {
            if ($text_html) {
                $outing_route_desc = parse_links(parse_bbcode($outing_route_desc, null, false, false));
            }
        } else {
            $outing_route_desc = null;
        }
        $conditions_levels = unserialize($item_i18n['conditions_levels']);
        $conditions = $item_i18n['conditions'];
        if (check_not_empty($conditions) && !$conditions instanceof sfOutputEscaperObjectDecorator) {
            if ($text_html) {
<?php

$item_i18n = $item->getRaw('BookI18n');
$item_i18n = $item_i18n[0];
$bt = sfCOnfig::get('mod_books_book_types_list');
$a = sfConfig::get('app_activities_list');
echo json_encode(array('type' => 'Feature', 'geometry' => null, 'id' => $item['id'], 'properties' => array('module' => 'books', 'name' => $item_i18n['name'], 'url' => jsonlist_url($item_i18n, 'books'), 'types' => BaseDocument::convertStringToArrayTranslate($item['book_types'], $bt, 0), 'author' => doctrine_value($item->get('author')), 'editor' => doctrine_value($item->get('editor')), 'publicationDate' => doctrine_value($item['publication_date']), 'activities' => BaseDocument::convertStringToArrayTranslate($item['activities'], $a, 0), 'languages' => BaseDocument::convertStringToArray($item['langs'], 0), 'nbLinkedImages' => isset($item['nb_images']) ? $item['nb_images'] : 0, 'nbComments' => isset($item['nb_comments']) ? $item['nb_comments'] : 0)));
 public static function filterGetActivities($value)
 {
     return BaseDocument::convertStringToArray($value);
 }
 public static function filterGetBest_periods($value)
 {
     return BaseDocument::convertStringToArray($value);
 }
function get_paginated_activities($value, $hide_picto = false, $picto_separator = ' ')
{
    if (empty($value) || !is_string($value)) {
        return '';
    }
    // FIXME: perform this conversion when retrieving data
    $value = BaseDocument::convertStringToArray($value);
    $activities = sfConfig::get('app_activities_list');
    $out = array();
    foreach ($value as $item) {
        if (array_key_exists($item, $activities) && !empty($activities[$item])) {
            $activity = $activities[$item];
            $activity_num = $item;
            $name = __($activity);
            if ($hide_picto) {
                $out[] = $name;
            } else {
                $out[] = '<span class="activity_' . $activity_num . ' picto" title="' . $name . '"></span>';
            }
        }
    }
    if ($hide_picto) {
        return implode(', ', $out);
    }
    return implode($picto_separator, $out);
}
 public static function filterGetAvalanche_date($value)
 {
     return BaseDocument::convertStringToArray($value);
 }
$item_i18n = $item->getRaw('RouteI18n');
$item_i18n = $item_i18n[0];
$summit = $item['associations'][0]['Summit'][0]['SummitI18n'][0]['name'];
$activities_list = sfConfig::get('app_activities_list');
$facing_list = sfConfig::get('app_routes_facings');
$facing = $item['facing'];
$properties = array('module' => 'routes', 'name' => $summit . __(' :') . ' ' . $item_i18n['name'], 'url' => jsonlist_url($item_i18n, 'routes', $summit), 'activities' => $use_keys ? BaseDocument::convertStringToArray($item['activities']) : BaseDocument::convertStringToArrayTranslate($item['activities'], $activities_list), 'ratings' => field_route_ratings_data($item, false, false, false, $use_keys ? 'jsonkeys' : 'json'), 'maxElevation' => doctrine_value($item['max_elevation']), 'heightDiffUp' => doctrine_value($item['height_diff_up']), 'difficultiesHeight' => doctrine_value($item['difficulties_height']), 'mainFacing' => $use_keys ? $facing : @$facing_list[doctrine_value($facing)], 'nbLinkedImages' => isset($item['nb_images']) ? $item['nb_images'] : 0, 'nbLinkedOutings' => isset($item['nb_linked_docs']) ? $item['nb_linked_docs'] : 0, 'nbComments' => isset($item['nb_comments']) ? $item['nb_comments'] : 0, 'hasTrack' => strlen($item['geom_wkt']) > 0 ? true : false, 'linkedAreas' => json_decode(get_partial('documents/regions4jsonlist', array('geoassociations' => $item['geoassociations'], 'use_keys' => $use_keys))), 'linkedParkings' => json_decode(get_partial('parkings/parkings4jsonlist', array('parkings' => isset($item['linked_docs']) ? $item['linked_docs'] : array(), 'use_keys' => $use_keys))));
if ($add_all_fields) {
    $route_types_list = sfConfig::get('mod_routes_route_types_list');
    $durations_list = sfConfig::get('mod_routes_durations_list');
    $configurations_list = sfConfig::get('mod_routes_configurations_list');
    $sub_activities_list = sfConfig::get('mod_routes_sub_activities_list');
    $route_type = doctrine_value($item['route_type']);
    $duration = doctrine_value($item['duration']);
    $configuration = $use_keys ? BaseDocument::convertStringToArray($item['configuration']) : BaseDocument::convertStringToArrayTranslate($item['configuration'], $configurations_list);
    $sub_activities = BaseDocument::convertStringToArray($item['sub_activities']);
    $snowboarding = in_array(2, $sub_activities);
    $beginner_proof = in_array(4, $sub_activities);
    $mountain_bike_approach = in_array(6, $sub_activities);
    $lift_approach = in_array(8, $sub_activities);
    $is_on_glacier = doctrine_value($item['is_on_glacier']);
    $is_on_glacier = empty($is_on_glacier) ? false : true;
    $slope = $item->getRaw('slope');
    if (!check_not_empty($slope) || $slope instanceof sfOutputEscaperObjectDecorator) {
        $slope = null;
    }
    $properties = array_merge($properties, array('minElevation' => doctrine_value($item['min_elevation']), 'heightDiffDown' => doctrine_value($item['height_diff_down']), 'routeType' => $use_keys ? $route_type : @$route_types_list[$route_type], 'duration' => $use_keys ? $duration : @$durations_list[$duration], 'configuration' => $configuration, 'snowboardingProof' => $snowboarding, 'beginnerProof' => $beginner_proof, 'mountainBikeApproach' => $mountain_bike_approach, 'liftApproach' => $lift_approach, 'requiresGlacierGear' => $is_on_glacier, 'slope' => $slope));
    if ($add_text) {
        $description = $item_i18n['description'];
        if (check_not_empty($description) && !$description instanceof sfOutputEscaperObjectDecorator) {
            if ($text_html) {
 public static function filterGetPublic_transportation_types($value)
 {
     return BaseDocument::convertStringToArray($value);
 }
 public static function filterGetProduct_type($value)
 {
     return BaseDocument::convertStringToArray($value);
 }
            }
            if ($has_frequentation_status) {
                echo _format_data_from_list('frequentation_status', $frequentation_status, 'mod_outings_frequentation_statuses_list');
            }
            if ($has_conditions_levels) {
                echo conditions_levels_data($conditions_levels);
            }
            if ($has_conditions) {
                echo parse_links(parse_bbcode($conditions, null, false, false));
            }
            ?>
                </li>
            <?php 
        }
        $avalanche_date = $item['avalanche_date'];
        $avalanche_date_list = BaseDocument::convertStringToArray($avalanche_date);
        $has_avalanche_date = check_not_empty($avalanche_date) && !$avalanche_date instanceof sfOutputEscaperObjectDecorator && count($avalanche_date_list) && !array_intersect(array(0, 1), $avalanche_date_list);
        $avalanche_desc = $i18n['avalanche_desc'];
        $has_avalanche_desc = $has_avalanche_date && check_not_empty($avalanche_desc) && !$avalanche_desc instanceof sfOutputEscaperObjectDecorator;
        if ($has_avalanche_date) {
            ?>
                <li><div class="section_subtitle" id="_avalanche_infos" data-tooltip=""><?php 
            echo __('avalanche_infos');
            ?>
</div>
                <?php 
            $avalanche_date_string = get_paginated_value_from_list($avalanche_date, 'mod_outings_avalanche_date_list');
            echo '<p class="avalanche_date">' . c2cTools::multibyte_ucfirst(trim($avalanche_date_string)) . '.' . '</p>';
            if ($has_avalanche_desc) {
                echo parse_links(parse_bbcode($avalanche_desc, null, false, false));
            }