ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 11931


Ignore:
Timestamp:
Jun 18, 2009, 2:09:22 PM (14 years ago)
Author:
nagasawa
Message:

#3748:SNS内携帯ページの自動リンクに対応(2.14.x)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/stable-2.14.x/webapp/lib/smarty_plugins/modifier.t_url2a_ktai.php

    r7583 r11931  
    99 *
    1010 * @param  string $string
     11 nban_mask_dashboard_jp_20090617
    1112 * @return string
    1213 */
     
    3233    }
    3334
    34     $url_pattern = sprintf('/^%s(?:index.php)?\?m=pc&a=(\w+)((?:[a-zA-Z0-9_=]|&)*)$/', preg_quote($openpne_url, '/'));
     35    $url_pattern = sprintf('/^%s(?:index.php)?\?m=(pc|ktai)&a=(\w+)((?:[a-zA-Z0-9_=]|&)*)$/', preg_quote($openpne_url, '/'));
    3536
    3637    $openpne_url_matches = array();
     
    3839        return $raw_url;
    3940    }
    40     $action = $openpne_url_matches[1];
    41     $param = $openpne_url_matches[2];
     41    $module = $openpne_url_matches[1];
     42    $action = $openpne_url_matches[2];
     43    $param = $openpne_url_matches[3];
    4244
    43     //自動リンクのアクションリストにない場合は変換なし
    44     if (empty($GLOBALS['_OPENPNE_PC2KTAI_LINK_ACTION_LIST'][$action])) {
    45         return $raw_url;
     45    if ($module === 'pc') {
     46        // 自動リンクのアクションリストにない場合は変換なし
     47        if (empty($GLOBALS['_OPENPNE_PC2KTAI_LINK_ACTION_LIST'][$action])) {
     48            return $raw_url;
     49        }
     50        $converted_action = $GLOBALS['_OPENPNE_PC2KTAI_LINK_ACTION_LIST'][$action];
     51    } else {
     52        $converted_action = $action;
     53        // ksidを取り払う
     54        $ksid_pos = strpos($param, 'ksid=');
     55        if ($ksid_pos !== false) {
     56            $ksid_pos_end = strpos($param, '&', $ksid_pos);
     57            if ($ksid_pos_end === false) {
     58                $ksid_pos -= 5;
     59                $ksid_pos_end = strlen($param);
     60            } else {
     61              $ksid_pos_end += 5;
     62            }
     63            $param = substr($param, 0, $ksid_pos) . substr($param, $ksid_pos_end, strlen($param) - $ksid_pos_end);
     64        }
    4665    }
    47 
    48     $converted_action = $GLOBALS['_OPENPNE_PC2KTAI_LINK_ACTION_LIST'][$action];
    4966    $param = str_replace('&', '&', $param);
    5067
Note: See TracChangeset for help on using the changeset viewer.