Changeset 88966 in spip-zone for _libs_


Ignore:
Timestamp:
May 2, 2015, 4:40:29 PM (5 years ago)
Author:
real3t@…
Message:

Version 0.2

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _libs_/html2spip/HTML2SPIPEngine.class

    r88965 r88966  
    6565    'style'         => null,
    6666
    67     'script'        => array('_identityS', '_identityE', array('type')),
    68     'embed'         => array('_identityS', '_identityE', null),
    69     'param'         => array('_identityS', '_identityE', null),
    70     'object'        => array('_identityS', '_identityE', null),
    71 
    7267    'div'           => null, #array('_div', '_div', array('id', 'class', 'style',
    7368                             # 'align')),
     
    114109    'b'             => array('_strongS', '_strongE', array('style')),
    115110    'strong'        => array('_strongS', '_strongE'),
    116     'blockquote'    => array('<quote>', '</quote>'),
     111    'blockquote'    => array('_quoteS', '_quoteE', array('class')),
     112    'code'          => array('_codeS', '_codeE', array('class')),
     113    'textarea'      => array('_cadreS', '_cadreE', array('class')),
    117114    'em'            => array('_emS', '_emE'),
    118115    'i'             => array('_emS', '_emE'),
     
    122119    'sup'           => array('_supS', '_supE', array()),
    123120    'sub'           => array('_subS', '_subE', array()),
     121    'strike'        => array('_delS', '_delE', array()),
     122    'del'           => array('_delS', '_delE', array()),
    124123
    125124    'a'             => array('_a', '_a', array(
     
    172171  protected function _identityS($tag, $attributes) {
    173172    $data = "<$tag";
     173
    174174    foreach($attributes as $name => $value)
    175175      $data .= " $name=\"$value\"";
     176
    176177    $data .= '>';
     178
    177179    return $data;
    178180  }
     
    281283    if ($this->listDepth > 0)
    282284      $this->listDepth--;
     285    else
     286      return "\n";
    283287  }
    284288
     
    448452  }
    449453
     454  protected function _codeS($tag, $attributes, $text) {
     455    if (!strlen(trim($text)))
     456      return '';
     457
     458    return ' <code>';
     459  }
     460
     461  protected function _codeE($tag, $attributes, $text) {
     462    if (!strlen(trim($text)))
     463      return '';
     464
     465    return '</code> ';
     466  }
     467
     468  protected function _cadreS($tag, $attributes, $text) {
     469    if (!strlen(trim($text)))
     470      return '';
     471
     472    return ' <cadre>';
     473  }
     474
     475  protected function _cadreE($tag, $attributes, $text) {
     476    if (!strlen(trim($text)))
     477      return '';
     478
     479    return '</cadre> ';
     480  }
     481
     482  protected function _quoteS($tag, $attributes, $text) {
     483    if (!strlen(trim($text)))
     484      return '';
     485
     486    if (array_key_exists('class', $attributes))
     487      if (preg_match('/\bspip_poesie\b/', $attributes['class']))
     488        return ' <poesie>';
     489
     490    return ' <quote>';
     491  }
     492
     493  protected function _quoteE($tag, $attributes, $text) {
     494    if (!strlen(trim($text)))
     495      return '';
     496
     497    if (array_key_exists('class', $attributes))
     498      if (preg_match('/\bspip_poesie\b/', $attributes['class']))
     499        return '</poesie> ';
     500
     501    return '</quote> ';
     502  }
     503
    450504  protected function _strongS($tag, $attributes, $text) {
    451505    if (!strlen(trim($text)))
     
    510564
    511565    return '</sub>';
     566  }
     567
     568  protected function _delS($tag, $attributes, $text) {
     569    if (!strlen(trim($text)))
     570      return '';
     571
     572    return '<del>';
     573  }
     574
     575  protected function _delE($tag, $attributes, $text) {
     576    if (!strlen(trim($text)))
     577      return '';
     578
     579    return '</del>';
    512580  }
    513581
     
    795863  }
    796864
     865  public function addIdentityTags($tags) {
     866        foreach ($tags as $tag)
     867                $this->tagSubstitute[$tag] =
     868                    array('_identityS', '_identityE', null);
     869  }
     870
    797871  protected function pushWithin($tag) {
    798872    array_unshift($this->withinStack, $tag);
Note: See TracChangeset for help on using the changeset viewer.