<script language="VBScript">
' HTMYLON v.1.2 (VB)
' Разрешается произвольная модификация этого скрипта для
'удовлетворения потребностей пользователя при соблюдении
'норм действующего законодательства.
' Бесплатное использование скрипта и его модификаций
'разрешается только для некоммерческих проектов.
'
'Технология HTMYLON подлежит лицензированию при использовании:
'1. на ресурсах, предоставляющих платный контент,
'2. в коммерческом программном обеспечении,
'3. для государственных нужд.
Sub ShowHTMYLONwithKey(wKeyLink)
On Error Resume Next
Dim tags, keytags, color, keycolor, catcher, key_array(), tmpString, taglen, subcolor
set catcher = CreateObject("InternetExplorer.Application")
catcher.Visible = false
catcher.Silent = True
catcher.Navigate (wKeyLink)
external.menuArguments.window.status = "Загрузка ключа"
do until catcher.ReadyState = 4
Loop
set keytags = catcher.document.getElementsByTagName("font")
keydim = 0
keyindex = 0
for i=0 to keytags.length - 1
keylen = len(keytags(i).innerText)
keycolor = Right(keytags(i).color,3)
subcolor = Left(Right(keytags(i).color,6),3)
if keycolor = "" then keycolor = "000" end if
if subcolor = "" then subcolor = "000" end if
if keytags(i).getElementsByTagName("font").length = 0 then if keylen > 0 then keydim = keydim + keylen: ReDim Preserve key_array(keydim): for j=0 to keylen - 1: key_array(keydim-keylen+j) = AscW(Right(keytags(i).innerText, keylen-j)) Xor CInt("&H" + keycolor) Xor CInt("&H" + subcolor): next: end if
external.menuArguments.window.status = "Обработка ключа "&Int(i*100/keytags.length)&"%":
next
set tags = external.menuArguments.document.getElementsByTagName("font")
keyindex = 0
for i=0 to tags.length - 1
tmpString = ""
taglen = len(tags(i).innerText)
color = Right(tags(i).color,3)
subcolor = Left(Right(tags(i).color,6),3)
if color = "" then color = "000"
if subcolor = "" then subcolor = "000"
if tags(i).getElementsByTagName("font").length = 0 then if taglen > 0 then for j=0 to taglen-1: tmpCharCode = AscW(Right(tags(i).innerText, taglen-j)) Xor CInt("&H" + color) Xor CInt("&H" + subcolor) Xor key_array(keyindex): tmpString = tmpString + ChrW(tmpCharCode): keyindex = keyindex + 1 : if keyindex=keydim Then keyindex = 0: end if: next: tags(i).innerText = tmpString: end if
external.menuArguments.window.status = "Восстановление "&Int(i*100/tags.length)&"%":
next
external.menuArguments.window.status = "Готово"
catcher.Quit
Set catcher = Nothing
end sub
Sub ShowHTMYLON()
On Error Resume Next
Dim tags, keytags, color, tmpString, taglen
set tags = external.menuArguments.document.getElementsByTagName("font")
for i=0 to tags.length - 1
tmpString = ""
taglen = len(tags(i).innerText)
color = Right(tags(i).color,3)
if color = "" then color = "000"
if tags(i).getElementsByTagName("font").length = 0 then If taglen > 0 then for j=0 to taglen-1: tmpCharCode = AscW(Right(tags(i).innerText, taglen-j)) Xor CInt("&H" + color): tmpString = tmpString + ChrW(tmpCharCode): next: tags(i).innerText = tmpString: end if
external.menuArguments.window.status = "Восстановление "&Int(i*100/tags.length)&"%":
next
external.menuArguments.window.status = "Готово"
end sub
Sub OnContextMenu()
On Error Resume Next
Dim LinkEvent, LinkElement, KeyLink
if IsNull(external.menuArguments) then
exit sub
end if
set LinkEvent = external.menuArguments.event
set LinkElement = external.menuArguments.document.elementFromPoint(LinkEvent.clientX,LinkEvent.clientY)
if LinkEvent.type="MenuExtUnknown" then
set KeyLink = LinkElement
do until TypeName(KeyLink)="HTMLAnchorElement"
set KeyLink=KeyLink.parentElement
if TypeName(KeyLink)="Nothing" then
Call ShowHTMYLONwithKey(LinkElement.href)
exit sub
end if
if TypeName(KeyLink)="HTMLBody" then
Call ShowHTMYLON()
exit sub
end if
Loop
if IsNull(KeyLink.href) then
Call ShowHTMYLON()
else
Call ShowHTMYLONwithKey(KeyLink.href)
end if
elseif 1=1 then
Call ShowHTMYLON()
end if
end sub
call OnContextMenu()
</script>