08-21-2022, 02:03 PM
4
Capturas[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Ejecutar estas consultas
Código PHP: ( Seleccionar Todo )
CREATE TABLE IF NOT EXISTS `s_locker` (
`id` INT NOT NULL AUTO_INCREMENT ,
`titulo` VARCHAR(150) NOT NULL ,
`body` TEXT NOT NULL ,
`tema` INT NOT NULL ,
`modo` INT NOT NULL ,
`cerrar_seg` INT NOT NULL ,
`cerrar` INT NOT NULL ,
`obligar` INT NOT NULL ,
`hide_members` INT NOT NULL ,
`fb_app_id` VARCHAR(50) NOT NULL ,
`g_client_id` VARCHAR(100) NOT NULL ,
`contador` INT NOT NULL ,
`botones_data` TEXT NOT NULL ,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Código PHP: ( Seleccionar Todo )
INSERT INTO `s_locker`(`titulo`, `body`, `tema`, `modo`, `cerrar_seg`, `cerrar`, `obligar`, `hide_members`, `fb_app_id`, `g_client_id`, `contador`, `botones_data`) VALUES ('¡Este contenido está bloqueado!', 'Utilice uno de los botones de abajo para desbloquear el contenido.', 0, 0, 0, 0, 0, 0, '', '', 1, 'a:26:{s:4:"like";s:1:"0";s:8:"like_url";s:0:"";s:9:"like_text";s:4:"Like";s:7:"fbshare";s:1:"0";s:11:"fbshare_url";s:0:"";s:12:"fbshare_text";s:5:"share";s:5:"tweet";s:1:"0";s:9:"tweet_url";s:0:"";s:10:"tweet_body";s:0:"";s:9:"tweet_via";s:0:"";s:10:"tweet_text";s:5:"tweet";s:6:"follow";s:1:"0";s:11:"follow_user";s:0:"";s:11:"follow_text";s:6:"follow";s:1:"g";s:1:"0";s:5:"g_url";s:0:"";s:6:"g_text";s:5:"+1 us";s:6:"gshare";s:1:"0";s:10:"gshare_url";s:0:"";s:11:"gshare_text";s:5:"share";s:7:"inshare";s:1:"0";s:11:"inshare_url";s:0:"";s:12:"inshare_text";s:5:"share";s:2:"yt";s:1:"0";s:5:"yt_id";s:0:"";s:7:"yt_text";s:9:"subscribe";}')
En admin.php --> inc --> php --> admin.php
Buscar:
Código PHP: ( Seleccionar Todo )
/** NOTICIAS **/
Arriba agregar:
Código PHP: ( Seleccionar Todo )
/** Social locker **/
} elseif($action == 'social-locker'){
if(!empty($_POST['save'])){
if($tsAdmin->saveSocialLocker()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/social-locker?save=true');
} else {
$smarty->assign('tsLocker', $tsAdmin->getLocker());
}
En posts.php --> inc --> php --> posts.php
Buscar:
Código PHP: ( Seleccionar Todo )
$smarty->assign("tsPages",$tsPages);
Debajo agregar:
Código PHP: ( Seleccionar Todo )
// Social Locker
$smarty->assign('tsLocker', $tsPosts->getLocker());
En c.admin.php --> inc --> class --> c.admin.php
Buscar:
Código PHP: ( Seleccionar Todo )
/*
savePConfigs()
Arriba agregar:
Código PHP: ( Seleccionar Todo )
/*
getLocker()
*/
function getLocker() {
$query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT * FROM s_locker');
$data = db_exec('fetch_assoc', $query);
$data['btn'] = unserialize($data['botones_data']);
return $data;
}
/*
saveLocker()
*/
function saveSocialLocker() {
global $tsCore;
//
$s = array(
'titulo' => $tsCore->setSecure($_POST['locker_titulo']),
'body' => $tsCore->setSecure($_POST['locker_body']),
'tema' => empty($_POST['locker_tema']) ? 0 : $_POST['locker_tema'],
'modo' => empty($_POST['locker_modo']) ? 0 : $_POST['locker_modo'],
'cerrar_seg' => (int)$_POST['locker_cerrar_seg'],
'cerrar' => empty($_POST['locker_cerrar']) ? 0 : 1,
'obligar' => empty($_POST['locker_obligar']) ? 0 : 1,
'hide_members' => empty($_POST['locker_hide_members']) ? 0 : 1,
'fb_app_id' => $tsCore->setSecure($_POST['locker_fb_app_id']),
'g_client_id' => $tsCore->setSecure($_POST['locker_g_client_id']),
'contador' => empty($_POST['locker_contador']) ? 0 : 1
);
//
$btns = array (
// like
'like' => $_POST['locker_like'],
'like_url' => $_POST['locker_like_url'],
'like_text' => $_POST['locker_like_text'],
// FB Share
'fbshare' => $_POST['locker_fbshare'],
'fbshare_url' => $_POST['locker_fbshare_url'],
'fbshare_text' => $_POST['locker_fbshare_text'],
// Tweet
'tweet' => $_POST['locker_tweet'],
'tweet_url' => $_POST['locker_tweet_url'],
'tweet_body' => $_POST['locker_tweet_body'],
'tweet_via' => $_POST['locker_tweet_via'],
'tweet_text' => $_POST['locker_tweet_text'],
// Follow
'follow' => $_POST['locker_follow'],
'follow_user' => $_POST['locker_follow_user'],
'follow_text' => $_POST['locker_follow_text'],
// G+1
'g' => $_POST['locker_g'],
'g_url' => $_POST['locker_g_url'],
'g_text' => $_POST['locker_g_text'],
// G Share
'gshare' => $_POST['locker_gshare'],
'gshare_url' => $_POST['locker_gshare_url'],
'gshare_text' => $_POST['locker_gshare_text'],
// Linkedin Share
'inshare' => $_POST['locker_inshare'],
'inshare_url' => $_POST['locker_inshare_url'],
'inshare_text' => $_POST['locker_inshare_text'],
// Youtube Subscribe
'yt' => $_POST['locker_yt'],
'yt_id' => $_POST['locker_yt_id'],
'yt_text' => $_POST['locker_yt_text']
);
$btns = $tsCore->setSecure(serialize($btns));
// UPDATE
if (db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE `s_locker` SET
`titulo` = \'' . $s['titulo'] . '\',
`body` = \'' . $s['body'] . '\',
`tema` = \'' . $s['tema'] . '\',
`modo` = \'' . $s['modo'] . '\',
`cerrar_seg` = \'' . $s['cerrar_seg'] . '\',
`cerrar` = \'' . $s['cerrar'] . '\',
`obligar` = \'' . $s['obligar'] . '\',
`hide_members` = \'' . $s['hide_members'] . '\',
`fb_app_id` = \'' . $s['fb_app_id'] . '\',
`g_client_id` = \'' . $s['g_client_id'] . '\',
`contador` = \'' . $s['contador'] . '\',
`botones_data` = \'' . $btns . '\'
WHERE `id` = \'1\''))
return true;
else
exit( show_error('Error al ejecutar la consulta de la línea '.__LINE__.' de '.__FILE__.'.', 'db') );
}
En c.posts.php --> inc --> class --> c.posts.php
Buscar:
Código PHP: ( Seleccionar Todo )
/*
getSideData($array)
*/
Arriba agregar:
Código PHP: ( Seleccionar Todo )
/*
getLocker()
*/
function getLocker() {
global $tsCore;
$query = db_exec(array(__FILE__, __LINE__), "query", "SELECT * FROM s_locker");
$data = db_exec("fetch_assoc", $query);
$data["btn"] = unserialize($data["botones_data"]);
// Datos del post
$dataPost = $this->getPost();
$post_id = intval($_GET["post_id"]);
// Titulo del post
$titulo = $dataPost["post_title"];
// Categoria
$categoria = $dataPost["categoria"];
// URL del post
$urlPost = $tsCore->settings["url"] . "/posts/" . $categoria["c_seo"] . "/" . $post_id . "/" . $tsCore->setSEO($titulo) . ".html";
// Fix saltos de linea
$data["body"] = preg_replace("[\n|\r|\n\r]", " ", $data["body"]);
// Remplazamos BBCodes
$bbcodes = array("[post_title]", "[post_url]");
$bbreturn = array($titulo, $urlPost);
$count = count($data);
for($i = 0; $i < $count; $i++) {
$data = str_replace($bbcodes, $bbreturn, $data);
$data["btn"] = str_replace($bbcodes, $bbreturn, $data["btn"]);
}
return $data;
}
En c.core.php --> inc --> class --> c.core.php
Buscar:
Código PHP: ( Seleccionar Todo )
// BBCodes permitidos
$parser->setRestriction(array('url', 'code', 'quote', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 's', 'align', 'spoiler', 'swf', 'video', 'goear', 'hr', 'sub', 'sup', 'table', 'td', 'tr', 'ul', 'li', 'ol', 'notice', 'info', 'warning', 'error', 'success'));
Después de:
Código PHP: ( Seleccionar Todo )
, 'success'
Agregar:
Código PHP: ( Seleccionar Todo )
, 'sociallocker'
En bbcode.inc.php --> inc --> ext --> bbcode.inc.php
Buscar:
Código PHP: ( Seleccionar Todo )
array('tag' => 'success', 'replace' => '<div class="bbcmsg success">{param}</div>')
Reemplazar por:
Código PHP: ( Seleccionar Todo )
array('tag' => 'success', 'replace' => '<div class="bbcmsg success">{param}</div>'),
array('tag' => 'sociallocker', 'replace' => '<div id="socialloker_by_Basdower">{param}</div>')
En admin.css --> themes --> default --> css --> admin.css
Buscar:
Código PHP: ( Seleccionar Todo )
li#a_badwords {background-image: url(../images/icons/stop.png);}
Debajo agregar:
Código PHP: ( Seleccionar Todo )
li#a_social {background-image: url(../images/icons/social-locker.png);background-position: 0px -5px;}
En t.admin.tpl --> themes --> default --> templates --> t.admin.tpl
Buscar:
Código PHP: ( Seleccionar Todo )
{/if}
Arriba agregar:
Código PHP: ( Seleccionar Todo )
{elseif $tsAction == 'social-locker'}
{include file='admin_mods/m.admin_social_locker.tpl'}
En t.posts.tpl --> themes --> default --> templates --> t.posts.tpl
Buscar:
Código PHP: ( Seleccionar Todo )
{include file='sections/main_header.tpl'}
Agregar debajo:
Código PHP: ( Seleccionar Todo )
<link href="{$tsConfig.tema.t_url}/css/pandalocker.css" rel="stylesheet" type="text/css" />
<script src="{$tsConfig.js}/pandalocker.js" type="text/javascript"></script>
{if $tsLocker.hide_members == 1 && $tsUser->is_member == 1}{else}
<script>{literal}$(function(){if($("#socialloker_by_Basdower").length) {$('#socialloker_by_Basdower').sociallocker({ text:{header: '{/literal}{$tsLocker.titulo}{literal}',message: '{/literal}{$tsLocker.body}{literal}'},{/literal}{if $tsLocker.obligar == 1}demo: true,{/if}{literal}theme: '{/literal}{if $tsLocker.tema == 0}starter{elseif $tsLocker.tema == 1}secrets{elseif $tsLocker.tema == 2}flat{elseif $tsLocker.tema == 3}dandyish{elseif $tsLocker.tema == 4}glass{/if}{literal}',overlap:{mode: '{/literal}{if $tsLocker.modo == 0}full{elseif $tsLocker.modo == 1}transparence{elseif $tsLocker.modo == 2}blurring{/if}{literal}'},locker:{{/literal}{if $tsLocker.cerrar_seg > 0}{literal}timer: '{/literal}{$tsLocker.cerrar_seg}{literal}',{/literal}{/if}{literal}close: {/literal}{if $tsLocker.cerrar == 1}true{else}false{/if}{literal}},{/literal}{if $tsLocker.btn.like == 1 || $tsLocker.btn.fbshare == 1}{literal}facebook:{{/literal}{if $tsLocker.btn.like == 1}{literal}like:{url: '{/literal}{$tsLocker.btn.like_url}{literal}',title: '{/literal}{$tsLocker.btn.like_text}{literal}'},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.fbshare == 1}{literal}share:{url: '{/literal}{$tsLocker.btn.fbshare_url}{literal}',title: '{/literal}{$tsLocker.btn.fbshare_text}{literal}'},{/literal}{/if}{literal}appId: '{/literal}{$tsLocker.fb_app_id}{literal}'},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.tweet == 1 || $tsLocker.btn.follow == 1}{literal}twitter:{{/literal}{if $tsLocker.btn.tweet == 1}{literal}tweet:{url: '{/literal}{$tsLocker.btn.tweet_url}{literal}',text: '{/literal}{$tsLocker.btn.tweet_body}{literal}',via: '{/literal}{$tsLocker.btn.tweet_via}{literal}',title: '{/literal}{$tsLocker.btn.tweet_text}{literal}'},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.follow == 1}{literal}follow:{url: '{/literal}{$tsLocker.btn.follow_user}{literal}',title: '{/literal}{$tsLocker.btn.follow_text}{literal}'}{/literal}{/if}{literal}},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.g == 1 || $tsLocker.btn.gshare == 1}{literal}google:{{/literal}{if $tsLocker.btn.g == 1}{literal}plus:{url: '{/literal}{$tsLocker.btn.g_url}{literal}',title: '{/literal}{$tsLocker.btn.g_text}{literal}'},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.gshare == 1}{literal}share:{url: '{/literal}{$tsLocker.btn.gshare_url}{literal}',title: '{/literal}{$tsLocker.btn.gshare_text}{literal}'}{/literal}{/if}{literal}},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.inshare == 1}{literal}linkedin:{share:{url: '{/literal}{$tsLocker.btn.inshare_url}{literal}',title: '{/literal}{$tsLocker.btn.inshare_text}{literal}'}},{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.yt == 1}{literal}youtube:{subscribe:{channelId: '{/literal}{$tsLocker.btn.yt_id}{literal}',clientId: '{/literal}{$tsLocker.g_client_id}{literal}',title: '{/literal}{$tsLocker.btn.yt_text}{literal}'}},{/literal}{/if}{literal}buttons:{order: [{/literal}{if $tsLocker.btn.like == 1}{literal}"facebook-like",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.fbshare == 1}{literal}"facebook-share",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.tweet == 1}{literal}"twitter-tweet",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.follow == 1}{literal}"twitter-follow",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.g == 1}{literal}"google-plus",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.gshare == 1}{literal}"google-share",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.inshare == 1}{literal}"linkedin-share",{/literal}{/if}{literal}{/literal}{if $tsLocker.btn.yt == 1}{literal}"youtube-subscribe"{/literal}{/if}{literal}],counters: {/literal}{if $tsLocker.contador == 1}true{else}false{/if}{literal},lazy: true} });
}});{/literal}</script>
{/if}
En m.admin_sidemenu.tpl --> themes --> default --> templates --> admin_mods --> m.admin_sidemenu.tpl
Buscar:
Código PHP: ( Seleccionar Todo )
<li id="a_ads"><span class="cat-title"><a href="{$tsConfig.url}/admin/ads">Publicidad</a></span></li>
Debajo agregar:
Código PHP: ( Seleccionar Todo )
<li id="a_social"><span class="cat-title"><a href="{$tsConfig.url}/admin/social-locker">Social Locker</a></span></li>
Y subir esta carpeta
Mega
Debes agradecer para ver el contenido...
Google Drive
Debes agradecer para ver el contenido...
Mediafire
Debes agradecer para ver el contenido...
Uptobox
Debes agradecer para ver el contenido...
4shared
Debes agradecer para ver el contenido...
Notas:
- Utilizar el bbcode [sociallocker][/sociallocker] para bloquear el contenido.
- Debido a los límites de la API de Twitter y LinkedIn es posible desbloquear el contenido cerrando la ventana de dialogo sin compartir.
- Para el boton share de fb es recomendable utilizar Open Graph.
- Para los botones de Compartir con FB y Suscribirse a YT es necesario crear una api: Facebook App ID, Google Client ID si no los piensan usar, no es necesario.
Creditos: Debes agradecer para ver el contenido...






Facebook
Twitter
Reddit
Digg
del.icio.us
Tumblr
Pinterest
Blogger
Fark
LinkedIn
Mix
Google