Miguel92

[MOD][Modificación] Cuenta + Redes Sociales


3 posts en este tema

Hola hoy les traigo una modificación más + mod o como quieran llamarlo...

caps..
225.png
87D.png

1) Abrimos inc/class/c.cuenta.php y buscamos

        $data['p_socials'] = unserialize($data['p_socials']);
        $data['p_socials']['f'] = $data['p_socials'][0];
        $data['p_socials']['t'] = $data['p_socials'][1];

y debajo agregamos

        $data['p_socials']['y'] = $data['p_socials'][2];
        $data['p_socials']['i'] = $data['p_socials'][3];
        $data['p_socials']['l'] = $data['p_socials'][4];
        $data['p_socials']['p'] = $data['p_socials'][5];


más abajo buscamos

        $data['p_nombre'] = $tsCore->setSecure($tsCore->parseBadWords($data['p_nombre']), true);
        $data['p_mensaje'] = $tsCore->setSecure($tsCore->parseBadWords($data['p_mensaje']), true);
        $data['p_socials'] = unserialize($data['p_socials']);
        $data['p_socials']['f'] = $data['p_socials'][0];
        $data['p_socials']['t'] = $data['p_socials'][1];

y debajo agregamos

        $data['p_socials']['y'] = $data['p_socials'][2];
        $data['p_socials']['i'] = $data['p_socials'][3];
        $data['p_socials']['l'] = $data['p_socials'][4];
        $data['p_socials']['p'] = $data['p_socials'][5];

ahora más abajo buscamos

                if(!empty($sitio)) $sitio = substr($sitio, 0, 4) == 'http' ? $sitio : 'http://'.$sitio;
                // EXTERNAS
                $facebook = $tsCore->setSecure($tsCore->parseBadWords($_POST['facebook']), true); /* ELIMINAR */
                $twitter = $tsCore->setSecure($tsCore->parseBadWords($_POST['twitter']), true); /* ELIMINAR */
                $youtube = $tsCore->setSecure($tsCore->parseBadWords($_POST['youtube']), true); /* ELIMINAR */
                for($i = 0; $i < 5; $i++) $gustos[$i] = $tsCore->setSecure($tsCore->parseBadWords($_POST['g_'.$i]), true);
                // IN DB
                $perfilData = array(
                    'nombre' => $tsCore->setSecure($tsCore->parseBadWords($_POST['nombrez']), true),
                    'mensaje' => $tsCore->setSecure($tsCore->parseBadWords($_POST['mensaje']), true),
                    'sitio' => $tsCore->setSecure($tsCore->parseBadWords($sitio), true),
                    'socials' => serialize(array($facebook,$twitter,$youtube)), /* ELIMINAR */

y la reemplazamos

                if(!empty($sitio)) $sitio = substr($sitio, 0, 4) == 'http' ? $sitio : 'http://'.$sitio;
                // EXTERNAS
                for($i = 0; $i < 5; $i++) $gustos[$i] = $tsCore->setSecure($tsCore->parseBadWords($_POST['g_'.$i]), true);
                // IN DB
                $perfilData = array(
                    'nombre' => $tsCore->setSecure($tsCore->parseBadWords($_POST['nombrez']), true),
                    'mensaje' => $tsCore->setSecure($tsCore->parseBadWords($_POST['mensaje']), true),
                    'sitio' => $tsCore->setSecure($tsCore->parseBadWords($sitio), true),


Luego buscamos  

                case 8:
                    ....
                setSecure($_SERVER['REMOTE_ADDR']).'\')')) return array('error' => 'Proceso iniciado, recibirá la respuesta en el correo indicado cuando valoremos el cambio.');
                }
            break;


debajo agregaremos esto

            case 9:
                // EXTERNAS
                $facebook = $tsCore->setSecure($tsCore->parseBadWords($_POST['facebook']), true);
                $twitter = $tsCore->setSecure($tsCore->parseBadWords($_POST['twitter']), true);
                $youtube = $tsCore->setSecure($tsCore->parseBadWords($_POST['youtube']), true);
                $instagram = $tsCore->setSecure($tsCore->parseBadWords($_POST['instagram']), true);
                $linkedin = $tsCore->setSecure($tsCore->parseBadWords($_POST['linkedin']), true);
                $pinterest = $tsCore->setSecure($tsCore->parseBadWords($_POST['pinterest']), true);
                // IN DB
                $perfilData = array(
                    'socials' => serialize(array($facebook,$twitter,$youtube,$instagram,$linkedin,$pinterest)),
                );
            break;


3) Ahora buscamos en templates/t.cuenta.tpl

                            <li><a onclick="cuenta.chgtab(this)">Cambiar Nick</a></li>

y debajo agregamos esto

                            <li><a onclick="cuenta.chgtab(this)">Redes</a></li>    

Luego más abajo buscamos

                            {include file='modules/m.cuenta_nick.tpl'}


y debajo agregamos esto

                            {include file='modules/m.cuenta_redes.tpl'}


4) Ahora vamos a templates/modules/ y creamos un archivo llamado m.cuenta_redes.tpl y en el alojaremos todo esto
 

<div class="content-tabs redes" style="display:none">
    <fieldset>
        <div class="alert-cuenta cuenta-9"></div>

            <h2 class="active rsocial">Redes Sociales:</h2>
        <div class="field">
        <div id="redesociales">
            <span class="fa fa-facebook Linkfa"></span>
                <strong>facebook.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.f}" maxlength="64" name="facebook" id="ft" class="text cuenta-save-9">
        </div>
        <div id="redesociales">
            <span class="fa fa-twitter Linktw"></span>
                <strong>twitter.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.t}" maxlength="64" name="twitter" id="ft2" class="text cuenta-save-9">
        </div>
        <div id="redesociales">                            
            <span class="fa fa-youtube Linkyo"></span>
                <strong>youtube.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.y}" maxlength="64" name="youtube" id="ft2" class="text cuenta-save-9">
            </div>
        <div id="redesociales">                                
            <span class="icon icon-instagram Linkins"></span>
                <strong>instagram.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.i}" maxlength="64" name="instagram" id="ft2" class="text cuenta-save-9">
            </div>
        <div id="redesociales">                                
            <span class="fa fa-linkedin Linkli"></span>
                <strong>linkedin.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.l}" maxlength="64" name="linkedin" id="ft2" class="text cuenta-save-9">
            </div>
        <div id="redesociales">                                
            <span class="fa fa-pinterest Linkpi"></span>
                <strong>pinterest.com/</strong>
                <input type="text" value="{$tsPerfil.p_socials.p}" maxlength="64" name="pinterest" id="ft2" class="text cuenta-save-9">
            </div>                
                
    </div>
        <div class="buttons">
            <input type="button" value="Guardar" onclick="cuenta.save(9)" class="mBtn btnOk">
        </div>
    <div class="clearfix"></div>
</div>

5) En extras.css al final de todo agregaremos

ATENCIÓN ACÁ USTEDES PUEDEN MODIFICARLO PARA ADAPTARLO A SU THEME Y UTILIZA FONTAWESOME

/* Cuenta */
h2.rsocial {
    margin: 0px;
    padding: 8px;
    font-size: 30px;
    color: #357997;
    line-height: 1em;
    text-align: center;
    font-family: 'Century gothic';
    border-top: 1px dashed #145665;
    border-bottom: 1px dashed #145665;
}
#redesociales {
    width: 100%;
    padding: 8px;
    display: block;
}
#redesociales span {
    color: #EEE;
    padding: 6px;
    font-size: 20px;
}
#redesociales span.Linkfa,
#redesociales span.Linkyo,
#redesociales span.Linkins,
#redesociales span.Linkli,
#redesociales span.Linktw,
#redesociales span.Linkpi { padding: 5px 15px; text-align:center; border-radius:3px; }

#redesociales span.Linkfa { background:#3B5998;}
#redesociales span.Linkyo{ background:#D14836;}
#redesociales span.Linkins{ background:#14589E;}
#redesociales span.Linkli{ background:#007FB1;}
#redesociales span.Linktw{ background:#00ACED;}
#redesociales span.Linkpi{ background:DarkRed;}
#redesociales strong {
    color: #333;
    font-size: 20px;
    padding-left: 3px;
    font-weight: normal;
    text-shadow: 0px 0px 3px #888;
    text-transform: uppercase!important;
}
#redesociales input[type="text"] {
    float: right;
    color: #555;
    font-weight: bold;
    padding: 6px;
    width: 270px;
    font-size: 20px;
    margin-right: 18%;
}
@media screen and (max-width: 768px) {
    #redesociales strong {
        display: none!important;
    }
    #redesociales input[type="text"] {
        float: both;
        color: #555;
        font-weight: bold;
        padding: 6px;
        width: 270px;
        font-size: 20px;
        margin-left: -18%;
    }
}

6) Ahora volvemos a templates/modules/ y crearemos otro archivo llamado m.redes_sociales.tpl

<div id="redes-perfil">
    {if $tsInfo.p_socials.f}
        <a target="_blank" href="http://www.facebook.com/{$tsInfo.p_socials.f}" class="qtip" title="{$tsInfo.p_socials.f}">
            <span class="fa fa-facebook Linkfa"></span>
        </a>
    {/if}
    {if $tsInfo.p_socials.t}
        <a target="_blank" href="http://www.twitter.com/{$tsInfo.p_socials.t}" class="qtip" title="@{$tsInfo.p_socials.t}">
            <span class="fa fa-twitter Linktw"></span>
        </a>
    {/if}
    {if $tsInfo.p_socials.y}
        <a target="_blank" href="http://www.youtube.com/{$tsInfo.p_socials.y}" class="qtip" title="{$tsInfo.p_socials.y}">
            <span class="fa fa-youtube Linkyo"></span>
        </a>
    {/if}
    {if $tsInfo.p_socials.i}
        <a target="_blank" href="http://www.instagram.com/{$tsInfo.p_socials.i}" class="qtip" title="@{$tsInfo.p_socials.i}">
            <span class="fa fa-instagram Linkins"></span>
        </a>
    {/if}
    {if $tsInfo.p_socials.l}
        <a target="_blank" href="http://www.linkedin.com/{$tsInfo.p_socials.l}" class="qtip" title="{$tsInfo.p_socials.l}">
            <span class="fa fa-linkedin Linkli"></span>
        </a>
    {/if}
    {if $tsInfo.p_socials.p}
        <a target="_blank" href="http://www.pinterest.com/{$tsInfo.p_socials.p}" class="qtip" title="{$tsInfo.p_socials.p}">
            <span class="fa fa-pinterest Linkpi"></span>
        </a>
    {/if}

</div>

7) y por último agregan {include file='modules/m.redes_sociales.tpl'} en m.perfil_headinfo o en donde ustedes quieran..

A 5 personas le gusta esto

Compartir este post


Enlace al post
Compartir en otros sitios

Toma tu +1.

sQDm3.png

 

Editado por MagicInventor
A 1 persona le gusta esto

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!


Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.


Iniciar Sesión

  • Similar Content

    • Por rafa
      hola amigos estoy reconstruyendo mi web despues de mucho tiempo como el sitio de taringa pero no encuentro nada al respecto sobre el mod karma por posteo o comparimiento en la comunidad agradezco su respuestas.
       
      mi web: http://www.systemarg.com
    • Por Tronlar
      Hola,a pedido de este post,os dejo la manera, con la que he hecho funcionar el mod en la versión 1.2...
      Hacen todos los pasos de este post,menos los de los archivos bbcode.inc.php y c.core.php,esos archivos lo hacen aquí.
      En bbcode.inc.php
      Buscar:
      $pre = '<img src="'.$tsCore->settings['default'].'/images/smiles/'; $end = '" align="absmiddle"/>';
      cambiar por:
      $pre = '<img src="'.$tsCore->settings['default'].'/images/icons/smiles/'; $end = '" align="absmiddle"/>';  
      buscar:
      $bbcode[] = "(xx)"; $html[] = $pre."103.png".$end;
      agregar debajo:
      $bbcode[] = ":angry:"; $html[] = $pre."104.png".$end; $bbcode[] = ":mirada:"; $html[] = $pre."105.png".$end; $bbcode[] = ":okay:"; $html[] = $pre."106.png".$end; $bbcode[] = ":notbad:"; $html[] = $pre."107.png".$end; $bbcode[] = ":pokerface:"; $html[] = $pre."108.png".$end; $bbcode[] = ":truestory:"; $html[] = $pre."109.png".$end; $bbcode[] = ":falone:"; $html[] = $pre."110.png".$end; $bbcode[] = ":fuckyeahgirl:"; $html[] = $pre."111.png".$end; $bbcode[] = ":maybe:"; $html[] = $pre."112.png".$end; $bbcode[] = ":awyeah:"; $html[] = $pre."113.png".$end; $bbcode[] = ":good:"; $html[] = $pre."114.png".$end; $bbcode[] = ":umm:"; $html[] = $pre."115.png".$end; $bbcode[] = ":chac:"; $html[] = $pre."116.png".$end; $bbcode[] = ":friki:"; $html[] = $pre."117.png".$end; $bbcode[] = ":sadtroll:"; $html[] = $pre."118.png".$end; $bbcode[] = ":really:"; $html[] = $pre."119.png".$end; $bbcode[] = ":yuno:"; $html[] = $pre."120.png".$end; $bbcode[] = ":troll:"; $html[] = $pre."121.png".$end; $bbcode[] = ":yao:"; $html[] = $pre."122.png".$end; $bbcode[] = ":raisins:"; $html[] = $pre."123.png".$end; $bbcode[] = ":fapfap:"; $html[] = $pre."124.png".$end; $bbcode[] = ":fuckyeah:"; $html[] = $pre."125.png".$end; $bbcode[] = ":trolldad:"; $html[] = $pre."126.png".$end; $bbcode[] = ":happy:"; $html[] = $pre."127.png".$end; $bbcode[] = ":why:"; $html[] = $pre."128.png".$end; $bbcode[] = ":fuu:"; $html[] = $pre."129.png".$end; $bbcode[] = ":megusta:"; $html[] = $pre."130.png".$end; $bbcode[] = ":aww:"; $html[] = $pre."131.png".$end; $bbcode[] = ":cguy:"; $html[] = $pre."132.png".$end; $bbcode[] = ":motherofgod:"; $html[] = $pre."133.png".$end; $bbcode[] = ":lol:"; $html[] = $pre."134.png".$end; $bbcode[] = ":herp:"; $html[] = $pre."135.png".$end; $bbcode[] = ":no:"; $html[] = $pre."136.png".$end; $bbcode[] = ":happygirl:"; $html[] = $pre."137.png".$end;
      c.core.php
      Buscar:
      /* parseSmiles($st) */ public function parseSmiles($bbcode){ return $this->parseBBCode($bbcode, 'smiles'); }
      cambiar por:
      /* parseSmiles($st) */ public function parseSmiles($st, $path = ''){ // SMILEYS $bbcode = array(); $html = array(); // $pre = '<img src="'.$path; $end = '" align="absmiddle"/>'; $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT code, image FROM w_emoticones'); $data = result_array($query); foreach ($data as $e) { $bbcode[] = $e['code']; $html[] = $pre.$e['image'].$end; } // REEMPLAZAMOS SMILEYS return str_replace($bbcode, $html, $st); }  
      y suben la carpeta smiles a la carpeta icons,con eso ya le estaría funcionando.
      http://www.mediafire.com/file/ocg6kvosebd1aav/smiles.rar
       



       
       
       
       
       
       
       
       
       
    • Por RodrigoVGarcia
      Hola amigos de nuevo, quería ver si alguien hace o ya ah hecho, ya que no creo que sea algo muy novedoso, la idea de hacer un mod en el que los usuarios ganen puntos por comentar post. Es decir si comentan 2 veces en el mismo post no se le dan dos puntos, sino 1 solo porque es 1 punto por post. En fin me ayudaría mucho a promover a que la gente se ayude y comente entre todos en mi web. Saludos!
    • Por RodrigoVGarcia
      ACLARACION: este mod no es mio. Solo lo adapte a la nueva versión. Agradecimiento a los autores al final del tema.
       
      Hola amigos. Hoy no vengo con una pregunta  . Vengo para mostrarles como instalar el mod de referidos + puntos por referido.
      Lo que hace este mod es que la gente pueda promocionar tu pagina para ganar puntos a cambio. La manera en que funciona es así:
      Yo soy un usuario de tu web y quiero puntos gratis. Publicito tu web y les pido a la gente que pongan mi nombre en el campo de referidos cuando se van a registrar. Una vez que se registran a mi se me dan puntos automáticamente.
       
      Bueno comencemos con la instalación:
       
      1) Abrimos c.registro.php .Que se encuentra en inc/class, y despues de:
      } else $valid = '0: Faltan datos y no se puede procesar tu solicitud.'; // retornar valor return $valid; } Agregamos:
      /** * @name referidos by tutan-kabron * @access public * @param * @return string */ public function checkUserEmail2(){ global $tsCore; // Variables $referido = strtolower($_POST['referido']); $which = empty($referido) ? 'referido' : 'referido'; // MENSAJE $valid = '1: El '.$which.' no existe .'; // DEFAULT // if(!empty($referido)){ $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT `user_id` FROM `u_miembros` WHERE LOWER(user_name) = \''.$tsCore->setSecure($referido).'\' LIMIT 1'); if(db_exec('num_rows', $query) > 0) $valid = '0: El '.$which.' si existe.'; // EXISTE } else $valid = '0: Este Campo no es obligatorio.'; // retornar valor return $valid; } 2) En el mismo archivo c.registro.php buscamos mas abajo:
      function registerUser(){ global $tsCore, $tsUser; // DATOS NECESARIOS Y debajo de eso agregamos:
      $referido=$_POST['referido']; if(empty($referido)){ $referido='1'; }else{ $referido= $tsCore->setSecure($_POST['referido']); } 3) En el mismo archivo c.registro.php buscamos un poquito mas abajo:
      'user_email' => $_POST['email'], Y debajo de eso agregamos:
      'user_referido' => $referido, 4) Mas abajo en el mismo archivo c.registro.php buscamos:
      // MENSAJE PARA DAR LA BIENVENIDA BIENVENIDA Antes de eso agregamos:
      if($referido != '1'){ db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_miembros SET user_referidos = user_referidos + 1 WHERE user_name = \''.$tsData['user_referido'].'\''); db_exec(array(__FILE__, __LINE__), 'query', 'INSERT INTO `referidos` (`user_referido`, `user_name`, `fecha`) VALUES (\''.$tsData['user_referido'].'\', \''.$tsData['user_nick'].'\', \''.time().'\')'); } 5) Abrimos ajax.registro.php que se encuentra en la carpeta inc/php/ajax y antes de:
      case 'registro-geo': Agregamos:
      case 'registro-check-referido': //<--- echo $tsReg->checkUserEmail2(); //---> break; 6) En el mismo archivo arriba buscamos:
      'registro-check-nick' => array('n' => 1, 'p' => ''), Y debajo de eso agregamos:
      'registro-check-referido' => array('n' => 1, 'p' => ''), 7) Abrimos p.registro.form.tpl que esta en la carpeta themes/tutema/templates/t.php_files y debajo de:
      <div class="form-line"> <label for="email">E-mail</label> <input name="email" type="text" id="email" tabindex="4" title="Ingresa tu dirección de email" onfocus="registro.focus(this)" onblur="registro.blur(this)" onkeydown="registro.clear_time(this.name)" onkeyup="registro.set_time(this.name)" autocomplete="off" /> <div class="help"><span><em></em></span></div> </div> Agregamos:
      <div class="form-line"> <label for="referido">Ingresa tu referido (opcional)</label> <input name="referido" type="text" id="referido" tabindex="1" title="Ingrese el nick del referido" onfocus="registro.focus(this)" onblur="registro.blur(this)" onkeydown="registro.clear_time(this.name)" onkeyup="registro.set_time(this.name)" autocomplete="off" /> <div class="help"><span><em></em></span></div> </div> 8) Abrimos registro.js que esta en la carpeta themes/tutema/js y buscamos:
      //Un elemento pierde el foco blur: function(el){ var name = $(el).attr('name'); switch(name){ case 'nick': case 'email': this.clear_time(name); $(el).removeClass('selected'); this.check_campo(el, false, true); break; default: $(el).removeClass('selected'); this.check_campo(el, false, true); break; } }, Lo reemplazamos por:
      //Un elemento pierde el foco blur: function(el){ var name = $(el).attr('name'); switch(name){ case 'nick': case 'referido': case 'email': this.clear_time(name); $(el).removeClass('selected'); this.check_campo(el, false, true); break; default: $(el).removeClass('selected'); this.check_campo(el, false, true); break; } }, 9) Mas abajo buscamos:
      /* password */ case 'password': Y antes de eso agregamos:
      /* referido by tutan-kabron */ case 'referido': //Si ya paso por aca y no hubieron cambios, devuelvo el mismo status if(!force_check && this.datos[campo] === value) if(this.datos_status[campo]=='empty') return no_empty ? this.show_status(el, this.datos_status[campo], this.datos_text[campo]) : this.hide_status(el, this.datos_status[campo], this.datos_text[campo]); else return this.show_status(el, this.datos_status[campo], this.datos_text[campo]); //Almaceno el dato this.datos[campo] = value; //Caracteres validos if(/[^a-zA-Z0-9_]/.test(value)) return this.show_status(el, 'error', 'Sólo se permiten letras, nómeros y guiones(_)'); //Compruebo si ya esta en uso //Compruebo el Cache var value_lower = value.toLowerCase(); if(!this.cache[campo]){ this.cache[campo] = new Array(); this.cache[campo][value_lower] = new Array(); }else if(this.cache[campo][value_lower]){ if(this.cache[campo][value_lower]['status']) return registro.show_status(el, 'ok', this.cache[campo][value_lower]['text']); else return registro.show_status(el, 'error', this.cache[campo][value_lower]['text']); } this.show_status(el, 'loading', 'Comprobando referido...'); $('#loading').fadeIn(250); $.ajax({ type: 'POST', url: global_data.url + '/registro-check-referido.php?t=nombre de usuario', data: 'referido='+value, success: function(h){ registro.cache[campo][value_lower] = new Array(); registro.cache[campo][value_lower]['text'] = h.substring(3); switch(h.charAt(0)){ case '0': //Estaba en uso registro.cache[campo][value_lower]['status'] = true; registro.show_status(el, 'ok', h.substring(3)); break; case '1': //No esta en uso registro.cache[campo][value_lower]['status'] = false; registro.show_status(el, 'error', h.substring(3)); break; } $('#loading').fadeOut(350); }, error: function(){ registro.show_status(el, 'error', 'Hubo un error al intentar procesar lo solicitado'); registro.datos[campo] = ''; } }); break; /* termina campo referido */ 10) Ahora buscamos el archivo c.admin.php que se encuentra en la carpeta inc/class y antes de:
      /* getNoticias() */ function getNoticias() Agregamos:
      /* getReferidos() */ function getReferidos() { // $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT u.user_id, u.user_name, r.* from referidos AS r LEFT JOIN u_miembros AS u ON r.user_referido = u.user_name ORDER BY r.id DESC'); $data = result_array($query); // return $data; } /* getReferido() */ function getReferido() { global $tsCore; // $id = $tsCore->setSecure($_GET['id']); // $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT `id`, `user_name`, `user_referido`, `fecha` FROM referidos WHERE id = \'' . (int)$id . '\' LIMIT 1'); $data = mysql_fetch_assoc($query); // return $data; } /* deReferidos(); */ function delReferido() { $id = $_GET['id']; if (!db_exec('num_rows', db_exec(array(__FILE__, __LINE__), 'query', 'SELECT `id` FROM `referidos` WHERE `id` = \'' . (int)$id . '\' LIMIT 1'))) { return 'El id ingresado no existe.'; } $query = db_exec(array(__FILE__, __LINE__), 'query', 'DELETE FROM `referidos` WHERE `id` = \'' . (int)$id . '\''); } 11) Abrimos el archivo admin.php que se encuentra en la carpeta inc/php y antes de:
      /** NOTICIAS **/ } elseif($action == 'news'){ Agregamos:
      /** REFERIDOS by tutan-kabron**/ } elseif($action == 'referidos'){ if(empty($act)) $smarty->assign("tsReferidos",$tsAdmin->getReferidos()); elseif($act == 'borrar'){ if($tsAdmin->delReferido()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/referidos?borrar=true'); } 12)Abrimos el archivo t.admin.tpl que se encuentra en la carpeta themes/tutema/templates y antes de:
      {/if} Agregamos:
      {elseif $tsAction == 'referidos'} {include file='admin_mods/referidos.tpl'} 13) Abrimos m.admin_sidemenu.tpl que se encuentra en la carpeta themes/tutema/templates/admin_mods y al final agregan:
      <h4>Utilidades</h4> <ul class="cat-list"> <li id="a_users"><span class="cat-title"><a href="{$tsConfig.url}/admin/referidos">Referidos</a></span></li> </ul> 14) Abrimos c.cuenta.php que se encuentra en la carpeta inc/class y buscamos:
      /* loadHeadInfo($user_id) */ function loadHeadInfo($user_id){ global $tsUser, $tsCore; // INFORMACION GENERAL $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT u.user_id, u.user_name, u.user_registro, u.user_lastactive, u.user_referidos, u.user_activo, u.user_baneado, p.user_sexo, p.user_pais, p.p_nombre, p.p_avatar, p.p_mensaje, p.p_socials, p.p_empresa, p.p_configs FROM u_miembros AS u, u_perfil AS p WHERE u.user_id = \''.(int)$user_id.'\' AND p.user_id = \''.(int)$user_id.'\''); $data = db_exec('fetch_assoc', $query); Y despues de:
      u.user_lastactive, Ponemos a su derecha:
      u.user_referidos, Quedando así:
      u.user_lastactive, u.user_referidos, 15) Abrimos m.perfil_headinfo.tpl que se encuentra en la carpeta themes/tutema/templates/modules y despues de:
      <li> <strong>{$tsInfo.stats.user_comentarios}</strong> <span>Comentarios</span> </li> Agregamos:
      <li> <strong>{$tsInfo.user_referidos}</strong> <span>Referidos</span> </li> 16) Suben el siguiente archivo a la carpeta themes/tutema/templates/admin_mods
      http://www.mediafire.com/file/x9g4xvu6a3e2zxa/referidos.tpl
       
      17) Ahora van phpmyadmin y ponen las siguientes consultas:
      (Recuerden en tu phpmyadmin van a donde dice SQL para hacer las consultas)
      Primero hacen esta:
      ALTER TABLE `u_miembros` ADD `user_referidos` INT( 11 ) NOT NULL DEFAULT '0' Y luego esta:
      CREATE TABLE IF NOT EXISTS `referidos` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_referido` varchar(60) CHARACTER SET latin1 NOT NULL, `user_name` varchar(60) CHARACTER SET latin1 NOT NULL, `fecha` int(12) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=16 ; Eso fue todo por la parte de solamente referidos. Si quieren solamente los referidos sin puntos no sigas con los siguientes pasos.
      Ahora viene la parte de agregarle puntos al que reciba referidos:
       
      1) Ahora van phpmyadmin y ponen las siguientes consultas:
      (Recuerden en tu phpmyadmin van a donde dice SQL para hacer las consultas)
      Ponen lo siguiente:
      ALTER TABLE w_configuracion ADD p_p_refs INT(11) NOT NULL; 2) Buscamos c.admin.php que se encuentra en la carpeta inc/class y luego de:
      'offline_message' => $tsCore->setSecure($tsCore->parseBadWords($_POST['offline_message'])), Agregamos:
      'p_p_refs' => $tsCore->setSecure($_POST['p_p_refs']), 3) En el mismo archivo buscamos:
      '\', `offline_message` = \'' . $c['offline_message'] . Y agregamos al lado (a su derecha):
      Fijensen que el Punto ( . ) va con un espacio a la izquierda y un espacio a la derecha.
      '\', `p_p_refs` = \'' . $c['p_p_refs'] . 4) Buscamos en c.registro.php que se encuentra en la carpeta inc/class:
      if($referido != '1'){ db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_miembros SET user_referidos = user_referidos + 1 WHERE user_name = \''.$tsData['user_referido'].'\''); db_exec(array(__FILE__, __LINE__), 'query', 'INSERT INTO `referidos` (`user_referido`, `user_name`, `fecha`) VALUES (\''.$tsData['user_referido'].'\', \''.$tsData['user_nick'].'\', \''.time().'\')'); } Y lo reemplazamos por:
      if($referido != '1'){ db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$tsCore->settings['p_p_refs'].'\' WHERE user_name = \''.$tsData['user_referido'].'\''); db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_miembros SET user_referidos = user_referidos + 1 WHERE user_name = \''.$tsData['user_referido'].'\''); db_exec(array(__FILE__, __LINE__), 'query', 'INSERT INTO `referidos` (`user_referido`, `user_name`, `fecha`) VALUES (\''.$tsData['user_referido'].'\', \''.$tsData['user_nick'].'\', \''.time().'\')'); $aviso = 'Tu referido <a href="'.$tsCore->settings['url'].'/perfil/'.$tsData['user_nick'].'"><b>'.$tsData['user_nick'].'</b></a>se ha registrado. <br /><br/> Dale la bienvenida! <br />Obtentienes '.(int)$tsCore->settings['p_p_refs'].' puntos por tu referido'; db_exec(array(__FILE__, __LINE__), 'query', 'INSERT INTO `u_avisos` (`user_id`, `av_subject`, `av_body`, `av_date`, `av_type`) VALUES (\''.$tsUser->getUserId($tsData['user_referido']).'\', \'Nuevo referido\', \''.$aviso.'\', \''.'\', \''.time().'\', \'4\')'); } 5) Por último abrimos el archivo m.admin_configs.tpl que se encuentra en la carpeta themes/tutema/templates/admin_mods y buscamos:
      <dl> <dt><label for="ai_max_com">Comentarios por post:</label><br /><span>N&uacute;mero m&aacute;ximo de comentarios por p&aacute;gina en los post.</span></dt> <dd><input type="text" id="ai_max_com" name="max_com" maxlength="3" value="{$tsConfig.c_max_com}" class="searchBar" style="width: 280px;"/></dd> </dl> Y debajo ponemos:
      <dl> <dt><label for="p_p_refs">Puntos por referido</label><br /><span>Puntos que recibira como bonificacion un user al subir un posts.</span></dt> <dd><input type="text" id="p_p_refs" name="p_p_refs" style="width:10%" maxlength="3" value="{$tsConfig.p_p_refs}" /></dd> </dl> Y listo, terminado.
       
      Capturas:
       

       

       

       

       

       
      Le agradezco enormemente a:
      tutan-kabron por crear el mod en primer lugar. 
       
      k_jupiter por modificar el mod para que tuviera puntos por referido.
      Vellenger por poner el fix para que el mod ande perfecto.
      Y a KillerJohn por pedirme si subía el tema.
       
      Espero que les sirva. Supongo que mas a los nuevos que a los usuarios viejos. Ya que los viejos, ya saben hacerlo.
       
      Saludos!
       
       
    • Por RodrigoVGarcia
      Hola amigos, de nuevo con dudas. Estoy intentando instalar el mod referidos: 
      Pero no existe el archivo a.sidebar.tpl y bueno quería consultarles como hago para instalarlo en mi web. Seguro es re fácil, pero como se poco y nada, no me sale. 
      web: www.dibujandoconestilo.esy.es
      Saludos.
  • Navegando Recientemente   0 miembros

    No registered users viewing this page.