1#!/bin/bash
2
3if [ `id | awk '{print $1}'` != "uid=0(root)" ]
4then
5    echo -e "{LYouMustBeRoot}"
6    echo -e "\n{LInstallEnd}"
7    read RESP
8    exit
9fi
10
11RUNP=`ps -ef |grep -v grep |grep USBModem.jar | grep java |awk '{print $2}'`
12
13if [ "x${RUNP}" != "x" ]
14then
15    echo -e "{LProgramRunning}"
16    echo -e "\n{LInstallEnd}"
17    read RESP
18    exit
19fi
20
21# /*yes or no ��������, yes����0, no����1*/
22yes_or_no()
23{
24    if [ ${#} -ne 2 ]
25    then
26        echo -e "yes_or_or: {ErrorPara}"
27        return 1
28    fi
29    if [ "${2}" = "Y" ]
30    then
31        DEFPMPT="([Y]/N):\c "
32        DEFVAL="Y"
33    else
34        DEFPMPT="(Y/[N]):\c "
35        DEFVAL="N"
36    fi
37    echo -e "${1} ${DEFPMPT}"
38    read ANS
39    while [ "${ANS}" != "Y" -a "${ANS}" != "y" -a "${ANS}" != "N" -a "${ANS}" != "n" -a ! -z "${ANS}" ]
40    do
41        echo -e "${1} ${DEFPMPT}"
42        read ANS
43    done
44    : ${ANS:="${DEFVAL}"}
45    if [ "${ANS}" != "Y" -a "${ANS}" != "y" ]
46    then
47        unset ANS
48        return 1
49    fi
50    unset ASN
51    return 0
52}
53yes_or_no "\n{LProgramRemoving}" N
54if [ ${?} -ne 0 ]
55then	
56  exit
57fi
58
59#uninstall drivers by chip type
60rm -f /etc/udev/rules.d/11-longcheer-Datacard.rules
61#1��Icera
62if [ "x{CHIPTYPE}" = "x1" ]
63then
64#uninstall eject drivers 
65
66if [ "x{DEVICETYPE}" = "x4" ]
67then
68    DRIVERLS="onda-lq-zerocd"
69else
70    DRIVERLS="longcheer-wm65-zerocd"
71fi
72# for Ubuntu
73    UBUNTURELEASE=`grep Ubuntu /etc/issue 2>&1 | awk -F ' ' '{printf $1}'`
74    if [ "x${UBUNTURELEASE}" = "xUbuntu" ]
75    then
76    	dpkg -r ${DRIVERLS} >/dev/null  2>&1
77    fi
78    
79# for Debian
80    DEBIANRELEASE=`grep Debian /etc/issue 2>&1 | awk -F ' ' '{printf $1}'`
81    if [ "x${DEBIANRELEASE}" = "xDebian" ]
82    then
83	    dpkg -r ${DRIVERLS} >/dev/null  2>&1
84    fi
85
86# for Fedora
87    DEBIANRELEASE=`grep Fedora /etc/issue 2>&1 | awk -F ' ' '{printf $1}'`
88    if [ "x${DEBIANRELEASE}" = "xFedora" ]
89    then
90	      rpm -e ${DRIVERLS} >/dev/null  2>&1
91    fi
92
93# for OpenSuSE
94    if [ -f /etc/SuSE-release ]
95    then
96	    echo "do nothing..."
97    fi  
98  fi
99#2��Qualcomm  
100if [ "x{CHIPTYPE}" = "x2" ]
101then
102    #uninstall usb drivers 
103    echo -e "{LDriverUninstalling}"
104    DRIVER_USED=`lsmod |grep ^lctserial |awk '{print $3}'`
105    if [ "x${DRIVER_USED}" != "x0" -a "x${DRIVER_USED}" != "x" ]
106    then
107      echo -e "{LDriverUsed}"
108      echo -e "\n{LInstallEnd}"
109      read RESP
110      exit
111    fi    
112    #Remove USB Driver
113   # cd {INSTALLPATH}/driver; make uninstall; make clean   
114    cd {INSTALLPATH}/driver/ndis/src; ./add_header.sh clean
115    rm -f /etc/udev/rules.d/26-longcheer-Datacard.rules
116    rm -f /lib/udev/longcheer-cm55-ejectcd
117    rm -f /lib/udev/longcheer-cm55-testcd  
118    if [ -f /lib/udev/lcdoshift ]
119    then
120        rm -f /lib/udev/lcdoshift*
121        rm -f /lib/udev/load_driver.sh
122        rm -f /lib/udev/lc_ether
123    fi   
124fi
125udevadm control --reload-rules
126udevadm trigger --subsystem-match="usb"
127
128{INSTALLPATH}/active/active_uninstall
129rm -rf {INSTALLPATH}
130rm -rf /usr/local/lcDial
131
132grep -v USBModem.sh /etc/sudoers > /etc/sudoers.bak 2>&1
133sed -i "s/# ,{REQUIRETTY},{DELETECOMMENT}/{REQUIRETTY}/g" /etc/sudoers.bak 2>/dev/null
134cp -f /etc/sudoers.bak /etc/sudoers
135rm -f /etc/sudoers.bak
136if [ -d /root/Desktop ]
137then
138    rm -rf /root/Desktop/USBModem.desktop
139else
140    rm -rf /root/USBModem.desktop
141fi
142rm -rf /usr/share/applications/USBModem.desktop
143rm -rf /usr/share/applications/UninstallUSBModem.desktop
144
145CACHENAME=`echo $LANG`
146CACHENAME="/usr/share/applications/desktop.$CACHENAME.cache"
147if [ -f $CACHENAME ];then
148    sed -i '/#cachebegin/,/#cacheend/d' $CACHENAME
149fi
150
151if [ -f {CONFIG_FILE} ]
152then
153    rm -rf {CONFIG_FILE}
154fi
155
156if [ -d {USERDATA_PATH} ]
157    then
158			yes_or_no "\n{LUserdataInstalled}" N
159			if [ ${?} -ne 1 ]
160			then	
161  			rm -rf {USERDATA_PATH}
162			fi
163fi			
164
165
166
167
168
169