Version 3.2.3

This commit is contained in:
Neo committed 2025-12-19 00:34:03 -08:00
1 parent ae5c01cc78
commit 78706903a2
2641 files changed
+228363 -201264

No files matched your search

@@ -6,7 +6,7 @@
<hook_desc>Вывод рекламы в правом блоке на главной странице</hook_desc>
<hook_author>Invision Power Services, Inc.</hook_author>
<hook_email/>
<hook_website/>
<hook_website>http://www.invisionpower.com</hook_website>
<hook_update_check/>
<hook_requirements><![CDATA[a:4:{s:20:"hook_ipb_version_min";i:0;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.0.0</hook_version_human>
@@ -5,6 +5,6 @@
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
<a href="http://www.invisionpower.com">IP.Board</a>
</body>
</html>
@@ -1,56 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<hookexport>
<hookdata>
<config>
<hook_name>Опубликованные ссылки</hook_name>
<hook_desc>Вывод информации о последних опубликованных ссылках</hook_desc>
<hook_author>Invision Power Services</hook_author>
<hook_email/>
<hook_website/>
<hook_update_check/>
<hook_requirements><![CDATA[a:4:{s:20:"hook_ipb_version_min";i:0;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.0.0</hook_version_human>
<hook_version_long>10001</hook_version_long>
<hook_extra_data><![CDATA[a:1:{s:8:"database";a:0:{}}]]></hook_extra_data>
<hook_key>sharelinks</hook_key>
</config>
</hookdata>
<hookfiles>
<file>
<hook_file_real>boardIndexShareLinks.php</hook_file_real>
<hook_type>templateHooks</hook_type>
<hook_classname>boardIndexShareLinks</hook_classname>
<hook_data><![CDATA[a:7:{s:12:"dataLocation";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:11:"skin_boards";s:12:"skinFunction";s:18:"boardIndexTemplate";s:4:"type";s:7:"foreach";s:2:"id";s:11:"side_blocks";s:8:"position";s:9:"outer.pre";}]]></hook_data>
<hooks_source><![CDATA[<?php
class boardIndexShareLinks
{
private $hookGateway;
public function __construct()
{
$registry = ipsRegistry::instance();
require_once( IPSLib::getAppDir( 'core' ) . '/sources/classes/hooks/gateway.php' );
$this->hookGateway = new core_hookGateway( $registry );
}
public function getOutput()
{
return $this->hookGateway->shareLinks();
}
}]]></hooks_source>
</file>
</hookfiles>
<hookextras_settings/>
<hookextras_language/>
<hookextras_modules/>
<hookextras_help/>
<hookextras_templates/>
<hookextras_css/>
<hookextras_tasks/>
<hookextras_database_create/>
<hookextras_database_alter/>
<hookextras_database_update/>
<hookextras_database_insert/>
</hookexport>
@@ -1,62 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<hookexport>
<hookdata>
<config>
<hook_name>Уведомления</hook_name>
<hook_desc>Вывод не прочитанных уведомлений пользвателя на главной странице</hook_desc>
<hook_author>Invision Power Services, Inc</hook_author>
<hook_email/>
<hook_website/>
<hook_update_check/>
<hook_requirements><![CDATA[a:4:{s:20:"hook_ipb_version_min";i:31000;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.0.0</hook_version_human>
<hook_version_long>10000</hook_version_long>
<hook_extra_data><![CDATA[a:2:{s:7:"display";N;s:8:"database";a:0:{}}]]></hook_extra_data>
<hook_key>unread_notifications</hook_key>
</config>
</hookdata>
<hookfiles>
<file>
<hook_file_real>boardIndexNotifications.php</hook_file_real>
<hook_type>templateHooks</hook_type>
<hook_classname>boardIndexNotifications</hook_classname>
<hook_data><![CDATA[a:7:{s:12:"dataLocation";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:11:"skin_boards";s:12:"skinFunction";s:18:"boardIndexTemplate";s:4:"type";s:7:"foreach";s:2:"id";s:11:"side_blocks";s:8:"position";s:9:"outer.pre";}]]></hook_data>
<hooks_source><![CDATA[<?php
class boardIndexNotifications
{
public $registry;
public function __construct()
{
/* Make registry objects */
$this->registry = ipsRegistry::instance();
$this->memberData =& $this->registry->member()->fetchMemberData();
}
public function getOutput()
{
//-----------------------------------------
// Notifications library
//-----------------------------------------
$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . '/sources/classes/member/notifications.php', 'notifications' );
$notifyLibrary = new $classToLoad( $this->registry );
$notifyLibrary->setMember( $this->memberData );
return $notifyLibrary->getBoardIndexHook();
}
}]]></hooks_source>
</file>
</hookfiles>
<hookextras_settings/>
<hookextras_language/>
<hookextras_modules/>
<hookextras_help/>
<hookextras_templates/>
<hookextras_css/>
<hookextras_tasks/>
<hookextras_database_create/>
<hookextras_database_alter/>
<hookextras_database_update/>
<hookextras_database_insert/>
</hookexport>
@@ -5,31 +5,32 @@
<hook_name>Формы авторизации Vkontakte</hook_name>
<hook_desc>Добавление форм Vkontakte в шаблоны</hook_desc>
<hook_author>IBResource, LTD</hook_author>
<hook_email/>
<hook_website/>
<hook_email>sales@ibresource.ru</hook_email>
<hook_website>http://www.ibresource.ru</hook_website>
<hook_update_check/>
<hook_requirements><![CDATA[a:4:{s:20:"hook_ipb_version_min";i:0;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.0.1</hook_version_human>
<hook_version_long>10001</hook_version_long>
<hook_extra_data><![CDATA[a:3:{s:7:"display";a:2:{s:9:"templates";s:97:"От skin_vkontakte: membersVkontakteConnect, showLoginVkFrame, vkUserBoxes, vkUserBoxPlaceholder";s:8:"language";s:38:"От core_admin_js: bit_skin_vkontakte";}s:9:"templates";a:1:{s:14:"skin_vkontakte";a:4:{s:0:"";s:23:"membersVkontakteConnect";i:1;s:16:"showLoginVkFrame";i:2;s:11:"vkUserBoxes";i:3;s:20:"vkUserBoxPlaceholder";}}s:8:"language";a:1:{s:13:"core_admin_js";a:1:{s:0:"";s:18:"bit_skin_vkontakte";}}}]]></hook_extra_data>
<hook_requirements><![CDATA[a:3:{s:21:"required_applications";a:0:{}s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.1.0</hook_version_human>
<hook_version_long>10010</hook_version_long>
<hook_extra_data><![CDATA[a:5:{s:7:"display";a:3:{s:9:"templates";s:81:"От skin_vkontakte: membersVkontakteConnect, vkInlineLogInService, vkServicesLim";s:8:"language";s:38:"От core_admin_js: bit_skin_vkontakte";s:8:"settings";s:73:"Группа настроек: Интеграция с Вконтакте";}s:9:"templates";a:1:{s:14:"skin_vkontakte";a:3:{s:0:"";s:23:"membersVkontakteConnect";i:1;s:20:"vkInlineLogInService";i:2;s:13:"vkServicesLim";}}s:8:"database";a:0:{}s:13:"settingGroups";a:1:{s:0:"";s:2:"vk";}s:8:"settings";a:0:{}}]]></hook_extra_data>
<hook_key>ibr_vkontakte_forms</hook_key>
<hook_global_caches/>
</config>
</hookdata>
<hookfiles>
<file>
<hook_file_real>vkontakte.php</hook_file_real>
<hook_type>templateHooks</hook_type>
<hook_classname>vk_frame</hook_classname>
<hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:10:"skin_login";s:12:"skinFunction";s:13:"showLogInForm";s:4:"type";s:2:"if";s:2:"id";s:12:"toggleOpenId";s:8:"position";s:10:"post.endif";}]]></hook_data>
<hook_classname>vk_register_form</hook_classname>
<hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:13:"skin_register";s:12:"skinFunction";s:12:"registerForm";s:4:"type";s:2:"if";s:2:"id";s:10:"twitterBox";s:8:"position";s:10:"post.endif";}]]></hook_data>
<hooks_source><![CDATA[<?php
class vk_frame
class vk_register_form
{
public function getOutput()
{
if( IPSLib::loginMethod_enabled('vkontakte') === true )
{
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkUserBoxes();
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkInlineLogInService();
}
}
}]]></hooks_source>
@@ -47,7 +48,7 @@ class vk_lim
{
if( IPSLib::loginMethod_enabled('vkontakte') === true )
{
return " " . ipsRegistry::instance()->output->getReplacement('lim_vkontakte');
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkServicesLim();
}
}
}]]></hooks_source>
@@ -55,248 +56,231 @@ class vk_lim
<file>
<hook_file_real>vkontakte.php</hook_file_real>
<hook_type>templateHooks</hook_type>
<hook_classname>vk_button</hook_classname>
<hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:10:"skin_login";s:12:"skinFunction";s:13:"showLogInForm";s:4:"type";s:2:"if";s:2:"id";s:10:"twitterBox";s:8:"position";s:11:"pre.startif";}]]></hook_data>
<hook_classname>vk_login_form</hook_classname>
<hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:10:"skin_login";s:12:"skinFunction";s:13:"showLogInForm";s:4:"type";s:2:"if";s:2:"id";s:10:"twitterBox";s:8:"position";s:10:"post.endif";}]]></hook_data>
<hooks_source><![CDATA[<?php
class vk_button
class vk_login_form
{
public function getOutput()
{
if( IPSLib::loginMethod_enabled('vkontakte') === true )
{
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkUserBoxPlaceholder();
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkInlineLogInService();
}
}
}]]></hooks_source>
</file>
<file>
<hook_file_real>vkontakte.php</hook_file_real>
<hook_type>templateHooks</hook_type>
<hook_classname>vk_ajax_login_form</hook_classname>
<hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:10:"skin_login";s:12:"skinFunction";s:21:"ajax__inlineLogInForm";s:4:"type";s:2:"if";s:2:"id";s:10:"twitterBox";s:8:"position";s:10:"post.endif";}]]></hook_data>
<hooks_source><![CDATA[<?php
class vk_ajax_login_form
{
public function getOutput()
{
if( IPSLib::loginMethod_enabled('vkontakte') === true )
{
return ipsRegistry::instance()->output->getTemplate('vkontakte')->vkInlineLogInService();
}
}
}]]></hooks_source>
</file>
</hookfiles>
<hookextras_settings/>
<hookextras_language>
<language>
<word_app>core</word_app>
<word_pack>admin_js</word_pack>
<word_key>bit_skin_vkontakte</word_key>
<word_default>Формы для Вконтакте</word_default>
<word_custom/>
<word_js>0</word_js>
</language>
</hookextras_language>
<hookextras_settings>
<setting>
<conf_is_title>1</conf_is_title>
<conf_title_title>Интеграция с Вконтакте</conf_title_title>
<conf_title_desc>Настройки для соединения с Вконтакте</conf_title_desc>
<conf_title_noshow>0</conf_title_noshow>
<conf_title_keyword>vk</conf_title_keyword>
<conf_title_app>core</conf_title_app>
<conf_title_tab>System</conf_title_tab>
</setting>
<setting>
<conf_id>38</conf_id>
<conf_title>ID приложения</conf_title>
<conf_description>ID выдается после создания приложения Вконтакте.</conf_description>
<conf_group>5</conf_group>
<conf_type>input</conf_type>
<conf_key>vk_api_id</conf_key>
<conf_value/>
<conf_default/>
<conf_extra/>
<conf_evalphp/>
<conf_protected>1</conf_protected>
<conf_position>2</conf_position>
<conf_start_group/>
<conf_add_cache>1</conf_add_cache>
<conf_keywords/>
<conf_title_keyword>vk</conf_title_keyword>
<conf_is_title>0</conf_is_title>
</setting>
<setting>
<conf_id>37</conf_id>
<conf_title>Включить соединение с Вконтакте?</conf_title>
<conf_description><![CDATA[Первоначально вам НЕОБХОДИМО создать приложение Вконтакте. Сделать это можно <a href="http://vkontakte.ru/apps.php?act=add&site=1">здесь</a>]]></conf_description>
<conf_group>5</conf_group>
<conf_type>yes_no</conf_type>
<conf_key>vk_enabled</conf_key>
<conf_value/>
<conf_default>0</conf_default>
<conf_extra/>
<conf_evalphp/>
<conf_protected>1</conf_protected>
<conf_position>1</conf_position>
<conf_start_group/>
<conf_add_cache>1</conf_add_cache>
<conf_keywords>vk, vkontakte</conf_keywords>
<conf_title_keyword>vk</conf_title_keyword>
<conf_is_title>0</conf_is_title>
</setting>
<setting>
<conf_id>41</conf_id>
<conf_title>Пользовательская группа по умолчанию</conf_title>
<conf_description>В эту группу будут попадать все пользователи, создавшие свой аккаунт на форуме через аккаунт Вконтакте. Опция не распространяет своего действия на пользователей, которые добавили свой Вконтакте аккаунт после обычной регистрации на форуме.</conf_description>
<conf_group>5</conf_group>
<conf_type>dropdown</conf_type>
<conf_key>vk_mgid</conf_key>
<conf_value/>
<conf_default>3</conf_default>
<conf_extra>#show_groups#</conf_extra>
<conf_evalphp/>
<conf_protected>1</conf_protected>
<conf_position>5</conf_position>
<conf_start_group/>
<conf_add_cache>1</conf_add_cache>
<conf_keywords/>
<conf_title_keyword>vk</conf_title_keyword>
<conf_is_title>0</conf_is_title>
</setting>
<setting>
<conf_id>40</conf_id>
<conf_title>Защищенный ключ</conf_title>
<conf_description>Защищенный ключ выдается после создания приложения Вконтакте</conf_description>
<conf_group>5</conf_group>
<conf_type>input</conf_type>
<conf_key>vk_secret</conf_key>
<conf_value/>
<conf_default/>
<conf_extra/>
<conf_evalphp/>
<conf_protected>1</conf_protected>
<conf_position>4</conf_position>
<conf_start_group/>
<conf_add_cache>1</conf_add_cache>
<conf_keywords/>
<conf_title_keyword>vk</conf_title_keyword>
<conf_is_title>0</conf_is_title>
</setting>
</hookextras_settings>
<hookextras_language/>
<hookextras_modules/>
<hookextras_help/>
<hookextras_templates>
<templates>
<template_set_id>0</template_set_id>
<template_group>skin_vkontakte</template_group>
<template_content/>
<template_name>membersVkontakteConnect</template_name>
<template_data/>
<template_updated>1280738635</template_updated>
<template_removable>1</template_removable>
<template_added_to>1</template_added_to>
<template_user_added>1</template_user_added>
<template_user_edited>1</template_user_edited>
<template_master_key/>
<template_set_type/>
</templates>
<templates>
<template_set_id>1</template_set_id>
<template_group>skin_vkontakte</template_group>
<template_content><![CDATA[{parse js_module="vkontakte"}
{parse striping="usercp" classes="row1,row2"}
<template_content><![CDATA[{parse striping="usercp" classes="row1,row2"}
<if test="!$isConnected">
<div>
<div id='vkUserBox'></div>
<iframe id="vk_frame" src="{$this->settings['_original_base_url']}/interface/vkontakte/index.php" style='position:absolute;top: -1000px;'></iframe>
<!--VK Template-->
<div id='vk-template-button' style='display:none'>
{$this->lang->words['vkontakte_config']}
<br /><br />
<a href="#" id="vk_login"><img src="{$this->settings['img_url']}/vkontakte_login.png" alt="" /></a>
</div>
<div id='vk-template-main' style='display:none'>
<fieldset class='row2'>
<div style='float:left; margin-right:4px;margin-bottom:3px'>
<a href="#" id="openapi_userlink"><img src="http://vkontakte.ru/images/question_c.gif" id="openapi_userphoto" /></a>
</div>
{$this->lang->words['vk_logged_in']} <strong id="openapi_user"></strong>
</fieldset>
</div>
<div id='vk-template-linked' style='display:none'>
<div class='desc'>
{$this->lang->words['vk_logged_in']}
</div>
<form action='
{$this->settings['_original_base_url']}/interface/vkontakte/index.php' method='post' name='linkForm' id='vk_linkForm'>
<input type='button' class='input_submit' id='vk_link' value='Связать с учетной записью форума' />
</form>
</div>
<p class='message'>{$this->lang->words['vk_config']}</p>
<br />
<br />
<a href="{$this->settings['_original_base_url']}/interface/vkontakte/index.php"><img src="{$this->settings['img_url']}/vkontakte_login.png" alt="" /></a>
<br />
</div>
<else />
<div>
<fieldset class='row1'>
<if test="vkPassword:|:! $this->memberData['bw_local_password_set'] AND $this->memberData['members_created_remote']">
<div class='message'>
<strong>{$this->lang->words['remote_no_password']}</strong>
<p>{$this->lang->words['remote_no_password_1']} <a href='{parse url="app=core&amp;module=usercp&amp;tab=core&amp;area=password" base="public"}'>{$this->lang->words['remote_no_password_2']}</a>
</p>
</div>
<br />
<div class='ipsPad row2 clearfix'>
<if test="vkHasPic:|:$userData['photo']">
<img src="{$userData['photo']}" alt='' class='left ipsUserPhoto ipsUserPhoto_medium' />
<div class='ipsBox_withphoto'>
</if>
<h3>{$this->lang->words['vk_disassociate']}</h3>
<p>{$this->lang->words['vk_revoke']}</p>
<p class='desc'>{$this->lang->words['vk_disassociate_desc']}</p>
<p><input type='button' class='input_submit alt' id='tc_remove' value='{$this->lang->words['tc_disassociate_now']}' /></p>
</fieldset>
<h2 class='ipsType_subtitle'>
{$this->lang->words['vk_logged_in_as']} <strong>{$userData['first_name']} {$userData['last_name']}</strong>
</h2>
<if test="tcHasPic:|:$userData['photo']">
</div>
</if>
</div>
<br />
<div class='right row2 ipsPad clearfix' style='width: 250px'>
<input type='button' class='ipsButton_secondary' id='vk_remove_start' value='{$this->lang->words['vk_disassociate']}' />
<div id='vk_remove_popup' style='display: none'>
<h3>{$this->lang->words['vk_disassociate']}</h3>
<div class='ipsPad'>
<p>{$this->lang->words['vk_revoke']}</p>
<p class='desc'>{$this->lang->words['vk_disassociate_desc']}</p>
<br />
<input type='button' class='ipsButton' id='vk_remove' value='{$this->lang->words['tc_disassociate_now']}' />
</div>
</div>
</div>
<if test="vkPassword:|:! $this->memberData['bw_local_password_set'] AND $this->memberData['members_created_remote']">
<div class='message'>
<strong>{$this->lang->words['remote_no_password']}</strong>
<p>{$this->lang->words['remote_no_password_1']} <a href='{parse url="app=core&amp;module=usercp&amp;tab=core&amp;area=password" base="public"}'>{$this->lang->words['remote_no_password_2']}</a>
</p>
</div>
<br />
</if>
</div>
<script type="text/javascript">
ipb.vkontakte.initUserCP();
$('vk_remove').observe( 'click', usercp_remove );
function usercp_remove(){
window.location = ipb.vars['base_url'] + 'app=core&module=usercp&tab=core&area=vkontakteRemove&do=custom&secure_key=' + ipb.vars['secure_hash'];
}
$('vk_remove_start').on('click', function(e){
new ipb.Popup( 'sign_in_popup', { type: 'pane',
initial: $('vk_remove_popup').show(),
hideAtStart: false,
hideClose: false,
modal: true,
w: '600px' } );
});
</script>
</if>
]]></template_content>
<template_name>membersVkontakteConnect</template_name>
<template_data>$isConnected</template_data>
<template_data>$isConnected, $userData</template_data>
<template_updated>1280738657</template_updated>
<template_removable>1</template_removable>
<template_added_to>1</template_added_to>
<template_user_added>1</template_user_added>
<template_user_edited>1</template_user_edited>
<template_master_key/>
<template_set_type/>
</templates>
<templates>
<template_set_id>0</template_set_id>
<template_group>skin_vkontakte</template_group>
<template_content><![CDATA[<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Open API IPB Gateway</title>
<script language="JavaScript" src="http://vkontakte.ru/js/common.js"></script>
</head>
<body>
<div id="vk_api_transport" style="display:none"></div>
<script type="text/javascript">
function doLogin() {
VK.Auth.login(
null,
VK.access.FRIENDS | VK.access.WIKI
);
}
function doLogout() {
VK.Auth.logout( function() { window.location.reload(); });
}
function onAuthLogin(data) {
var
code = 'return {';
code += 'u: API.getProfiles({uids: API.getVariable({key: 1280}), fields: "photo"})[0]';
code += '};';
VK.Api.call('execute', {'code': code}, function( d ){
memberInfo = { 'id': d.response.u.uid,
'name': d.response.u.first_name + ' ' + d.response.u.last_name,
'photo': d.response.u.photo
};
parent.window.ipb.vkontakte.loadUser( memberInfo );
} );
}
window.vkAsyncInit = function() {
VK.Observer.subscribe('auth.login', onAuthLogin);
VK.init({
apiId:{$this->settings['vk_api_id']},
nameTransportPath: '{$this->settings['_path_from_root']}/interface/vkontakte/xd_receiver.htm'
});
onDomReady( parent.window.ipb.vkontakte.show_loginButton );
};
(function() {
var el = document.createElement('script');
el.type = 'text/javascript';
el.src = '<if test="$this->settings['logins_over_https']">{parse expression="str_replace('http://', 'https://', $this->settings['_original_base_url'])"}/interface/vkontakte/openapi.js.php<else />http://vkontakte.ru/js/api/openapi.js</if>';
el.async = true;
document.getElementById('vk_api_transport').appendChild(el);
}());
</script>
</body>
</html>]]></template_content>
<template_name>showLoginVkFrame</template_name>
<template_data><![CDATA[$hash='']]></template_data>
<template_updated>1279887574</template_updated>
<template_removable>1</template_removable>
<template_added_to>1</template_added_to>
<template_user_added>1</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
<template_set_type/>
</templates>
<templates>
<template_set_id>0</template_set_id>
<template_group>skin_vkontakte</template_group>
<template_content><![CDATA[<script language="JavaScript" src="{$this->settings['_original_base_url']}/public/js/ips.vkontakte.js"></script>
<iframe id="vk_frame" src="<if test="$this->settings['logins_over_https']">{parse expression="str_replace('http://', 'https://', $this->settings['_original_base_url'])"}<else />{parse expression="$this->settings['_original_base_url']"}</if>/interface/vkontakte/index.php" style='position:absolute;top: -1000px;'></iframe>
<!--VK Template-->
<div id='vk-template-button' style='display:none'>
{$this->lang->words['login_w_vkontakte']}
<br /><br />
<a href="#" id="vk_login"><img src="{$this->settings['img_url']}/vkontakte_login.png" alt="" /></a>
</div>
<div id='vk-template-main' style='display:none'>
<div style='float:left; margin-right:4px;margin-bottom:3px'>
<a href="#" id="openapi_userlink"><img src="http://vkontakte.ru/images/question_c.gif" id="openapi_userphoto" /></a>
</div>
{$this->lang->words['welcome_prefix']} <span id="openapi_user"></span>
</div>
<div id='vk-template-linked' style='display:none'>
<div class='desc'>
{$this->lang->words['vk_logged_in']}
</div>
<br clear='both'/>
<form action='<if test="$this->settings['logins_over_https']">{parse expression="str_replace('http://', 'https://', $this->settings['_original_base_url'])"}<else />{parse expression="$this->settings['_original_base_url']"}</if>/interface/vkontakte/index.php' method='post' name='linkForm' id='vk_linkForm'>
<input type='button' class='input_submit' id='vk_complete' value='{$this->lang->words['vk_complete_login']}' />
</form>
</div>]]></template_content>
<template_name>vkUserBoxes</template_name>
<template_content><![CDATA[<li><a href="{$this->settings['_original_base_url']}/interface/vkontakte/index.php?_reg=1"><img src="{$this->settings['img_url']}/vkontakte_login.png" alt="" /></a></li>]]></template_content>
<template_name>vkInlineLogInService</template_name>
<template_data/>
<template_updated>1279887617</template_updated>
<template_updated>1311665029</template_updated>
<template_removable>1</template_removable>
<template_added_to>1</template_added_to>
<template_user_added>1</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
<template_set_type/>
</templates>
<templates>
<template_set_id>0</template_set_id>
<template_group>skin_vkontakte</template_group>
<template_content><![CDATA[ <h3 class='bar'>{$this->lang->words['vk_login_title']}</h3>
<p>
<div id='vkUserBox'>
</div>
<br clear='both' />
</p>
<br />]]></template_content>
<template_name>vkUserBoxPlaceholder</template_name>
<template_content><![CDATA[<a href='{parse url="app=core&amp;module=global&amp;section=login&amp;serviceClick=vkontakte" base="public"}'>{parse replacement="lim_vkontakte"}</a>]]></template_content>
<template_name>vkServicesLim</template_name>
<template_data/>
<template_updated>1279887584</template_updated>
<template_updated>1311664820</template_updated>
<template_removable>1</template_removable>
<template_added_to>1</template_added_to>
<template_user_added>1</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
<template_set_type/>
</templates>
</hookextras_templates>
<hookextras_css/>