mirror of
https://github.com/gutosie/neoboot.git
synced 2025-11-01 20:05:48 +01:00
189 lines
5.2 KiB
Plaintext
189 lines
5.2 KiB
Plaintext
from re import sub
|
|
from Tools.Directories import fileExists, resolveFilename, SCOPE_CURRENT_SKIN
|
|
import xml.etree.cElementTree
|
|
entities = [('ä', u'\xe4'),
|
|
('ä', u'\xe4'),
|
|
('ü', u'\xfc'),
|
|
('ü', u'\xfc'),
|
|
('ö', u'\xf6'),
|
|
('ö', u'\xf6'),
|
|
('Ä', u'\xc4'),
|
|
('Ä', u'\xc4'),
|
|
('Ü', u'\xdc'),
|
|
('Ü', u'\xdc'),
|
|
('Ö', u'\xd6'),
|
|
('Ö', u'\xd6'),
|
|
('ß', u'\xdf'),
|
|
('ß', u'\xdf'),
|
|
('…', u'...'),
|
|
('–', u'-'),
|
|
(' ', u' '),
|
|
('"', u'"'),
|
|
('&', u'&'),
|
|
(''', u"'"),
|
|
('<', u'<'),
|
|
('>', u'>'),
|
|
('<', u'<'),
|
|
('>', u'>'),
|
|
(' ', u' '),
|
|
('&', u'&'),
|
|
('"', u'"'),
|
|
(''', u"'")]
|
|
|
|
def nab_strip_html(html):
|
|
html = html.replace('\n', ' ')
|
|
html = sub('\\s\\s+', ' ', html)
|
|
html = sub('<br(\\s+/)?>', '\n', html)
|
|
html = sub('</?(p|ul|ol)(\\s+.*?)?>', '\n', html)
|
|
html = sub('<li(\\s+.*?)?>', '-', html)
|
|
html = html.replace('</li>', '\n')
|
|
return nab_strip_pass1(html)
|
|
|
|
|
|
def nab_strip_pass1(html):
|
|
html = sub('<(.*?)>', '', html)
|
|
html.replace('Ä', '\xc3\x84')
|
|
html.replace('ä', '\xc3\xa4')
|
|
html.replace('ä', '\xc3\xa4')
|
|
html.replace('ü', '\xc3\xbc')
|
|
html.replace('ü', '\xc3\xbc')
|
|
html.replace('ö', '\xc3\xb6')
|
|
html.replace('ö', '\xc3\xb6')
|
|
html.replace('Ä', '\xc3\x84')
|
|
html.replace('Ä', '\xc3\x84')
|
|
html.replace('Ü', '\xc3\x9c')
|
|
html.replace('Ü', '\xc3\x9c')
|
|
html.replace('Ö', '\xc3\x96')
|
|
html.replace('Ö', '\xc3\x96')
|
|
html.replace('ß', '\xc3\x9f')
|
|
html.replace('ß', '\xc3\x9f')
|
|
html.replace('<', '<')
|
|
html.replace('>', '>')
|
|
html.replace(' ', ' ')
|
|
html.replace('&', '&')
|
|
html.replace('"', '"')
|
|
html.replace(''', "'")
|
|
return html
|
|
|
|
|
|
def nab_Read_CCCinfoCfg():
|
|
myhost = '127.0.0.1'
|
|
myuser = mypass = ''
|
|
myport = '16001'
|
|
if fileExists('/etc/delcccaminfo'):
|
|
f = open('/etc/delcccaminfo', 'r')
|
|
for line in f.readlines():
|
|
line = line.strip()
|
|
if line.find('HOST ADDRESS:') != -1:
|
|
myhost = line[13:]
|
|
elif line.find('WEBINFO USERNAME:') != -1:
|
|
myuser = line[17:]
|
|
elif line.find('WEBINFO PASSWORD:') != -1:
|
|
mypass = line[17:]
|
|
elif line.find('WEBINFO LISTEN PORT:') != -1:
|
|
myport = line[20:]
|
|
|
|
f.close()
|
|
myurl = 'http://' + myhost + ':' + myport
|
|
if myuser and mypass:
|
|
myurl = 'http://' + myuser + ':' + mypass + '@' + myhost + ':' + myport
|
|
return [myhost,
|
|
myuser,
|
|
mypass,
|
|
myport,
|
|
myurl]
|
|
|
|
|
|
def nab_Write_CCCinfoCfg(mycfg):
|
|
out = open('/etc/delcccaminfo', 'w')
|
|
strview = 'HOST ADDRESS:' + mycfg[0] + '\n'
|
|
out.write(strview)
|
|
strview = 'WEBINFO USERNAME:' + mycfg[1] + '\n'
|
|
out.write(strview)
|
|
strview = 'WEBINFO PASSWORD:' + mycfg[2] + '\n'
|
|
out.write(strview)
|
|
strview = 'WEBINFO LISTEN PORT:' + mycfg[3] + '\n'
|
|
out.write(strview)
|
|
out.close()
|
|
|
|
|
|
def DeliteGetSkinPath():
|
|
myskinpath = resolveFilename(SCOPE_CURRENT_SKIN, '')
|
|
if myskinpath == '/usr/share/enigma2/':
|
|
myskinpath = '/usr/share/enigma2/skin_default/'
|
|
return myskinpath
|
|
|
|
|
|
def nab_Detect_Machine():
|
|
machine = 'dm8000'
|
|
if fileExists('/etc/bhmachine'):
|
|
f = open('/etc/bhmachine', 'r')
|
|
machine = f.readline().strip()
|
|
f.close()
|
|
return machine
|
|
|
|
|
|
def BhU_get_Version():
|
|
ver = ''
|
|
if fileExists('/boot/blackhole/version'):
|
|
f = open('/boot/blackhole/version', 'r')
|
|
ver = f.readline().strip()
|
|
f.close()
|
|
return ver
|
|
|
|
|
|
def BhU_check_proc_version():
|
|
ver = ''
|
|
if fileExists('/boot/blackhole/version'):
|
|
f = open('/boot/blackhole/version', 'r')
|
|
ver = f.readline().strip()
|
|
f.close()
|
|
return ver
|
|
|
|
|
|
def BhU_checkSkinVersion(skinfile):
|
|
version = '2.0.0'
|
|
authors = ['Army', 'Matrix10', 'capa']
|
|
ret = 'Sorry this skin is not compatible with the current Black Hole image version.'
|
|
curversion = int(version.replace('.', ''))
|
|
fullfile = '/usr/share/enigma2/' + skinfile
|
|
checkver = False
|
|
checkauth = False
|
|
if fileExists(fullfile):
|
|
f = open(fullfile)
|
|
for line in f.readlines():
|
|
if line.find('black hole version:') != -1:
|
|
parts = line.strip().split(':')
|
|
ver = int(parts[1].strip().replace('.', ''))
|
|
if ver >= curversion:
|
|
checkver = True
|
|
elif line.find('skin author:') != -1:
|
|
parts = line.strip().split(':')
|
|
auth = parts[1].strip()
|
|
for a in authors:
|
|
if a == auth:
|
|
checkauth = True
|
|
|
|
f.close()
|
|
if checkver == True:
|
|
if checkauth == True:
|
|
ret = 'passed'
|
|
return ret
|
|
|
|
|
|
def BhU_find_hdd():
|
|
hdd = ''
|
|
hdds = ['sda',
|
|
'sdb',
|
|
'sdc',
|
|
'sdd',
|
|
'sde',
|
|
'sdf']
|
|
for device in hdds:
|
|
filename = '/sys/block/%s/removable' % device
|
|
if fileExists(filename):
|
|
if file(filename).read().strip() == '0':
|
|
hdd = device
|
|
break
|
|
|
|
return hdd |