设为首页 收藏本站
查看: 237|回复: 0

[经验分享] itop portal 页面添加中英文切换按钮

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-20 09:22:36 | 显示全部楼层 |阅读模式
思想:
修改portal页面调用的webpage.class.inc.php,在这里面加入我们想要的什么按钮啊,图片啊,表单啊
表单参数传给修改语言的脚本
完成后,自动跳转到portal页面


附件:
图标元素:中国国旗logo,美国国旗logo
vim main.php
vim conf.php



下载图标元素到itop的images:

1
2
3
4
5
root@itsm:/home/itsm# cd /var/www/html/images/
wget usa.jpg
wget chn.jpg
mv chn.png chinese.jpg
mv usa.png english.jpg






修改webpage.class.inc.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
root@itsm:/var/www/html/images# cd ../application/
root@itsm:/var/www/html/application# cp webpage.class.inc.php  webpage.class.inc.php.0418
root@itsm:/var/www/html/application# vim webpage.class.inc.php
root@itsm:/var/www/html/portal/language# vim conf.php 修改itop 的url
        if (class_exists('MetaModel') && MetaModel::GetConfig())
        {
                        echo "<link rel=\"shortcut icon\" href=\"".utils::GetAbsoluteUrlAppRoot()."images/favicon.ico?itopversion=".ITOP_VERSION."\" />\n";
        }
        $myUserID = UserRights::GetUserId();
        if (Dict::GetUserLanguage()=="EN US"){$mylanguage = "ZH";$lanuage_logo ="../images/chinese.jpg";$title="切换到中文";}
        if (Dict::GetUserLanguage()=="ZH CN"){$mylanguage = "EN";$lanuage_logo ="../images/english.jpg";$title="switch to English";}
        echo "</head>\n";
        echo "<body>\n";
        $logo1 = '<div id="logo"></div>';
        $logo2 = " <div id=\"logo\">  ";
        $logo2 .= " <form action=language/main.php method=\"post\"> ";
        $logo2 .= "<input type=\"hidden\" value=\"{$myUserID}\" name=\"user_id\" />";
        $logo2 .= " <input type=\"hidden\" value=\"{$mylanguage}\" name=\"lang\" />";
        $logo2 .= " <input type=\"image\" src={$lanuage_logo} width=\"32\" heigth=\"32\" title=\"{$title}\" onclick=\"this.submit()\" style=\"position:absolute;right:30px;top:00px\" />";     
        $logo2 .= "</form>";
        $logo2 .= "<a href='../'><img width=\"22\" heigth=\"22\"  title=\"Go to console\"  src=\"../images/switch.jpg\" style=\"position:absolute;right:0px;top:00px\"></a> ";
        $logo2 .= "</div> ";
        $myhtml =  self::FilterXSS($this->s_content);
        echo str_replace($logo1,$logo2,$myhtml);
       if (trim($s_captured_output) != "")
        {
            echo "<div class=\"raw_output\">".self::FilterXSS($s_captured_output)."</div>\n";
        }






被调用的php脚本

1
2
3
4
5
6
7
8
9
10
11
root@demo:/var/www/html/itop.new/portal/language# vim conf.php
<?php
//itop的webseervice 接口
define("URL", "https://itsmtest.logo.cn:11443/itop.new/webservices/rest.php");
#define("URL", "https://itsm-uat.logo.cn/webservices/rest.php");
#define("URL", "https://itsm.logo.cn/webservices/rest.php");
$aConfig = array(
                'itop_user'  => 'admin',                        
                'itop_pass'  => 'password',                     
);
?>






主程序:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
root@demo:/var/www/html/itop.new/portal/language# vim main.php
<?php
function request_post($url, $param) {
  if (empty($url) || empty($param)) return false;
  $postUrl = $url;
  $curlPost = $param;
  $ch = curl_init();                              //初始化curl
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  curl_setopt($ch, CURLOPT_URL,$postUrl);          //抓取指定网页
  curl_setopt($ch, CURLOPT_HEADER, 0);             //设置header
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);     //要求结果为字符串且输出到屏幕上
  curl_setopt($ch, CURLOPT_POST, 1);               //post提交方式
  curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
  $data = curl_exec($ch);                          //运行curl
  curl_close($ch);
    return json_decode($data,true);                  //把返回的数据转换成json格式
}
//检查与itop通信是否正常
function check_itop_network (){
    $url = URL;
    $get1 = request_post($url,"test");
    $get=$get1['message'];
    if(!strstr($get,"Missing parameter" )){
    echo "与 itop 连接失败!\n";
    exit;
    }
}
//itop 的 webservice 接口,可以对itop中符合Data Model进行增删改查
function Action_update($class,$key,$fields){
  global $aConfig;
  $url = URL;
  $post_data['version']  = '1.0';
  $post_data['auth_user']= $aConfig['itop_user'];
  $post_data['auth_pwd'] = $aConfig['itop_pass'];
  $post_data['json_data']= "{
     \"operation\": \"core/update\",
     \"class\": \"{$class}\",
     \"key\": $key,
     \"output_fields\": \"*\",
     \"fields\": { $fields } ,
     \"comment\": \"\"   
     }";
return request_post($url, $post_data);
}
#********************************************************************************
#       Main
#********************************************************************************
require "conf.php";
//检查与itop联络状态
check_itop_network();
$ldap_id   = $_POST['user_id'];
$ldap_lang = $_POST['lang'];
if($ldap_lang == "EN"){$fields="\"language\": \"EN US\"";}
if($ldap_lang == "ZH"){$fields="\"language\": \"ZH CN\"";}
Action_update('UserLDAP',$ldap_id,$fields) ;
header("Location: ../index.php");
?>







访问测试:https://itsm.logo.cn/portal/index.php




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-206337-1-1.html 上篇帖子: Ubuntu 7.04光盘可以申请邮寄了 下篇帖子: 使用LVPM迁移ubuntu到硬盘的笔记 portal
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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