Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

[发布] DX3.2虛擬形象UTF8繁體升級版 by pole1010

[复制链接]
pole1010 发表于 2015-4-24 11:19:51 | 显示全部楼层 |阅读模式
本帖最后由 pole1010 于 2015-4-24 11:24 编辑

DX3.2虛擬形象UTF8繁體升級版 by pole1010
插件名稱:虛擬形象
適用版本: Discuz! X Series
作  者: alan888
修  改: winghong1309
升     級: pole1010
原 發   帖:   http://192.210.219.88/~pole1010/upload/thread-1553-1-1.html


演示
http://192.210.219.88/~pole1010/upload/plugin.php?id=virtualimage:virtualimage
發現到會影響
1.安裝虛擬形象後上傳圖片本地無法預覽已經修正
2.驗證碼無法顯示已經修正
3.空白原因:請把FTP 設置 source/plugin/virtualimage/data/ 目錄為  777已設置
4.下載附件後解壓縮上傳根目錄
5.這一定要改(附件下載這項已經修改完畢直接覆蓋即可),這影響到連接頭像及UCenter应用管理通信問題(曾經修改過以下文件要用修改)
source/function/function_core.php

  1. function avatar($uid, $size = 'middle', $returnsrc = FALSE, $real = FALSE, $static = FALSE, $ucenterurl = '') {
  2.         global $_G;
  3.         if($_G['setting']['plugins']['func'][HOOKTYPE]['avatar']) {
  4.                 $_G['hookavatar'] = '';
  5.                 $param = func_get_args();
  6.                 hookscript('avatar', 'global', 'funcs', array('param' => $param), 'avatar');
  7.                 if($_G['hookavatar']) {
  8.                         return $_G['hookavatar'];
  9.                 }
  10.         }
  11.         static $staticavatar;
  12.         if($staticavatar === null) {
  13.                 $staticavatar = $_G['setting']['avatarmethod'];
  14.         }

  15.         $ucenterurl = empty($ucenterurl) ? $_G['setting']['ucenterurl'] : $ucenterurl;
  16.         $size = in_array($size, array('big', 'middle', 'small')) ? $size : 'middle';
  17.         $uid = abs(intval($uid));
  18.         if(!$staticavatar && !$static) {
  19.                 return $returnsrc ? $ucenterurl.'/avatar.php?uid='.$uid.'&size='.$size.($real ? '&type=real' : '') : '<img src="'.$ucenterurl.'/avatar.php?uid='.$uid.'&size='.$size.($real ? '&type=real' : '').'" />';
  20.         } else {
  21.                 $uid = sprintf("%09d", $uid);
  22.                 $dir1 = substr($uid, 0, 3);
  23.                 $dir2 = substr($uid, 3, 2);
  24.                 $dir3 = substr($uid, 5, 2);
  25.                 $file = $ucenterurl.'/data/avatar/'.$dir1.'/'.$dir2.'/'.$dir3.'/'.substr($uid, -2).($real ? '_real' : '').'_avatar_'.$size.'.jpg';
  26.                 return $returnsrc ? $file : '<img src="'.$file.'" />';
  27.         }
  28. }
复制代码

以下替代
  1. function avatar($uid, $size = 'middle', $returnsrc = FALSE, $real = FALSE, $static = FALSE, $ucenterurl = '') {
  2.         global $_G;
  3.         if($_G['setting']['plugins']['func'][HOOKTYPE]['avatar']) {
  4.                 $_G['hookavatar'] = '';
  5.                 $param = func_get_args();
  6.                 hookscript('avatar', 'global', 'funcs', array('param' => $param), 'avatar');
  7.                 if($_G['hookavatar']) {
  8.                         return $_G['hookavatar'];
  9.                 }
  10.         }
  11.         static $staticavatar;
  12.         if($staticavatar === null) {
  13.                 $staticavatar = $_G['setting']['avatarmethod'];
  14.         }

  15.         $ucenterurl = empty($ucenterurl) ? $_G['setting']['ucenterurl'] : $ucenterurl;
  16.         $size = in_array($size, array('big', 'middle', 'small')) ? $size : 'middle';
  17.         $uid = abs(intval($uid));
  18.                 $vic = $vi = '';
  19.         if(!$_G['cache']['plugin']['virtualimage']['imageclose']) {
  20.             include_once DISCUZ_ROOT.'./source/plugin/virtualimage/virtualimage.class.php';
  21.                     $vic = new VI();
  22.                     $vi = $vic->VI($uid , $size , $returnsrc , $real , $static , $ucenterurl);
  23.         }
  24.         if(!$vi) {
  25.             if(!$staticavatar && !$static) {
  26.                     return $returnsrc ? $ucenterurl.'/avatar.php?uid='.$uid.'&size='.$size : '<img src="'.$ucenterurl.'/avatar.php?uid='.$uid.'&size='.$size.($real ? '&type=real' : '').'" />';
  27.             } else {
  28.                     $uid = sprintf("%09d", $uid);
  29.                     $dir1 = substr($uid, 0, 3);
  30.                     $dir2 = substr($uid, 3, 2);
  31.                     $dir3 = substr($uid, 5, 2);
  32.                     $file = $ucenterurl.'/data/avatar/'.$dir1.'/'.$dir2.'/'.$dir3.'/'.substr($uid, -2).($real ? '_real' : '').'_avatar_'.$size.'.jpg';
  33.                     return $returnsrc ? $file : '<img src="'.$file.'" />';
  34.             }
  35.             } else {
  36.         return $vi;
  37.         }
  38.     }
复制代码
更新緩存
下載點
https://drive.google.com/file/d/0BzFiwCgmaKOaZzNsc05fWmFrSGM/view?usp=sharing



回复

使用道具 举报

yoxi011 发表于 2015-4-24 11:33:41 | 显示全部楼层
这个不错支持一下了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-11-23 13:07 , Processed in 0.112276 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表