web/lib/Zend/View/Helper/FormSelect.php
author Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
Tue, 21 Nov 2017 12:38:53 +0100
changeset 1407 415fcdc24695
parent 1230 68c69c656a2c
permissions -rw-r--r--
Added tag V04.060 for changeset 731b4fec8879
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     1
<?php
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     2
/**
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     3
 * Zend Framework
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     4
 *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     5
 * LICENSE
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     6
 *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     7
 * This source file is subject to the new BSD license that is bundled
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     8
 * with this package in the file LICENSE.txt.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
     9
 * It is also available through the world-wide-web at this URL:
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    10
 * http://framework.zend.com/license/new-bsd
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    11
 * If you did not receive a copy of the license and are unable to
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    12
 * obtain it through the world-wide-web, please send an email
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    13
 * to license@zend.com so we can send you a copy immediately.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    14
 *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    15
 * @category   Zend
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    16
 * @package    Zend_View
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    17
 * @subpackage Helper
1230
68c69c656a2c upgrade Zend
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 807
diff changeset
    18
 * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    19
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
1230
68c69c656a2c upgrade Zend
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 807
diff changeset
    20
 * @version    $Id$
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    21
 */
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    22
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    23
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    24
/**
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    25
 * Abstract class for extension
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    26
 */
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    27
require_once 'Zend/View/Helper/FormElement.php';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    28
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    29
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    30
/**
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    31
 * Helper to generate "select" list of options
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    32
 *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    33
 * @category   Zend
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    34
 * @package    Zend_View
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    35
 * @subpackage Helper
1230
68c69c656a2c upgrade Zend
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 807
diff changeset
    36
 * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    37
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    38
 */
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    39
class Zend_View_Helper_FormSelect extends Zend_View_Helper_FormElement
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    40
{
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    41
    /**
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    42
     * Generates 'select' list of options.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    43
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    44
     * @access public
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    45
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    46
     * @param string|array $name If a string, the element name.  If an
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    47
     * array, all other parameters are ignored, and the array elements
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    48
     * are extracted in place of added parameters.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    49
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    50
     * @param mixed $value The option value to mark as 'selected'; if an
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    51
     * array, will mark all values in the array as 'selected' (used for
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    52
     * multiple-select elements).
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    53
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    54
     * @param array|string $attribs Attributes added to the 'select' tag.
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
    55
     * the optional 'optionClasses' attribute is used to add a class to
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
    56
     * the options within the select (associative array linking the option
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
    57
     * value to the desired class)
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    58
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    59
     * @param array $options An array of key-value pairs where the array
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    60
     * key is the radio value, and the array value is the radio text.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    61
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    62
     * @param string $listsep When disabled, use this list separator string
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    63
     * between list values.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    64
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    65
     * @return string The select tag and options XHTML.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    66
     */
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    67
    public function formSelect($name, $value = null, $attribs = null,
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    68
        $options = null, $listsep = "<br />\n")
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    69
    {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    70
        $info = $this->_getInfo($name, $value, $attribs, $options, $listsep);
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    71
        extract($info); // name, id, value, attribs, options, listsep, disable
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    72
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    73
        // force $value to array so we can compare multiple values to multiple
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    74
        // options; also ensure it's a string for comparison purposes.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    75
        $value = array_map('strval', (array) $value);
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    76
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    77
        // check if element may have multiple values
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    78
        $multiple = '';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    79
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    80
        if (substr($name, -2) == '[]') {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    81
            // multiple implied by the name
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    82
            $multiple = ' multiple="multiple"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    83
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    84
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    85
        if (isset($attribs['multiple'])) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    86
            // Attribute set
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    87
            if ($attribs['multiple']) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    88
                // True attribute; set multiple attribute
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    89
                $multiple = ' multiple="multiple"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    90
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    91
                // Make sure name indicates multiple values are allowed
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    92
                if (!empty($multiple) && (substr($name, -2) != '[]')) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    93
                    $name .= '[]';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    94
                }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    95
            } else {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    96
                // False attribute; ensure attribute not set
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    97
                $multiple = '';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    98
            }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
    99
            unset($attribs['multiple']);
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   100
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   101
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   102
        // handle the options classes
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   103
        $optionClasses = array();
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   104
        if (isset($attribs['optionClasses'])) {
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   105
            $optionClasses = $attribs['optionClasses'];
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   106
            unset($attribs['optionClasses']);
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   107
        }
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   108
        
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   109
        // now start building the XHTML.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   110
        $disabled = '';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   111
        if (true === $disable) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   112
            $disabled = ' disabled="disabled"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   113
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   114
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   115
        // Build the surrounding select element first.
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   116
        $xhtml = '<select'
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   117
                . ' name="' . $this->view->escape($name) . '"'
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   118
                . ' id="' . $this->view->escape($id) . '"'
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   119
                . $multiple
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   120
                . $disabled
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   121
                . $this->_htmlAttribs($attribs)
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   122
                . ">\n    ";
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   123
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   124
        // build the list of options
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   125
        $list       = array();
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   126
        $translator = $this->getTranslator();
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   127
        foreach ((array) $options as $opt_value => $opt_label) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   128
            if (is_array($opt_label)) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   129
                $opt_disable = '';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   130
                if (is_array($disable) && in_array($opt_value, $disable)) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   131
                    $opt_disable = ' disabled="disabled"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   132
                }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   133
                if (null !== $translator) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   134
                    $opt_value = $translator->translate($opt_value);
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   135
                }
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   136
                $opt_id = ' id="' . $this->view->escape($id) . '-optgroup-'
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   137
                        . $this->view->escape($opt_value) . '"';
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   138
                $list[] = '<optgroup'
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   139
                        . $opt_disable
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   140
                        . $opt_id
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   141
                        . ' label="' . $this->view->escape($opt_value) .'">';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   142
                foreach ($opt_label as $val => $lab) {
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   143
                    $list[] = $this->_build($val, $lab, $value, $disable, $optionClasses);
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   144
                }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   145
                $list[] = '</optgroup>';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   146
            } else {
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   147
                $list[] = $this->_build($opt_value, $opt_label, $value, $disable, $optionClasses);
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   148
            }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   149
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   150
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   151
        // add the options to the xhtml and close the select
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   152
        $xhtml .= implode("\n    ", $list) . "\n</select>";
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   153
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   154
        return $xhtml;
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   155
    }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   156
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   157
    /**
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   158
     * Builds the actual <option> tag
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   159
     *
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   160
     * @param string $value Options Value
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   161
     * @param string $label Options Label
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   162
     * @param array  $selected The option value(s) to mark as 'selected'
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   163
     * @param array|bool $disable Whether the select is disabled, or individual options are
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   164
     * @param array $optionClasses The classes to associate with each option value
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   165
     * @return string Option Tag XHTML
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   166
     */
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   167
    protected function _build($value, $label, $selected, $disable, $optionClasses = array())
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   168
    {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   169
        if (is_bool($disable)) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   170
            $disable = array();
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   171
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   172
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   173
        $class = null;
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   174
        if (array_key_exists($value, $optionClasses)) {
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   175
            $class = $optionClasses[$value];
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   176
        }
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   177
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   178
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   179
        $opt = '<option'
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   180
             . ' value="' . $this->view->escape($value) . '"';
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   181
807
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   182
             if ($class) {
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   183
             $opt .= ' class="' . $class . '"';
877f952ae2bd update Zend and twitter oauth end point
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents: 207
diff changeset
   184
         }
0
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   185
        // selected?
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   186
        if (in_array((string) $value, $selected)) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   187
            $opt .= ' selected="selected"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   188
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   189
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   190
        // disabled?
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   191
        if (in_array($value, $disable)) {
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   192
            $opt .= ' disabled="disabled"';
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   193
        }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   194
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   195
        $opt .= '>' . $this->view->escape($label) . "</option>";
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   196
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   197
        return $opt;
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   198
    }
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   199
4eba9c11703f first import
Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com>
parents:
diff changeset
   200
}
PK0|AV}* tweet_live-796881572d91/web/.htaccess.tmplUTJPPK0|A[mB .tweet_live-796881572d91/web/2011-2012-museo-audiovisuel/config.phpUTJPPK0|Ax̐[ tweet_live-796881572d91/web/2011-2012-museo-audiovisuel/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyL tweet_live-796881572d91/web/2011-2012-museo-audiovisuel/images/head_logo.gifUTJPPK0|A\tFM 3tweet_live-796881572d91/web/2011-2012-museo-audiovisuel/images/museo-2011.jpgUTJPPK0|AЕ;3>dBeR tweet_live-796881572d91/web/2011-2012-museo-audiovisuel/images/slide4_museo_fr.pngUTJPPK0|A7[MB^sA hvtweet_live-796881572d91/web/2011-2012-museo-audiovisuel/index.phpUTJPPK0|AP' C >wtweet_live-796881572d91/web/2011-2012-museo-contribution/config.phpUTJPPK0|Ax̐\ \}tweet_live-796881572d91/web/2011-2012-museo-contribution/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyM  tweet_live-796881572d91/web/2011-2012-museo-contribution/images/head_logo.gifUTJPPK0|A\tFN } tweet_live-796881572d91/web/2011-2012-museo-contribution/images/museo-2011.jpgUTJPPK0|Al>dBeT tweet_live-796881572d91/web/2011-2012-museo-contribution/images/polemic_fly_home.pngUTJPPK0|AЕ;3>dBeS tweet_live-796881572d91/web/2011-2012-museo-contribution/images/slide4_museo_fr.pngUTJPPK0|AX6GI D S }Rtweet_live-796881572d91/web/2011-2012-museo-contribution/images/tweetExplainBgd.gifUTJPPK0|AWj~B P\tweet_live-796881572d91/web/2011-2012-museo-contribution/index.phpUTJPPK0|A)W< 3]tweet_live-796881572d91/web/2011-2012-museo-desir/config.phpUTJPPK0|AeA=S kctweet_live-796881572d91/web/2011-2012-museo-desir/images/big_visuel_catastrophe.jpgUTJPPK0|Ax̐U 6Ztweet_live-796881572d91/web/2011-2012-museo-desir/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyF tweet_live-796881572d91/web/2011-2012-museo-desir/images/head_logo.gifUTJPPK0|A\tFG Itweet_live-796881572d91/web/2011-2012-museo-desir/images/museo-2011.jpgUTJPPK0|Al>dBeM etweet_live-796881572d91/web/2011-2012-museo-desir/images/polemic_fly_home.pngUTJPPK0|AЕ;3>dBeL stweet_live-796881572d91/web/2011-2012-museo-desir/images/slide4_museo_fr.pngUTJPPK0|AX6GI D L 4/tweet_live-796881572d91/web/2011-2012-museo-desir/images/tweetExplainBgd.gifUTJPPK0|AWj~; 9tweet_live-796881572d91/web/2011-2012-museo-desir/index.phpUTJPPK0|Abc A 9tweet_live-796881572d91/web/2011-2012-museo-ingenierie/config.phpUTJPPK0|Ax̐Z ?tweet_live-796881572d91/web/2011-2012-museo-ingenierie/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyK tweet_live-796881572d91/web/2011-2012-museo-ingenierie/images/head_logo.gifUTJPPK0|A\tFL tweet_live-796881572d91/web/2011-2012-museo-ingenierie/images/museo-2011.jpgUTJPPK0|AЕ;3>dBeQ xKtweet_live-796881572d91/web/2011-2012-museo-ingenierie/images/slide4_museo_fr.pngUTJPPK0|AWj~@ >tweet_live-796881572d91/web/2011-2012-museo-ingenierie/index.phpUTJPPK0|A7a A tweet_live-796881572d91/web/2011-2012-museo-interfaces/config.phpUTJPPK0|Ax̐Z vtweet_live-796881572d91/web/2011-2012-museo-interfaces/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyK G#tweet_live-796881572d91/web/2011-2012-museo-interfaces/images/head_logo.gifUTJPPK0|A\tFL L#tweet_live-796881572d91/web/2011-2012-museo-interfaces/images/museo-2011.jpgUTJPPK0|AЕ;3>dBeQ #tweet_live-796881572d91/web/2011-2012-museo-interfaces/images/slide4_museo_fr.pngUTJPPK0|A7[MB^s@ &&tweet_live-796881572d91/web/2011-2012-museo-interfaces/index.phpUTJPPK0|Aw@ 큛'&tweet_live-796881572d91/web/2011-2012-museo-ouverture/config.phpUTJPPK0|AeA=W .&tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/big_visuel_catastrophe.jpgUTJPPK0|Ax̐Y %'tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyJ 4*tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/head_logo.gifUTJPPK0|A\tFK 큫*tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/museo-2011.jpgUTJPPK0|Al>dBeQ 1+tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/polemic_fly_home.pngUTJPPK0|AЕ;3>dBeV ݕ-tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/slide4_catastrophe_fr.pngUTJPPK0|AX6GI D P /tweet_live-796881572d91/web/2011-2012-museo-ouverture/images/tweetExplainBgd.gifUTJPPK0|AWj~? x0tweet_live-796881572d91/web/2011-2012-museo-ouverture/index.phpUTJPPK0|A^ F X0tweet_live-796881572d91/web/2011-2012-museo-structured-data/config.phpUTJPPK0|AeA=] 0tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/big_visuel_catastrophe.jpgUTJPPK0|Ax̐_ 1tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/big_visuel_museo_2011_fr.pngUTJPPK0|AfyP b4tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/head_logo.gifUTJPPK0|A\tFQ ߘ4tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/museo-2011.jpgUTJPPK0|Al>dBeW Q5tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/polemic_fly_home.pngUTJPPK0|AЕ;3>dBeV s7tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/slide4_museo_fr.pngUTJPPK0|AX6GI D V 9tweet_live-796881572d91/web/2011-2012-museo-structured-data/images/tweetExplainBgd.gifUTJPPK0|AWj~E 9tweet_live-796881572d91/web/2011-2012-museo-structured-data/index.phpUTJPPK0|AOz* 9tweet_live-796881572d91/web/CPV/config.phpUTJPPK0|A-|8Е=8 T9tweet_live-796881572d91/web/CPV/images/big_visuel_mb.pngUTJPPK0|A4c4 }?tweet_live-796881572d91/web/CPV/images/head_logo.gifUTJPPK0|AjJʵ3 Á?tweet_live-796881572d91/web/CPV/images/tail_cpv.pngUTJPPK0|A7p : 7Atweet_live-796881572d91/web/CPV/images/tweetExplainBgd.gifUTJPPK0|AWj~) CAtweet_live-796881572d91/web/CPV/index.phpUTJPPK0|AF. DAtweet_live-796881572d91/web/CPV/traduction.phpUTJPPK0|A Un%v` ? bJAtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/config.phpUTJPPK0|ACѧtiR NOAtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/images/big_visuel_rsln_mb.jpgUTJPPK0|AatB p I >Ctweet_live-796881572d91/web/JaneMcGonigal-gameDesign/images/head_logo.gifUTJPPK0|A IKF LCtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/images/slide4.jpgUTJPPK0|AJM#rsS eeDtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/images/tail_jane-mcgonigal.jpgUTJPPK0|AX6GI D O Dtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/images/tweetExplainBgd.gifUTJPPK0|AWj~> Dtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/index.phpUTJPPK0|AcC Dtweet_live-796881572d91/web/JaneMcGonigal-gameDesign/traduction.phpUTJPPK0|AC% KDtweet_live-796881572d91/web/about.phpUTJPPK0|A / / Dtweet_live-796881572d91/web/archives-iframe.phpUTJPPK0|Aw2,qe( Dtweet_live-796881572d91/web/archives.phpUTJPPK0|A2 \1 Dtweet_live-796881572d91/web/archives_metadata.phpUTJPPK0|AlB 0Etweet_live-796881572d91/web/bpi-des-livres-aux-machines/config.phpUTJPPK0|ARAUchdJ \Etweet_live-796881572d91/web/bpi-des-livres-aux-machines/images/archive.jpgUTJPPK0|A9E[eM lEtweet_live-796881572d91/web/bpi-des-livres-aux-machines/images/bgd_player.jpgUTJPPK0|A6 S""$M Gtweet_live-796881572d91/web/bpi-des-livres-aux-machines/images/fond_slide.jpgUTJPPK0|AXyL g6Htweet_live-796881572d91/web/bpi-des-livres-aux-machines/images/logo_head.pngUTJPPK0|AWj~A EHtweet_live-796881572d91/web/bpi-des-livres-aux-machines/index.phpUTJPPK0|AK( 큞FHtweet_live-796881572d91/web/callback.phpUTJPPK0|A*-Z / IHtweet_live-796881572d91/web/caps2012/config.phpUTJPPK0|Ak9|@ VHtweet_live-796881572d91/web/caps2012/images/caps2012_archive.jpgUTJPPK0|A6ӺD 9Htweet_live-796881572d91/web/caps2012/images/caps2012_live_screen.jpgUTJPPK0|AW? Jtweet_live-796881572d91/web/caps2012/images/caps2012_slider.pngUTJPPK0|Ai: dOtweet_live-796881572d91/web/caps2012/images/logo_ec_en.gifUTJPPK0|A ŜCfs. iOtweet_live-796881572d91/web/caps2012/index.phpUTJPPK0|A9d;% 큱jOtweet_live-796881572d91/web/clear.phpUTJPPK0|A6g\6 0 HlOtweet_live-796881572d91/web/clic-2012/config.phpUTJPPK0|A<9esf= vOtweet_live-796881572d91/web/clic-2012/images/clic_archive.jpgUTJPPK0|A 9HIA rOtweet_live-796881572d91/web/clic-2012/images/clic_live_screen.jpgUTJPPK0|AVNh< #%Qtweet_live-796881572d91/web/clic-2012/images/clic_slider.jpgUTJPPK0|A⷗ԐNO? |:Rtweet_live-796881572d91/web/clic-2012/images/head_logo_clic.pngUTJPPK0|A7[MB^s/ Rtweet_live-796881572d91/web/clic-2012/index.phpUTJPPK0|A4{ֶI]& FRtweet_live-796881572d91/web/client.phpUTJPPK0|A.{ 2& Rtweet_live-796881572d91/web/common.phpUTJPPK0|Asa+ Rtweet_live-796881572d91/web/config.php.tmplUTJPPK0|A WC .Rtweet_live-796881572d91/web/curiouser-digital-humanities/config.phpUTJPPK0|Aafo#p$U Rtweet_live-796881572d91/web/curiouser-digital-humanities/images/Archive_Curiouser.jpgUTJPPK0|A915R Rtweet_live-796881572d91/web/curiouser-digital-humanities/images/Logo_Curiouser.gifUTJPPK0|A7FF- Y R xRtweet_live-796881572d91/web/curiouser-digital-humanities/images/Logo_Curiouser.pngUTJPPK0|A;X .Rtweet_live-796881572d91/web/curiouser-digital-humanities/images/bgd-player_Curiouser.jpgUTJPPK0|AiP]itxX Stweet_live-796881572d91/web/curiouser-digital-humanities/images/fond_slide_Curiouser.jpgUTJPPK0|A7[MB^sB kTtweet_live-796881572d91/web/curiouser-digital-humanities/index.phpUTJPPK0|A;!> lTtweet_live-796881572d91/web/edito-1213-01-contextes/config.phpUTJPPK0|Azk%UJWJ uTtweet_live-796881572d91/web/edito-1213-01-contextes/images/archive_img.jpgUTJPPK0|AVUf0L Ttweet_live-796881572d91/web/edito-1213-01-contextes/images/client_visual.jpgUTJPPK0|A0I Utweet_live-796881572d91/web/edito-1213-01-contextes/images/logo-edito.pngUTJPPK0|A^^O *Utweet_live-796881572d91/web/edito-1213-01-contextes/images/slide_background.jpgUTJPPK0|A7[MB^s= }Vtweet_live-796881572d91/web/edito-1213-01-contextes/index.phpUTJPPK0|A$Ii< OVtweet_live-796881572d91/web/edito-arts-numeriques/config.phpUTJPPK0|A |&(U Vtweet_live-796881572d91/web/edito-arts-numeriques/images/archive-editorialisation.jpgUTJPPK0|A4:@vM Vtweet_live-796881572d91/web/edito-arts-numeriques/images/big_visuel_edito.jpgUTJPPK0|AfyF WWtweet_live-796881572d91/web/edito-arts-numeriques/images/head_logo.gifUTJPPK0|Ac+LPT =]Wtweet_live-796881572d91/web/edito-arts-numeriques/images/slide4-editorialisation.jpgUTJPPK0|A7[MB^s; Wtweet_live-796881572d91/web/edito-arts-numeriques/index.phpUTJPPK0|AIZ9 vWtweet_live-796881572d91/web/edito-datacuration/config.phpUTJPPK0|A |&(R jWtweet_live-796881572d91/web/edito-datacuration/images/archive-editorialisation.jpgUTJPPK0|A4:@vJ Wtweet_live-796881572d91/web/edito-datacuration/images/big_visuel_edito.jpgUTJPPK0|AfyC #kXtweet_live-796881572d91/web/edito-datacuration/images/head_logo.gifUTJPPK0|Ac+LPQ pXtweet_live-796881572d91/web/edito-datacuration/images/slide4-editorialisation.jpgUTJPPK0|A7[MB^s8 Xtweet_live-796881572d91/web/edito-datacuration/index.phpUTJPPK0|A/#7 ƾXtweet_live-796881572d91/web/edito-inaugurale/config.phpUTJPPK0|A |&(P WXtweet_live-796881572d91/web/edito-inaugurale/images/archive-editorialisation.jpgUTJPPK0|A4:@vH Xtweet_live-796881572d91/web/edito-inaugurale/images/big_visuel_edito.jpgUTJPPK0|AfyA |Ytweet_live-796881572d91/web/edito-inaugurale/images/head_logo.gifUTJPPK0|Ac+LPO zYtweet_live-796881572d91/web/edito-inaugurale/images/slide4-editorialisation.jpgUTJPPK0|A9 > G Ytweet_live-796881572d91/web/edito-inaugurale/images/tweetExplainBgd.gifUTJPPK0|AWj~6 큚Ytweet_live-796881572d91/web/edito-inaugurale/index.phpUTJPPK0|AŚTm 9 qYtweet_live-796881572d91/web/edito-intelligence/config.phpUTJPPK0|A |&(R 5Ytweet_live-796881572d91/web/edito-intelligence/images/archive-editorialisation.jpgUTJPPK0|A4:@vJ Ztweet_live-796881572d91/web/edito-intelligence/images/big_visuel_edito.jpgUTJPPK0|AfyC Ztweet_live-796881572d91/web/edito-intelligence/images/head_logo.gifUTJPPK0|Ac+LPQ ^Ztweet_live-796881572d91/web/edito-intelligence/images/slide4-editorialisation.jpgUTJPPK0|A9 > I Ztweet_live-796881572d91/web/edito-intelligence/images/tweetExplainBgd.gifUTJPPK0|AWj~8 큂Ztweet_live-796881572d91/web/edito-intelligence/index.phpUTJPPK0|AO8{ < [Ztweet_live-796881572d91/web/edito-reseaux-sociaux/config.phpUTJPPK0|A |&(U [tweet_live-796881572d91/web/edito-reseaux-sociaux/images/archive-editorialisation.jpgUTJPPK0|A4:@vM '([tweet_live-796881572d91/web/edito-reseaux-sociaux/images/big_visuel_edito.jpgUTJPPK0|AfyF F[tweet_live-796881572d91/web/edito-reseaux-sociaux/images/head_logo.gifUTJPPK0|Ac+LPT [tweet_live-796881572d91/web/edito-reseaux-sociaux/images/slide4-editorialisation.jpgUTJPPK0|AWj~; " \tweet_live-796881572d91/web/edito-reseaux-sociaux/index.phpUTJPPK0|A?xMA: \tweet_live-796881572d91/web/edito-serious-games/config.phpUTJPPK0|A |&(S \tweet_live-796881572d91/web/edito-serious-games/images/archive-editorialisation.jpgUTJPPK0|A4:@vK Z=\tweet_live-796881572d91/web/edito-serious-games/images/big_visuel_edito.jpgUTJPPK0|AfyD w\tweet_live-796881572d91/web/edito-serious-games/images/head_logo.gifUTJPPK0|Ac+LPR \tweet_live-796881572d91/web/edito-serious-games/images/slide4-editorialisation.jpgUTJPPK0|AWj~9 O"]tweet_live-796881572d91/web/edito-serious-games/index.phpUTJPPK0|AXA 3 )#]tweet_live-796881572d91/web/edito-webdoc/config.phpUTJPPK0|A |&(L ']tweet_live-796881572d91/web/edito-webdoc/images/archive-editorialisation.jpgUTJPPK0|A4:@vD kN]tweet_live-796881572d91/web/edito-webdoc/images/big_visuel_edito.jpgUTJPPK0|Afy= 큁]tweet_live-796881572d91/web/edito-webdoc/images/head_logo.gifUTJPPK0|Ac+LPK ]tweet_live-796881572d91/web/edito-webdoc/images/slide4-editorialisation.jpgUTJPPK0|A9 > C K3^tweet_live-796881572d91/web/edito-webdoc/images/tweetExplainBgd.gifUTJPPK0|AWj~2 @^tweet_live-796881572d91/web/edito-webdoc/index.phpUTJPPK0|A+X: @^tweet_live-796881572d91/web/eduinnov-conference/config.phpUTJPPK0|AF+ o8sF I^tweet_live-796881572d91/web/eduinnov-conference/images/archive_img.jpgUTJPPK0|À@D &^tweet_live-796881572d91/web/eduinnov-conference/images/logo_head.pngUTJPPK0|AyF ^tweet_live-796881572d91/web/eduinnov-conference/images/slider_home.pngUTJPPK0|A7[MB^s9 `tweet_live-796881572d91/web/eduinnov-conference/index.phpUTJPPK0|A 5 ͞`tweet_live-796881572d91/web/eduinnov-focus/config.phpUTJPPK0|AF+ o8sA `tweet_live-796881572d91/web/eduinnov-focus/images/archive_img.jpgUTJPPK0|À@? Batweet_live-796881572d91/web/eduinnov-focus/images/logo_head.pngUTJPPK0|AyA 4atweet_live-796881572d91/web/eduinnov-focus/images/slider_home.pngUTJPPK0|A7[MB^s4 btweet_live-796881572d91/web/eduinnov-focus/index.phpUTJPPK0|APi&tM/ btweet_live-796881572d91/web/eduinnov/config.phpUTJPPK0|AF+ o8s; ctweet_live-796881572d91/web/eduinnov/images/archive_img.jpgUTJPPK0|À@9 0wctweet_live-796881572d91/web/eduinnov/images/logo_head.pngUTJPPK0|Ay; ctweet_live-796881572d91/web/eduinnov/images/slider_home.pngUTJPPK0|A|4[^s. [etweet_live-796881572d91/web/eduinnov/index.phpUTJPPK0|AR%!B7* \etweet_live-796881572d91/web/embed_form.phpUTJPPK0|A + Yaetweet_live-796881572d91/web/embedscript.phpUTJPPK0|A=&8E ^eetweet_live-796881572d91/web/enmi2011-technologie-confiance/config.phpUTJPPK0|Ax5X ietweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb.jpgUTJPPK0|AjUJZ Iitweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_2.jpgUTJPPK0|A$Z-Z ltweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_3.jpgUTJPPK0|A] zZ ntweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_4.jpgUTJPPK0|AT ש{Z ptweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_5.jpgUTJPPK0|A ךZ /stweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_6.jpgUTJPPK0|AKLQ\ |utweet_live-796881572d91/web/enmi2011-technologie-confiance/images/big_visuel_rsln_mb_old.jpgUTJPPK0|A ( Q O vtweet_live-796881572d91/web/enmi2011-technologie-confiance/images/head_logo.gifUTJPPK0|AV$DL !vtweet_live-796881572d91/web/enmi2011-technologie-confiance/images/slide4.jpgUTJPPK0|A=f3=3S wtweet_live-796881572d91/web/enmi2011-technologie-confiance/images/tail_enmi2011.jpgUTJPPK0|Ape U %wtweet_live-796881572d91/web/enmi2011-technologie-confiance/images/tweetExplainBgd.gifUTJPPK0|AWj~D wtweet_live-796881572d91/web/enmi2011-technologie-confiance/index.phpUTJPPK0|A?w&/ wtweet_live-796881572d91/web/enmi2011/config.phpUTJPPK0|A!w'@ b xtweet_live-796881572d91/web/enmi2011/images/archive-enmi2011.jpgUTJPPK0|A%Z%@ sxtweet_live-796881572d91/web/enmi2011/images/big_visuel_edito.jpgUTJPPK0|A ( Q 9 Dqytweet_live-796881572d91/web/enmi2011/images/head_logo.gifUTJPPK0|ADLq? |ytweet_live-796881572d91/web/enmi2011/images/slide4-enmi2011.jpgUTJPPK0|A9 > ? ztweet_live-796881572d91/web/enmi2011/images/tweetExplainBgd.gifUTJPPK0|AWj~. 큸ztweet_live-796881572d91/web/enmi2011/index.phpUTJPPK0|AƔ ; ztweet_live-796881572d91/web/enmi2012-seminaire-1/config.phpUTJPPK0|AO%nNPL ztweet_live-796881572d91/web/enmi2012-seminaire-1/images/archive-enmi2012.jpgUTJPPK0|A 7;O ~1{tweet_live-796881572d91/web/enmi2012-seminaire-1/images/big_visuel_enmi2012.jpgUTJPPK0|A#ҜE i|tweet_live-796881572d91/web/enmi2012-seminaire-1/images/head_logo.pngUTJPPK0|A;K %z|tweet_live-796881572d91/web/enmi2012-seminaire-1/images/slide4-enmi2012.jpgUTJPPK0|AWj~: }R}tweet_live-796881572d91/web/enmi2012-seminaire-1/index.phpUTJPPK0|A9\-I> XS}tweet_live-796881572d91/web/fens2012-designmetadata/config.phpUTJPPK0|A QdTO Z}tweet_live-796881572d91/web/fens2012-designmetadata/images/archive-designmd.jpgUTJPPK0|Ag4K }tweet_live-796881572d91/web/fens2012-designmetadata/images/big-designmd.jpgUTJPPK0|AIG ~tweet_live-796881572d91/web/fens2012-designmetadata/images/fens-iri.pngUTJPPK0|AzBmF ~tweet_live-796881572d91/web/fens2012-designmetadata/images/fens-pt.pngUTJPPK0|A%IM ~tweet_live-796881572d91/web/fens2012-designmetadata/images/slide-designmd.jpgUTJPPK0|AWj~= Jtweet_live-796881572d91/web/fens2012-designmetadata/index.phpUTJPPK0|AM?lb E xKtweet_live-796881572d91/web/fens2012-edito-datajournalisme/config.phpUTJPPK0|AO34X VUtweet_live-796881572d91/web/fens2012-edito-datajournalisme/images/archive-edito-fens.jpgUTJPPK0|A6P TT tweet_live-796881572d91/web/fens2012-edito-datajournalisme/images/big_edito_fens.jpgUTJPPK0|AIN Gtweet_live-796881572d91/web/fens2012-edito-datajournalisme/images/fens-iri.pngUTJPPK0|AzBmM etweet_live-796881572d91/web/fens2012-edito-datajournalisme/images/fens-pt.pngUTJPPK0|A.!}V w|tweet_live-796881572d91/web/fens2012-edito-datajournalisme/images/slide-edito-fens.jpgUTJPPK0|AWj~D %tweet_live-796881572d91/web/fens2012-edito-datajournalisme/index.phpUTJPPK0|A*~ ; tweet_live-796881572d91/web/fens2012-gamestudies/config.phpUTJPPK0|A4OQT tweet_live-796881572d91/web/fens2012-gamestudies/images/archive-gamestudies-fens.jpgUTJPPK0|AXrP Ttweet_live-796881572d91/web/fens2012-gamestudies/images/big-gamestudies-fens.jpgUTJPPK0|AID tweet_live-796881572d91/web/fens2012-gamestudies/images/fens-iri.pngUTJPPK0|AzBmC tweet_live-796881572d91/web/fens2012-gamestudies/images/fens-pt.pngUTJPPK0|AIƞl!xR p0tweet_live-796881572d91/web/fens2012-gamestudies/images/slide-gamestudies-fens.jpgUTJPPK0|AWj~: tweet_live-796881572d91/web/fens2012-gamestudies/index.phpUTJPPK0|AiB rtweet_live-796881572d91/web/fens2012-mashupfilmfestival/config.phpUTJPPK0|A |Z|~O Ttweet_live-796881572d91/web/fens2012-mashupfilmfestival/images/archive-muff.jpgUTJPPK0|AU[`dK #tweet_live-796881572d91/web/fens2012-mashupfilmfestival/images/big-muff.jpgUTJPPK0|AIK tweet_live-796881572d91/web/fens2012-mashupfilmfestival/images/fens-iri.pngUTJPPK0|AzBmJ tweet_live-796881572d91/web/fens2012-mashupfilmfestival/images/fens-pt.pngUTJPPK0|A恾8%M Թtweet_live-796881572d91/web/fens2012-mashupfilmfestival/images/slide-muff.jpgUTJPPK0|A7[MB^sA tweet_live-796881572d91/web/fens2012-mashupfilmfestival/index.phpUTJPPK0|A\aF ftweet_live-796881572d91/web/fens2012-museo-culture-opendata/config.phpUTJPPK0|A@HVWY Dtweet_live-796881572d91/web/fens2012-museo-culture-opendata/images/archive-museo-fens.jpgUTJPPK0|Azv01U tweet_live-796881572d91/web/fens2012-museo-culture-opendata/images/big-museo-fens.jpgUTJPPK0|AIO tweet_live-796881572d91/web/fens2012-museo-culture-opendata/images/fens-iri.pngUTJPPK0|AzBmN /tweet_live-796881572d91/web/fens2012-museo-culture-opendata/images/fens-pt.pngUTJPPK0|AàW Ftweet_live-796881572d91/web/fens2012-museo-culture-opendata/images/slide-museo-fens.jpgUTJPPK0|AWj~E :tweet_live-796881572d91/web/fens2012-museo-culture-opendata/index.phpUTJPPK0|AqB? :tweet_live-796881572d91/web/fens2012-vinyl-numerique/config.phpUTJPPK0|Aƒ(hjM =Ctweet_live-796881572d91/web/fens2012-vinyl-numerique/images/archive-vinyl.jpgUTJPPK0|A%-?@BI Ztweet_live-796881572d91/web/fens2012-vinyl-numerique/images/big-vinyl.jpgUTJPPK0|AIH ltweet_live-796881572d91/web/fens2012-vinyl-numerique/images/fens-iri.pngUTJPPK0|AzBmG r tweet_live-796881572d91/web/fens2012-vinyl-numerique/images/fens-pt.pngUTJPPK0|A^YYK 2!tweet_live-796881572d91/web/fens2012-vinyl-numerique/images/vinyl-slide.jpgUTJPPK0|AWj~> tweet_live-796881572d91/web/fens2012-vinyl-numerique/index.phpUTJPPK0|AIEd 4 tweet_live-796881572d91/web/fens2012-wiid/config.phpUTJPPK0|Axw $A tweet_live-796881572d91/web/fens2012-wiid/images/archive-wiid.jpgUTJPPK0|A А1n,w= -tweet_live-796881572d91/web/fens2012-wiid/images/big-wiid.jpgUTJPPK0|AzBm< tweet_live-796881572d91/web/fens2012-wiid/images/fens-pt.pngUTJPPK0|AHi^h? ftweet_live-796881572d91/web/fens2012-wiid/images/wiid_slide.jpgUTJPPK0|AWj~3 tweet_live-796881572d91/web/fens2012-wiid/index.phpUTJPPK0|A|4[^s/ xtweet_live-796881572d91/web/fens2012/client.phpUTJPPK0|AHe/ <tweet_live-796881572d91/web/fens2012/config.phpUTJPPK0|AI8 tweet_live-796881572d91/web/fens2012/images/fens-iri.pngUTJPPK0|Ax)y: 4tweet_live-796881572d91/web/fens2012/images/slide-fens.jpgUTJPPK0|A|4[^s. wtweet_live-796881572d91/web/fens2012/index.phpUTJPPK0|A7 B :tweet_live-796881572d91/web/fens_FabLab_Design_Metadata/config.phpUTJPPK0|APU Ptweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/big_visuel_rsln_mb.jpgUTJPPK0|ACCL tweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/head_logo.gifUTJPPK0|A{[p`I 4tweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/slide4.jpgUTJPPK0|A@f@m\ Ӑtweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/tail_fens_fablab_designmd.jpgUTJPPK0|A2Z Atweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/tail_fens_fablab_fablab.jpgUTJPPK0|A g b R ytweet_live-796881572d91/web/fens_FabLab_Design_Metadata/images/tweetExplainBgd.gifUTJPPK0|AWj~A qtweet_live-796881572d91/web/fens_FabLab_Design_Metadata/index.phpUTJPPK0|AcF Stweet_live-796881572d91/web/fens_FabLab_Design_Metadata/traduction.phpUTJPPK0|A `@  9 艐tweet_live-796881572d91/web/humanitats-digital/config.phpUTJPPK0|At|}L tweet_live-796881572d91/web/humanitats-digital/images/archive-humanitats.pngUTJPPK0|As/ARBO 2 tweet_live-796881572d91/web/humanitats-digital/images/big_visuel_humanitats.pngUTJPPK0|AzK H fOtweet_live-796881572d91/web/humanitats-digital/images/head_logo_cccb.gifUTJPPK0|A>3?K [tweet_live-796881572d91/web/humanitats-digital/images/slide4-humanitats.pngUTJPPK0|AWj~8 &tweet_live-796881572d91/web/humanitats-digital/index.phpUTJPPK0|A<OM 66 tweet_live-796881572d91/web/iii-catastrophe/config.phpUTJPPK0|AeA=M ~tweet_live-796881572d91/web/iii-catastrophe/images/big_visuel_catastrophe.jpgUTJPPK0|AsRTP Ctweet_live-796881572d91/web/iii-catastrophe/images/big_visuel_catastrophe_en.jpgUTJPPK0|A.rˈ`vbP tweet_live-796881572d91/web/iii-catastrophe/images/big_visuel_catastrophe_fr.jpgUTJPPK0|A EGP Qtweet_live-796881572d91/web/iii-catastrophe/images/big_visuel_catastrophe_jp.jpgUTJPPK0|AIpqB tweet_live-796881572d91/web/iii-catastrophe/images/catastrophe.jpgUTJPPK0|A</hkhE ( tweet_live-796881572d91/web/iii-catastrophe/images/catastrophe_en.jpgUTJPPK0|AIpqE qtweet_live-796881572d91/web/iii-catastrophe/images/catastrophe_fr.jpgUTJPPK0|AWZ>``E tweet_live-796881572d91/web/iii-catastrophe/images/catastrophe_jp.jpgUTJPPK0|AUج[| w @ Ctweet_live-796881572d91/web/iii-catastrophe/images/head_logo.gifUTJPPK0|ArtdfhI Mtweet_live-796881572d91/web/iii-catastrophe/images/slide4_catastrophe.jpgUTJPPK0|Aya0L tweet_live-796881572d91/web/iii-catastrophe/images/slide4_catastrophe_en.jpgUTJPPK0|A5GL tweet_live-796881572d91/web/iii-catastrophe/images/slide4_catastrophe_fr.jpgUTJPPK0|A 0L Extweet_live-796881572d91/web/iii-catastrophe/images/slide4_catastrophe_jp.jpgUTJPPK0|AgV gF Mtweet_live-796881572d91/web/iii-catastrophe/images/tweetExplainBgd.gifUTJPPK0|AWj~5 `[tweet_live-796881572d91/web/iii-catastrophe/index.phpUTJPPK0|Afy5 6\tweet_live-796881572d91/web/images/ENMI_2010_logo.gifUTJPPK0|A{[p`A atweet_live-796881572d91/web/images/FENS_FABLAB_DESIGNMETADATA.jpgUTJPPK0|AC*a? 㽟tweet_live-796881572d91/web/images/KITtweetWriterBgdTxtArea.psdUTJPPK0|AI% 6 tweet_live-796881572d91/web/images/Logo-thdculture.pngUTJPPK0|Ae!>"3 3.tweet_live-796881572d91/web/images/Sans-titre-3.gifUTJPPK0|A;?J \0 Ptweet_live-796881572d91/web/images/about_bgd.jpgUTJPPK0|Ahwr5 Atweet_live-796881572d91/web/images/archivesBoxBgd.gifUTJPPK0|AQf^^6 Htweet_live-796881572d91/web/images/archivesBoxBody.gifUTJPPK0|AmVJ8 XItweet_live-796881572d91/web/images/archivesBoxFooter.gifUTJPPK0|A !#8 wJtweet_live-796881572d91/web/images/archivesBoxHeader.gifUTJPPK0|A-`4 Ktweet_live-796881572d91/web/images/bg_button_a_b.pngUTJPPK0|A:+FA4 Ntweet_live-796881572d91/web/images/bg_button_a_w.gifUTJPPK0|AB4 YQtweet_live-796881572d91/web/images/bg_button_a_w.pngUTJPPK0|AG7 yTtweet_live-796881572d91/web/images/bg_button_span_b.pngUTJPPK0|A &l7 Wtweet_live-796881572d91/web/images/bg_button_span_w.gifUTJPPK0|ATnB=7 ]tweet_live-796881572d91/web/images/bg_button_span_w.pngUTJPPK0|A=* Fatweet_live-796881572d91/web/images/bgd.jpgUTJPPK0|Ags5 btweet_live-796881572d91/web/images/bgdDescription.jpgUTJPPK0|A+e/ etweet_live-796881572d91/web/images/bgdTitle.pngUTJPPK0|AP6 gtweet_live-796881572d91/web/images/bgd_player_fens.jpgUTJPPK0|A"6 tweet_live-796881572d91/web/images/bgd_player_fens.pngUTJPPK0|A"5 {tweet_live-796881572d91/web/images/bgd_player_thd.pngUTJPPK0|A$Q2 mtweet_live-796881572d91/web/images/black_arrow.pngUTJPPK0|Aaq6 Ťtweet_live-796881572d91/web/images/black_arrow_big.pngUTJPPK0|A| 0 פtweet_live-796881572d91/web/images/black_big.pngUTJPPK0|A"X?2 tweet_live-796881572d91/web/images/bt_bgd_blue.jpgUTJPPK0|Aއ72 3tweet_live-796881572d91/web/images/bt_bgd_grey.jpgUTJPPK0|A. tweet_live-796881572d91/web/images/bt_blue.pngUTJPPK0|A;/ tweet_live-796881572d91/web/images/bt_green.pngUTJPPK0|A![(- tweet_live-796881572d91/web/images/bt_red.pngUTJPPK0|A,j0 tweet_live-796881572d91/web/images/bt_yellow.pngUTJPPK0|A4r~YT. tweet_live-796881572d91/web/images/flag_en.gifUTJPPK0|A.#. tweet_live-796881572d91/web/images/flag_fr.gifUTJPPK0|A$ =w. tweet_live-796881572d91/web/images/flag_jp.gifUTJPPK0|A'pm1 !tweet_live-796881572d91/web/images/greenTweet.pngUTJPPK0|AƘ/.,6 tweet_live-796881572d91/web/images/grey_arrow_Show.pngUTJPPK0|Ajo3.+ tweet_live-796881572d91/web/images/h300.pngUTJPPK0|A`A<1 )tweet_live-796881572d91/web/images/horizontal.pngUTJPPK0|AG%- tweet_live-796881572d91/web/images/loader.gifUTJPPK0|A nl5 Mtweet_live-796881572d91/web/images/menu_underline.gifUTJPPK0|AƤv0 'tweet_live-796881572d91/web/images/navigator.pngUTJPPK0|AsΈ0 /tweet_live-796881572d91/web/images/pol_color.gifUTJPPK0|A /  tweet_live-796881572d91/web/images/redTweet.pngUTJPPK0|A %˽ 3 .tweet_live-796881572d91/web/images/s'identifier.pngUTJPPKEE+8