Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - excitex2

Pages: [1] 2
1
Español / Castellano / Nadie actualiza los MOD´s en el listado ?
« on: December 21, 2013, 02:28:33 PM »
revisando el foro me he dado cuenta que desde hace mucho tiempo nadie a actualizado el listado de MOD´s.
Ya se que no soy el más adecuado para reclamar esto por el tiempo que llevo sin entrar en el foro, pero creo que es un error no actualizarlo, pues hay varios MOD´s que se han creado y no se han puesto en la lista. Esto supone que estos MOD´s se queden atrasados en la paginación del foro y se vuelva a preguntar por el tema o bien que con el paso del tiempo no sirvan para dar ideas a otros usuarios.
Seria de gran ayuda ( desde mi punto de vista ) que todos los que han creado algun MOD y que los hayan modificado los añadieran en la lista para asi poder dar uso de su trabajo.
Que coñazo acabo de soltar verdad ? :twisted: pero es lo que creo, que nadie se sienta molesto por mi opinión.  :wink:

excitex

2
Español / Castellano / Felices Fiestas
« on: December 21, 2013, 11:52:12 AM »
Felices fiestas y que la entrada del nuevo Año sea el priincipio de la solución de todos los problemas que afectan a todas las personas.

Después de tanto tiempo quiero decir que nunca me he olvidado de esta galería y en especial a este foro que tan buenos amigos me ha dado.

He recibido muchos correos con dudas sobre algunos MOD´s, algunos he contestado, otros no, a esas personas que no contesté, mis más  sinceras disculpas.

Nos veremos nuevamente en el foro, un saludo a todo elmundo

Excitex

3
Español / Castellano / [TUTORIAL] Insertar nuevos campos en la imagen
« on: August 04, 2008, 12:44:56 AM »
Saludos,,,

Ya hay algún que otro tutorial por el foro de como insertar campos en las diferentes secciones que componen la galería,,, pero la mayoría estan en inglés o/y alemán,,,, pues bueno vamos a poner en español como se hace este tipo de operaciones  :evil: :evil:

Para no cometer errores primero tenemos que planificar cuantos campos vamos a insertar,,,como tiene que ser cada campo,, el nombre de cada uno,,, si va a ser obligatorio en rellenar,,, si va a ser de texto,, si va a ser tipo comentario,, o bien si va a ser de opciones ( el típico SI/NO ).

Supongamos que queremos insertar 2 nuevos campos en las imágenes,, 

Campo 1º) Será opcional  de rellenar por el usuario,,, será de tipo texto,,, y en él, insertaremos el nombre del lugar donde se hizo la imagen.

Campo 2º) Será obligatorio de rellenar por el usuario,,, será de tipo opción ( Si o No), y en él insertarmos si la imagen tiene Copyright

Desglose del primer campo :

Nombre del primer campo = image_lugar.
Tipo de campo = text (texto) .
Obligatorio de rellenar = 0 (no obligatorio) .

Desglose del segundo campo :

Nombre del segundo campo = image_Copyright.
Tipo de campo = radio (opción SI ó NO).
Obligatorio de rellenar = 1 (obligatorio) .

Pasos a seguir :

Abrir includes/db_field_definitions.php he insertar antes de ?> :

Code: [Select]
$additional_image_fields['image_lugar'] = array($lang['image_lugar'], "text", 0);
$additional_image_fields['image_Copyright'] = array($lang['image_Copyright'], "radio", 1);

Cerrar y guardar cambios.

Abrir details.php :

Localizar :


Code: [Select]
$clickstream .= $image_name."</span>";
Añadir debajo :

Code: [Select]
//////////////////////////////////////
//Campo adicional para las iamgenes //
//////////////////////////////////////
$image_row['image_Copyright'] ? $image_Copyright = $lang[yes] : $image_Copyright = $lang[no] ;
////////////////////////////////////////////////////////////////////

Localizar  :

Code: [Select]
"lang_next_image" => $lang['next_image'],
Añadir debajo :

Code: [Select]
"image_Copyright" => $image_Copyright ,
Cerrar y guardar cambios.

Abrir lang/Tu_idioma/main.php

Localizar :

Code: [Select]
$lang['voted_list'] = "Quien votó la imagen";

Añadir debajo :

Code: [Select]
///////////////////////////////////
//Campos adicionales en la imagen//
///////////////////////////////////
$lang['image_lugar'] = "Lugar:";
$lang['image_Copyright'] = "Imágen con Copyright :";

Cerrar y guardar cambios.

Abrir templates/Tus_plantillas/member_uploadform.html :

Localizar :

Code: [Select]
<tr>
            <td class="row2" valign="top"><b>{lang_keywords}</b></td>
            <td class="row2">
              <textarea cols="30" class="textarea" rows="10" wrap="VIRTUAL" name="image_keywords">{image_keywords}</textarea>
            </td>
          </tr>

Añadir debajo :

Code: [Select]
<tr>
            <td class="row1" valign="top"><b>{lang_image_lugar}</b></td>
            <td class="row1">
            <input type="text" name="image_lugar" value="{image_lugar}" class="input" size="20" />
</td>
            </tr>
            <tr>
            <td class="row2" valign="top"><b>{lang_image_Copyright}</td>
            <td class="row2"><p>
            <input type="radio" name="image_Copyright" value="1" /> {lang_yes}
            <input type="radio" name="image_Copyright" value="0" /> {lang_no}
            </td>
            </tr>

Cerrar y guardar cambios.

Abrir templates/default/details.htm :

Localizar :

Code: [Select]
<tr>
                            <td valign="top" class="row2"><b>{lang_added_by}</b></td>
                            <td valign="top" class="row2">{user_name_link}</td>
                          </tr>

Añadir debajo :

Code: [Select]
<tr>
                            <td valign="top" class="row1"> <b>{lang_image_lugar}</b></b></td>
                            <td valign="top" class="row1">{image_lugar}</td>
                          </tr>
<tr>
                            <td valign="top" class="row2"> <b>{lang_image_Copyright}</b></b></td>
                            <td valign="top" class="row2">{image_Copyright}</td>
                          </tr>

Cerrar y guardar cambios

Por último solamente falta insertar en la base de datos de la galería los dos nuevos campos en la tabla images


Los campos son los siguientes :

Quote
ALTER TABLE `4images_images` ADD `image_lugar` VARCHAR( 255 ) NOT NULL;
ALTER TABLE `4images_images` ADD `image_Copyright` tinyint(1) NOT NULL;

Si hay alguien que no sabe trabajar con bases de datos os dejo un programa que hará el trabajo por vosotros  :D :D

Lo teneis que descargar,,, descomprimir y subirlo al directorio raiz de tu galería,,, donde tienes el config.php y seguidamente lo ejecutas en tu navegador como administrador de tu galería,, osea entras en tu galería,, te registras como administrador y ejecutas el install_nuevos_campos_imagen.php en tu navegador.

Descargar el nuevo fichero install_nuevos_campos_imagen.php << >>  lo subes al directorio raiz de tu galería ( donde tienes el config.php ) y luego lo ejecutas desde tu navegador como adminstrador de tu galería.

Y creo que esto es todo.

excitex

4
Español / Castellano / [MOD] Incorporar Moderadores en la galería
« on: April 09, 2007, 02:55:02 AM »
Saludos,,,

Este MOD incorpora la figura del MODERADOR a la galería.

Las pruebas se han realizado en la versión 1.7.4 ,, en versiones anteriores no se ha probado,, pero en principio no tiene que dar ningun tipo de problemas

8-1-2014 Se ha verificado con la versión 1.7.11 y funciona correctamente.

Se puede designar todos los moderadores que se quiera,,, e independientemente a cada uno de ellos se le puede asignar unos determinados atributos.
Dichos Moderadores pueden controlar : las categorias,,,las imágenes,,, los comentarios y los usuarios
Por ejemplo,, a un Moderadore se le puede asignar que controle las categorías,, a otro los usuarios,,a otro los comentarios y las imágenes,, etc, etc, Se les puede hacer todas las combinaciones que se quiera con las 4 opciones anteriormente citadas.
Los moderadores no tendrán acceso a la configuración de la galería eso es cosa de los Administradores,, tampoco podran editar ni modificar a los Administradores ni a los otros Moderadores.
Los Moderadores solamente pueden ser asignados por los Administradores,,, un Moderador no puede asignar a otro Moderador.
Si a un Moderador se le quita como Moderador,, automáticamente perderá todos los atributos que se le había asignado,, si después se le vuelve a designar como Moderador abrá que otorgale nuevamente los atributos.
Los Moderadores trabajaran con el mismo Panel de control que los Administradores,, pero con las restricciones que ya se han comentado.
Como desinaremos a los Moderadores : O bien damos de alta un nuevo Moderador desde el Panel de control,,, o bien elegimos un usuario registrado y le designamos como Moderador.

Para otorgarle los atributos hay que editar al Moderador,,, en la parte baja de la ficha,, apareceran 4 nuevas opciones que son :
Este MODERADOR tendrá control sobre las categorias : si/no
Este MODERADOR tendrá control sobre las imágenes : si/no
Este MODERADOR tendrá control sobre las comentarios : si/no
Este MODERADOR tendrá control sobre las usuarios : si/no

Bueno esto no tiene mayor explicación,, si a todo se le pone que no,,, pues será moderador pero no tendra control sobre nada,,, si se le pone si a las imagenes y a las categorias,, pues tendrá control sobre ellas pero no tendra control sobre los comentarios ni sobre los usuarios,,, eso se les asignaran segun las necesidades de cada administrador.

Paso a seguir para la instalación :

Nuevo fichero :

install_moderador.php

Ficheros a modificar :

details.php
lang/main.php
lang/admin.php
include/constans.php
include/page_header.php
templates/defauld/footer.html
admin/admin_functions.php
admin/email.php
admin/admin_global.php
admin/index.php
admin/users.php


MUY IMPORTANTE :

Haz copia de seguridad de tu base de datos y de todos los ficheros que vas a modificar.


Descargar el nuevo fichero install_moderador.php << >>  lo subes al directorio raiz de yu galería ( donde tienes el config.php ) y luego lo ejecutas desde tu navegador.

Localiza en details.php :

Code: [Select]
$admin_links = "";
      if ($user_info['user_level'] == ADMIN) {
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=editcomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=removecomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['delete']."</a>";
      }
      elseif ($is_image_owner) {
        $admin_links .= ($config['user_edit_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editcomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= ($config['user_delete_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removecomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['delete']."</a>";
      }

Cambia a :

Code: [Select]
///// Nuevo tipo de usuarios /////
      /* ******* Antes ********
      $admin_links = "";
      if ($user_info['user_level'] == ADMIN) {
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=editcomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=removecomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['delete']."</a>";
      }
      elseif ($is_image_owner) {
        $admin_links .= ($config['user_edit_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editcomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= ($config['user_delete_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removecomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['delete']."</a>";
      }
      // ******* Ahora *********
      */
      $admin_links = "";
      if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_comentarios'] == 1)) {
      $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=editcomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("comments.php?action=removecomment&amp;comment_id=".$comment_row[$i]['comment_id']))."\" target=\"_blank\">".$lang['delete']."</a>";
      }
      elseif ($is_image_owner) {
        $admin_links .= ($config['user_edit_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editcomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['edit']."</a>&nbsp;";
        $admin_links .= ($config['user_delete_comments'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removecomment&amp;".URL_COMMENT_ID."=".$comment_row[$i]['comment_id'])."\">".$lang['delete']."</a>";
      }
      ///// Fin nuevo tipo de usuario /////

Localiza en el mismo details.php :

Code: [Select]
$admin_links = "";
if ($user_info['user_level'] == ADMIN) {
  $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=editimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=removeimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['delete']."</a>";
}
elseif ($is_image_owner) {
  $admin_links .= ($config['user_edit_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= ($config['user_delete_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removeimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['delete']."</a>";
}

Cambia a :

Code: [Select]
///// Nuevo tipo de usuarios /////
/* ******* Antes ********
// Admin Links
$admin_links = "";
if ($user_info['user_level'] == ADMIN) {
  $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=editimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=removeimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['delete']."</a>";
}
elseif ($is_image_owner) {
  $admin_links .= ($config['user_edit_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= ($config['user_delete_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removeimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['delete']."</a>";
}
// ******* Ahora *********
*/
$admin_links = "";
if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_imagenes'] == 1)) {
        $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=editimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= "<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php?goto=".urlencode("images.php?action=removeimage&amp;image_id=".$image_id))."\" target=\"_blank\">".$lang['delete']."</a>";
}
elseif ($is_image_owner) {
  $admin_links .= ($config['user_edit_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=editimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['edit']."</a>&nbsp;";
  $admin_links .= ($config['user_delete_image'] != 1) ? "" : "<a href=\"".$site_sess->url(ROOT_PATH."member.php?action=removeimage&amp;".URL_IMAGE_ID."=".$image_id)."\">".$lang['delete']."</a>";
}
///// Fin nuevo tipo de usuario /////

Cerrar y guardar cambios.

Localiza en lang/tu_idioma/main.php
 

Code: [Select]
$lang['userlevel_admin'] = "Administrador";
Añade debajo :

Code: [Select]
////// Nuevo tipo usuario /////
$lang['userlevel_moderador'] = "Moderador";
///// Fin nuevo tipo usuario ///////

Cerrar y guardar cambios

Localiza en lang/tu_idioma/admin.php[/b]

Code: [Select]
$lang['userlevel_admin'] = "Administradores";

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario /////
$lang['userlevel_moderador'] = "Moderadores";
/////// Fin nuevo tipo de usuario /////

Localiza :

Code: [Select]
$lang['field_usergroup_name'] = "Nombre del grupo de usuarios.";

Añade debajo :

Code: [Select]
/////// Nuevo tipo de usuario //////////
$lang['field_moderador_categorias'] = "Este MODERADOR tendrá control sobre las categorias ? :";
$lang['field_moderador_imagenes'] = "Este MODERADOR tendrá control sobre las imagenes ? :";
$lang['field_moderador_comentarios'] = "Este MODERADOR tendrá control sobre los comentarios ? :";
$lang['field_moderador_usuarios'] = "Este MODERADOR tendrá control sobre los usuarios ? :";
/////// Fin nuevo tipo de usuario ////////

Localiza :

Code: [Select]
$lang['nav_users_email'] = "Enviar Email";

Añade debajo :

Code: [Select]
////// Nuevo tipo de usuario //////
$lang['nav_users_moderadores_main'] = "Moderadores";
$lang['nav_users_moderadores_edit'] = "Editar moderadores";
///// Fin nuevo tipo de usuario //////

Cerrar y guardar cambios

Localiza en include/constans.php :


Code: [Select]
// User levels
define('GUEST', -1);
define('USER_AWAITING', 1);
define('USER', 2);
define('ADMIN', 9);

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
define('MODERADOR', 5);
////// Fin nuevo tipo de usuario ///////

Localiza :

Code: [Select]
// Permission levels
define('AUTH_ALL', 0);
define('AUTH_USER', 2);
define('AUTH_ACL', 3);
define('AUTH_ADMIN', 9);

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
define('AUTH_MODERADOR', 5);
////// Fin nuevo tipo de usuario ///////

Localiza :

Code: [Select]
define('ADMIN_SAFE_LOGIN', 0);

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
define('MODERADOR_SAFE_LOGIN', 0);
////// Fin nuevo tipo de usuario ///////

Cerrar y guardar cambios

Localiza en : include/page_header.php


Code: [Select]
 "cp_link" => ($user_info['user_level'] != ADMIN) ? "" : "\n<p align=\"center\">[<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php")."\">Admin Control Panel</a>]</p>\n",

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
  "cp_moderador" => ($user_info['user_level'] != MODERADOR) ? "" : "\n<p align=\"center\">[<a href=\"".$site_sess->url(ROOT_PATH."admin/index.php")."\">Moderador Control Panel</a>]</p>\n",
  ////// Fin nuevo tipo de usuario ///////

Cerrar y guardar cambios

Localiza en : templates/tus_plantillas/footer.html


Code: [Select]
{cp_link}
Cambia a :

Code: [Select]
{cp_link}{cp_moderador}

Cerrar y guardar cambios

Localiza en : admin/admin_functions.php


Code: [Select]
 echo ">".$lang['userlevel_admin']."</option>\n";
Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
  echo "<option value=\"".MODERADOR."\"";
  if ($userlevel == MODERADOR && $userlevel != "") {
    echo " selected=\"selected\"";
  }
  echo ">".$lang['userlevel_moderador']."</option>\n";
   ////// Fin nuevo tipo de usuario ///////

Localiza :

Code: [Select]
echo ">".$lang['userlevel_registered_awaiting']."</option>\n";
  echo "</select>\n</td>\n</tr>\n";
}

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
function show_userlevel_select_row_moderadores($title, $name = "user_level", $userlevel = "") {
  global $lang, $error, $HTTP_POST_VARS;
  if (isset($error[$name])) {
    $title = sprintf("<span class=\"marktext\">%s *</span>", $title);
  }
  if (isset($HTTP_POST_VARS[$name])/* && $userlevel == ""*/) {
    $userlevel = stripslashes($HTTP_POST_VARS[$name]);
  }
  echo "<tr class=\"".get_row_bg()."\">\n<td><p class=\"rowtitle\">".$title."</p></td>\n<td>\n";
  echo "<select name=".$name.">\n";
  echo "<option value=\"".GUEST."\"";
  if ($userlevel == GUEST || $userlevel == "") {
    echo " selected=\"selected\"";
  }
  echo ">--</option>\n";
  echo "<option value=\"".USER."\"";
  if ($userlevel == USER && $userlevel != "") {
    echo " selected=\"selected\"";
  }
   echo ">".$lang['userlevel_registered']."</option>\n";
  echo "<option value=\"".USER_AWAITING."\"";
  if ($userlevel == USER_AWAITING && $userlevel != "") {
    echo " selected=\"selected\"";
  }
  echo ">".$lang['userlevel_registered_awaiting']."</option>\n";
  echo "</select>\n</td>\n</tr>\n";
}
//////// Fin nuevo tipo de usuario //////

Cerrar y guardar cambios

Localiza en : admin/email.php


Code: [Select]
$select .= "<option value=\"0\" class=\"dropdownmarker\">".$lang['userlevel_admin']."</option>\n";
    }

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
    elseif ($level != $user_level && $user_level == MODERADOR) {
      $select .= "<option value=\"0\">__________________________</option>\n";
      $select .= "<option value=\"0\" class=\"dropdownmarker\">".$lang['userlevel_moderador']."</option>\n";
    }
////// Fin nuevo tipo de usuario //////

Cerrar y guardar cambios


Localiza en : admin/admin_global.php

Code: [Select]
if (defined('ADMIN_SAFE_LOGIN') && ADMIN_SAFE_LOGIN == 1) {
  if ($user_info['user_level'] != GUEST && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
    setcookie("adminon", 1, 0, '/');
    $HTTP_COOKIE_VARS['adminon'] = 1;
  }
  else {
    if ($user_info['user_level'] == GUEST || $user_info['user_level'] == USER || $user_info['user_level'] == USER_AWAITING) {
      $HTTP_COOKIE_VARS['adminon'] = 0;
    }
  }

  if (!isset($HTTP_COOKIE_VARS['adminon']) || $HTTP_COOKIE_VARS['adminon'] == 0) {
    $user_info['user_level'] = GUEST;
  }
  else {
    if ($user_info['user_level'] != GUEST  && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
      setcookie("adminon", 1, 0, '/');
      $HTTP_COOKIE_VARS['adminon'] = 1;
    }
  }
}

Cambia a :

Code: [Select]
/////// Nuevo tipo de usuario ///////
/*
///// Antes
if (defined('ADMIN_SAFE_LOGIN') && ADMIN_SAFE_LOGIN == 1) {
  if ($user_info['user_level'] != GUEST && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
    setcookie("adminon", 1, 0, '/');
    $HTTP_COOKIE_VARS['adminon'] = 1;
  }
  else {
    if ($user_info['user_level'] == GUEST || $user_info['user_level'] == USER || $user_info['user_level'] == USER_AWAITING) {
      $HTTP_COOKIE_VARS['adminon'] = 0;
    }
  }

  if (!isset($HTTP_COOKIE_VARS['adminon']) || $HTTP_COOKIE_VARS['adminon'] == 0) {
    $user_info['user_level'] = GUEST;
  }
  else {
    if ($user_info['user_level'] != GUEST  && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
      setcookie("adminon", 1, 0, '/');
      $HTTP_COOKIE_VARS['adminon'] = 1;
    }
  }
}
*/
///////// Ahora
if ((defined('ADMIN_SAFE_LOGIN') && ADMIN_SAFE_LOGIN == 1) || (defined('MODERADOR_SAFE_LOGIN') && MODERADOR_SAFE_LOGIN == 1)){
  if ($user_info['user_level'] != GUEST && $user_info['user_level'] != MODERADOR && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
    setcookie("adminon", 1, 0, '/');
    $HTTP_COOKIE_VARS['adminon'] = 1;
  }
  else {
    if ($user_info['user_level'] == GUEST || $user_info['user_level'] == MODERADOR || $user_info['user_level'] == USER || $user_info['user_level'] == USER_AWAITING) {
      $HTTP_COOKIE_VARS['adminon'] = 0;
    }
  }
if ($user_info['user_level'] != GUEST && $user_info['user_level'] == MODERADOR && $user_info['user_level'] != ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
    setcookie("moderadoron", 1, 0, '/');
    $HTTP_COOKIE_VARS['moderadoron'] = 1;
  }
  else {
    if ($user_info['user_level'] == GUEST || $user_info['user_level'] == ADMIN || $user_info['user_level'] == USER || $user_info['user_level'] == USER_AWAITING) {
      $HTTP_COOKIE_VARS['moderadoron'] = 0;
    }
  }
  if (!isset($HTTP_COOKIE_VARS['adminon']) || $HTTP_COOKIE_VARS['adminon'] == 0 || !isset($HTTP_COOKIE_VARS['moderadoron']) || $HTTP_COOKIE_VARS['moderadoron'] == 0) {
    $user_info['user_level'] = GUEST;
  }
  else {
    if ($user_info['user_level'] != GUEST  && $user_info['user_level'] != MODERADOR && $user_info['user_level'] == ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
      setcookie("adminon", 1, 0, '/');
      $HTTP_COOKIE_VARS['adminon'] = 1;
    }

else {
    if ($user_info['user_level'] != GUEST  && $user_info['user_level'] == MODERADOR  && $user_info['user_level'] != ADMIN && isset($HTTP_POST_VARS['loginusername'])) {
      setcookie("moderadoron", 1, 0, '/');
      $HTTP_COOKIE_VARS['moderadoron'] = 1;
    }
  }
  }
}
////// Fin nuevo tipo de usuario ///////

Localiza :

Code: [Select]
if ($user_info['user_level'] != ADMIN) {

Cambia a :

Code: [Select]
////// Nuevo tipo de usuario ///////
/*
// Originales
if ($user_info['user_level'] != ADMIN) {
*/
//Modificacion para nuevo tipo de usuario
if ($user_info['user_level'] != ADMIN && $user_info['user_level'] != MODERADOR) {
////// Fin nuevo tipo de usuario ///////

Cerrar y guardar cambios

Localiza en : admin/index.php


Code: [Select]
show_nav_header($lang['nav_categories_main']);
          show_nav_option($lang['nav_categories_edit'], "categories.php?action=modifycats");
          show_nav_option($lang['nav_categories_add'], "categories.php?action=addcat");

          show_nav_header($lang['nav_images_main']);
          show_nav_option($lang['nav_images_edit'], "images.php?action=modifyimages");
          show_nav_option($lang['nav_images_add'], "images.php?action=addimages");
          show_nav_option($lang['nav_images_validate'], "validateimages.php?action=validateimages");
          show_nav_option($lang['nav_images_check'], "checkimages.php?action=checkimages");
          show_nav_option($lang['nav_images_thumbnailer'], "thumbnailer.php?action=checkthumbnails");
          show_nav_option($lang['nav_images_resizer'], "resizer.php?action=selectoptions");

          show_nav_header($lang['nav_comments_main']);
          show_nav_option($lang['nav_comments_edit'], "comments.php?action=modifycomments");

          show_nav_header($lang['nav_users_main']);
          show_nav_option($lang['nav_users_edit'], "users.php?action=modifyusers");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_add'], "users.php?action=addusers");
          }
          show_nav_option($lang['nav_usergroups'], "usergroups.php?action=modifygroups");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_email'], "email.php?action=emailusers");
          }

          show_nav_header($lang['nav_general_main']);
          show_nav_option($lang['nav_general_settings'], "settings.php?action=modifysettings");
          show_nav_option($lang['nav_general_templates'], "templates.php?action=modifytemplates");
          show_nav_option($lang['nav_general_backup'], "backup.php?action=modifybackups");
          show_nav_option($lang['nav_general_stats'], "stats.php?action=resetstats");
show_nav_option("phpinfo()", "phpinfo.php");

          if (@is_dir("plugins")) {
            show_nav_header("PlugIns");
            $handle = @opendir("plugins/");
            while ($file = @readdir($handle)) {
              if (eregi("^\.{1,2}$", $file) || !eregi("\.php$", $file)) {
                continue;
              }
              $plugin_file = file("./plugins/".$file);
              $plugin_file[0] = trim($plugin_file[0]);
              if (preg_match("/PLUGIN_TITLE:([a-zäöüß0-9\-_ ]+)/i", $plugin_file[0], $regs)) {
                show_nav_option(trim($regs[1]), "./plugins/".$file);
              }
              else {
                show_nav_option($file, "./plugins/".$file);
              }
            }

Cambia a :

Code: [Select]
     //// Nuevo tipo de usuario /////////////
          /*
          // ********* Antes ************
          show_nav_header($lang['nav_categories_main']);
          show_nav_option($lang['nav_categories_edit'], "categories.php?action=modifycats");
          show_nav_option($lang['nav_categories_add'], "categories.php?action=addcat");

          show_nav_header($lang['nav_images_main']);
          show_nav_option($lang['nav_images_edit'], "images.php?action=modifyimages");
          show_nav_option($lang['nav_images_add'], "images.php?action=addimages");
          show_nav_option($lang['nav_images_validate'], "validateimages.php?action=validateimages");
          show_nav_option($lang['nav_images_check'], "checkimages.php?action=checkimages");
          show_nav_option($lang['nav_images_thumbnailer'], "thumbnailer.php?action=checkthumbnails");
          show_nav_option($lang['nav_images_resizer'], "resizer.php?action=selectoptions");

          show_nav_header($lang['nav_comments_main']);
          show_nav_option($lang['nav_comments_edit'], "comments.php?action=modifycomments");

          show_nav_header($lang['nav_users_main']);
          show_nav_option($lang['nav_users_edit'], "users.php?action=modifyusers");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_add'], "users.php?action=addusers");
          }
          show_nav_option($lang['nav_usergroups'], "usergroups.php?action=modifygroups");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_email'], "email.php?action=emailusers");
          }

          show_nav_header($lang['nav_general_main']);
          show_nav_option($lang['nav_general_settings'], "settings.php?action=modifysettings");
          show_nav_option($lang['nav_general_templates'], "templates.php?action=modifytemplates");
          show_nav_option($lang['nav_general_backup'], "backup.php?action=modifybackups");
          show_nav_option($lang['nav_general_stats'], "stats.php?action=resetstats");
show_nav_option("phpinfo()", "phpinfo.php");

          if (@is_dir("plugins")) {
            show_nav_header("PlugIns");
            $handle = @opendir("plugins/");
            while ($file = @readdir($handle)) {
              if (eregi("^\.{1,2}$", $file) || !eregi("\.php$", $file)) {
                continue;
              }
              $plugin_file = file("./plugins/".$file);
              $plugin_file[0] = trim($plugin_file[0]);
              if (preg_match("/PLUGIN_TITLE:([a-zäöüß0-9\-_ ]+)/i", $plugin_file[0], $regs)) {
                show_nav_option(trim($regs[1]), "./plugins/".$file);
              }
              else {
                show_nav_option($file, "./plugins/".$file);
              }
            }
          // ********* Ahora ************
          */
          if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_categorias'] == 1)) {
          show_nav_header($lang['nav_categories_main']);
          show_nav_option($lang['nav_categories_edit'], "categories.php?action=modifycats");
          show_nav_option($lang['nav_categories_add'], "categories.php?action=addcat");
          }
          if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_imagenes'] == 1)) {
          show_nav_header($lang['nav_images_main']);
          show_nav_option($lang['nav_images_edit'], "images.php?action=modifyimages");
          show_nav_option($lang['nav_images_add'], "images.php?action=addimages");
          show_nav_option($lang['nav_images_validate'], "validateimages.php?action=validateimages");
          show_nav_option($lang['nav_images_check'], "checkimages.php?action=checkimages");
          show_nav_option($lang['nav_images_thumbnailer'], "thumbnailer.php?action=checkthumbnails");
          show_nav_option($lang['nav_images_resizer'], "resizer.php?action=selectoptions");
          }
          if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_comentarios'] == 1)) {
          show_nav_header($lang['nav_comments_main']);
          show_nav_option($lang['nav_comments_edit'], "comments.php?action=modifycomments");
          }
          if ($user_info['user_level'] == ADMIN || ($user_info['user_level'] == MODERADOR && $user_info['user_moderador_usuarios'] == 1)) {
          show_nav_header($lang['nav_users_main']);
          show_nav_option($lang['nav_users_edit'], "users.php?action=modifyusers");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_add'], "users.php?action=addusers");
          }
          show_nav_option($lang['nav_usergroups'], "usergroups.php?action=modifygroups");
          if (!defined('USER_INTEGRATION')) {
            show_nav_option($lang['nav_users_email'], "email.php?action=emailusers");
          }
          }
          
        
   if ($user_info['user_level'] == ADMIN && $user_info['user_level'] != MODERADOR && $user_info['user_level'] != GUEST) {
          show_nav_header($lang['nav_users_moderadores_main']);
          show_nav_option($lang['nav_users_moderadores_edit'], "users.php?action=findusers&usuario=moderadores");
          show_nav_header($lang['nav_general_main']);
          show_nav_option($lang['nav_general_settings'], "settings.php?action=modifysettings");
          show_nav_option($lang['nav_general_templates'], "templates.php?action=modifytemplates");
          show_nav_option($lang['nav_general_backup'], "backup.php?action=modifybackups");
          show_nav_option($lang['nav_general_stats'], "stats.php?action=resetstats");
   show_nav_option("phpinfo()", "phpinfo.php");

          if (@is_dir("plugins")) {
            show_nav_header("PlugIns");
            $handle = @opendir("plugins/");
            while ($file = @readdir($handle)) {
              if (eregi("^\.{1,2}$", $file) || !eregi("\.php$", $file)) {
                continue;
              }
              $plugin_file = file("./plugins/".$file);
              $plugin_file[0] = trim($plugin_file[0]);
              if (preg_match("/PLUGIN_TITLE:([a-zäöüß0-9\-_ ]+)/i", $plugin_file[0], $regs)) {
                show_nav_option(trim($regs[1]), "./plugins/".$file);
              }
              else {
                show_nav_option($file, "./plugins/".$file);
              }
            }
          }
          ////////// Fin nuevo tipo de usuario //////

Cerrar y guardar cambios

Localiza en : admin/users.php


Code: [Select]
$user_invisible = intval($HTTP_POST_VARS['user_invisible']);
Añade debajo :

Code: [Select]
////// Nuevo tipo de usuario //////
   $user_moderador_categorias = intval($HTTP_POST_VARS['user_moderador_categorias']);
  $user_moderador_imagenes = intval($HTTP_POST_VARS['user_moderador_imagenes']);
  $user_moderador_comentarios = intval($HTTP_POST_VARS['user_moderador_comentarios']);
  $user_moderador_usuarios = intval($HTTP_POST_VARS['user_moderador_usuarios']);
  //// Fin nuevo tipo de usuario ////

Localiza :

Code: [Select]
$sql = "UPDATE ".USERS_TABLE."
            SET ".get_user_table_field("", "user_level")." = $user_level, ".get_user_table_field("", "user_name")." = '$user_name',$passinsert ".get_user_table_field("", "user_email")." = '$user_email', ".get_user_table_field("", "user_showemail")." = $user_showemail, ".get_user_table_field("", "user_allowemails")." = $user_allowemails, ".get_user_table_field("", "user_invisible")." = $user_invisible, ".get_user_table_field("", "user_joindate")." = $user_joindate, ".get_user_table_field("", "user_lastaction")." = $user_lastaction, ".get_user_table_field("", "user_homepage")." = '$user_homepage', ".get_user_table_field("", "user_icq")." = '$user_icq'".$additional_sql."
            WHERE ".get_user_table_field("", "user_id")." = $user_id";
    $result = $site_db->query($sql);

Cambia a :

Code: [Select]
////////// Nuevo tipo de usuario //////
/* **** Antes *******
 $sql = "UPDATE ".USERS_TABLE."
            SET ".get_user_table_field("", "user_level")." = $user_level, ".get_user_table_field("", "user_name")." = '$user_name',$passinsert ".get_user_table_field("", "user_email")." = '$user_email', ".get_user_table_field("", "user_showemail")." = $user_showemail, ".get_user_table_field("", "user_allowemails")." = $user_allowemails, ".get_user_table_field("", "user_invisible")." = $user_invisible, ".get_user_table_field("", "user_joindate")." = $user_joindate, ".get_user_table_field("", "user_lastaction")." = $user_lastaction, ".get_user_table_field("", "user_homepage")." = '$user_homepage', ".get_user_table_field("", "user_icq")." = '$user_icq'".$additional_sql."
            WHERE ".get_user_table_field("", "user_id")." = $user_id";
    $result = $site_db->query($sql);
// ********* Ahora ************
*/
  $sql = "UPDATE ".USERS_TABLE."
            SET ".get_user_table_field("", "user_level")." = $user_level, ".get_user_table_field("", "user_name")." = '$user_name',$passinsert ".get_user_table_field("", "user_email")." = '$user_email', ".get_user_table_field("", "user_showemail")." = $user_showemail, ".get_user_table_field("", "user_allowemails")." = $user_allowemails, ".get_user_table_field("", "user_invisible")." = $user_invisible, ".get_user_table_field("", "user_joindate")." = $user_joindate, ".get_user_table_field("", "user_lastaction")." = $user_lastaction, ".get_user_table_field("", "user_homepage")." = '$user_homepage', ".get_user_table_field("", "user_icq")." = '$user_icq', user_moderador_categorias = '$user_moderador_categorias', user_moderador_imagenes = '$user_moderador_imagenes', user_moderador_comentarios = '$user_moderador_comentarios', user_moderador_usuarios = '$user_moderador_usuarios'".$additional_sql."
            WHERE ".get_user_table_field("", "user_id")." = $user_id";
    $result = $site_db->query($sql);
/////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
show_userlevel_select_row($lang['field_userlevel'], "user_level", $user_row['user_level']);
Cambia a :

Code: [Select]
///// Nuevo tipo de usuario //////
  /* ***** Antes *****
  show_userlevel_select_row($lang['field_userlevel'], "user_level", $user_row['user_level']);
  */
  // ******** Ahora ******
  if ($user_info['user_level'] == ADMIN){
  show_userlevel_select_row($lang['field_userlevel'], "user_level", $user_row['user_level']);
  }
  else {
  show_userlevel_select_row_moderadores($lang['field_userlevel'], "user_level", $user_row['user_level']);
  }
  ////////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
show_date_input_row($lang['field_lastaction'].$lang['date_desc'], "user_lastaction", $user_row['user_lastaction'], $textinput_size);

Añade debajo :

Code: [Select]
///// Nuevo tipo de usuario //////
 if ($user_info['user_level'] == ADMIN && $user_row['user_level'] == MODERADOR){
 show_radio_row($lang['field_moderador_categorias'], "user_moderador_categorias", $user_row['user_moderador_categorias'],1);
 show_radio_row($lang['field_moderador_imagenes'], "user_moderador_imagenes", $user_row['user_moderador_imagenes'], 1);
 show_radio_row($lang['field_moderador_comentarios'], "user_moderador_comentarios", $user_row['user_moderador_comentarios'], 1);
 show_radio_row($lang['field_moderador_usuarios'], "user_moderador_usuarios", $user_row['user_moderador_usuarios'], 1);
 }
////////// Fin nuevo tipo de usuario ///////

Localiza :

Code: [Select]
show_userlevel_select_row($lang['field_userlevel']);
Cambia a :

Code: [Select]
//// Nuevo tipo de usuario //////
   /* ***** Antes *****
  show_userlevel_select_row($lang['field_userlevel']);
  */
  // ******** Ahora ******
  if ($user_info['user_level'] == ADMIN){
  show_userlevel_select_row($lang['field_userlevel']);
  }
  else {
  show_userlevel_select_row_moderadores($lang['field_userlevel']);
  }
   ////////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
$sql = "SELECT COUNT(*) AS users
          FROM ".USERS_TABLE."
          WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST;

Cambia a :

Code: [Select]
//// Nuevo tipo de usuario /////////////
/* ***** Antes *********
 $sql = "SELECT COUNT(*) AS users
          FROM ".USERS_TABLE."
          WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST;
*/
// ***** Ahora ********
if (($user_info['user_level'] == ADMIN) && ($usuario <> "moderadores")) {
 $sql = "SELECT COUNT(*) AS users
          FROM ".USERS_TABLE."
          WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST;
}
else {
if (($user_info['user_level'] == ADMIN) && ($usuario == "moderadores")) {
 $sql = "SELECT COUNT(*) AS users
          FROM ".USERS_TABLE."
          WHERE user_level = 5";
 }
 }
if ($user_info['user_level'] == MODERADOR) {
 $sql = "SELECT COUNT(*) AS users
          FROM ".USERS_TABLE."
          WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST;
 }
////////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
$sql = "SELECT ".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_lastaction")."
            FROM ".USERS_TABLE."
            WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST."
            ORDER BY $orderby $direction
            LIMIT $limitstart, $limitnumber";

Cambia a :

Code: [Select]
//// Nuevo tipo de usuario /////////////
  /* ***** Antes *********
    $sql = "SELECT ".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_lastaction")."
            FROM ".USERS_TABLE."
            WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST."
            ORDER BY $orderby $direction
            LIMIT $limitstart, $limitnumber";
*/
// ***** Ahora *******
if (($user_info['user_level'] == ADMIN) && ($usuario <> "moderadores")) {
    $sql = "SELECT ".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_lastaction")."
            FROM ".USERS_TABLE."
            WHERE $condition AND ".get_user_table_field("", "user_id")." <> ".GUEST."
            ORDER BY $orderby $direction
            LIMIT $limitstart, $limitnumber";
}
else {
if (($user_info['user_level'] == ADMIN) && ($usuario == "moderadores")) {
    $sql = "SELECT ".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_lastaction")."
            FROM ".USERS_TABLE."
            WHERE user_level = 5";
}
}
if ($user_info['user_level'] == MODERADOR) {
    $sql = "SELECT ".get_user_table_field("", "user_id").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_lastaction")."
            FROM ".USERS_TABLE."
            WHERE $condition AND user_level = 1 OR user_level = 2
            ORDER BY $orderby $direction
            LIMIT $limitstart, $limitnumber";
}
////////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
show_text_link($lang['permissions'], "usergroups.php?action=editpermissions&user_id=".$user_row[$user_table_fields['user_id']]);
   show_text_link($lang['nav_usergroups'], "usergroups.php?action=edituser&user_id=".$user_row[$user_table_fields['user_id']]);

Cambia a :

Code: [Select]
//// Nuevo tipo de usuario /////////////
      /* ****** Antes *********
   show_text_link($lang['permissions'], "usergroups.php?action=editpermissions&user_id=".$user_row[$user_table_fields['user_id']]);
   show_text_link($lang['nav_usergroups'], "usergroups.php?action=edituser&user_id=".$user_row[$user_table_fields['user_id']]);
   */
   // ***** Ahora ********
   if ($user_info['user_level'] == ADMIN){
   show_text_link($lang['permissions'], "usergroups.php?action=editpermissions&user_id=".$user_row[$user_table_fields['user_id']]);
   show_text_link($lang['nav_usergroups'], "usergroups.php?action=edituser&user_id=".$user_row[$user_table_fields['user_id']]);
   }
    ////////// Fin nuevo tipo de usuario //////

Localiza :

Code: [Select]
$user_invisible = intval($HTTP_POST_VARS['user_invisible_'.$i]);
Añade debajo :

Code: [Select]
////// Nuevo tipo de usuario //////
  $user_moderador_categorias = intval($HTTP_POST_VARS['user_moderador_categorias_'.$i]);
  $user_moderador_imagenes = intval($HTTP_POST_VARS['user_moderador_imagenes_'.$i]);
  $user_moderador_comentarios = intval($HTTP_POST_VARS['user_moderador_comentarios_'.$i]);
  $user_moderador_usuarios = intval($HTTP_POST_VARS['user_moderador_usuarios_'.$i]);
   ////////// Fin nuevo tipo de usuario ////////

Localiza :

Code: [Select]
show_userlevel_select_row($lang['field_userlevel'], "user_level_".$i);
Cambia a :

Code: [Select]
///// Nuevo tipo de usuario //////
     /* **** Antes *****
    show_userlevel_select_row($lang['field_userlevel'], "user_level_".$i);
    */
    // ******** Ahora ******
    if ($user_info['user_level'] == ADMIN){
    show_userlevel_select_row($lang['field_userlevel'], "user_level_".$i);
    }
    else {
    show_userlevel_select_row_moderadores($lang['field_userlevel'], "user_level_".$i);
    }
     ////////// Fin nuevo tipo de usuario ///////

Cerrar y guardar cambios

Espero que os sirva.

excitex2


5
Saludos,,,

Hace tiempo realicé una serie de pequeños MOD's y publiqué algunos,,, pero se perdieron cuando hackearon el foro,,,

Algunos usuarios me han pedido que publique de nuevo este MOD :

MOD Listado de todas imagénes en un menú desplegable

Paso 1

Nombra este script como listar_imagenes.php y lo subes al directorio raiz de tu galería


Code: [Select]
<?php 
/************************************************************ 
* Listado de todas las imagenes que hay en la base de datos * 
*             ordenadas por arden alfabético                * 
*                MOD creado por excitex2                    * 
*************************************************************/ 

#Confeccionamos formato de las celdas donde situaremos el menú desplegable 
$listado "<tr>"
$listado .= "<td width=\"100%\" align=\"center\" class=\"row2\" height=\"20\">"
$listado .= "<b>Listado de imágenes</b>"
$listado .= "</td></tr><tr><td  class=\"row1\"><br>"

#Creamos el formulario  
$listado .= "<form name=\"listado_de_imagenes\" action=\"details.php\">\n"
$listado .= "<center><select name=\"image_id\" class=\"categoryselect\" onChange=\"submit()\">\n"
$listado .= "<option >Listado de imagenes</option>\n"
$listado .= "<option></option>\n"

#Realizamos lectura en la base de datos ordenandos por orden alfabético sobre el nombre de la imagen 
$sql "SELECT image_id, image_name 
FROM "
.IMAGES_TABLE.
ORDER BY image_name"

$image_result $site_db->query($sql); 
while (
$image_row $site_db->fetch_array($image_result)) { 

#Pasamos valores a las variables 
$nombre_imagen "$image_row[image_name]"
$direccion_imagen "$image_row[image_id]"

#Confeccionamos el menú desplegable 
$listado .= "<option value=\"$direccion_imagen\" class=\"dropdownmarker\">$nombre_imagen</option>\n"


#Cerramos el select y el form 
$listado .= "</select></form></td></tr>"

#Pasamos valores de las variables a la plantilla 
$site_template->register_vars(array( 
"listado" => $listado
)); 
?>
 

Paso 2

Localiza en index.php :

Code: [Select]
require(ROOT_PATH.'includes/sessions.php');

Añade a continuación :
 
Code: [Select]
include(ROOT_PATH.'listar_imagenes.php');


Paso 3

Localiza en ./templates/tus_plantillas/home.html

Code: [Select]
<tr>
                      <td align="center" class="row1">{user_box} </td>
                    </tr>

 

Añade a continuación :

Code: [Select]
<tr>
                      <td align="center" class="row1">{listado} </td>
                    </tr>
 

Este último paso situa el formulario en la parte izquierda,, pero si quieres cambiarlo de sitio,,, pon la etiqueta {listado} donde quieras que aparezca y anulando el paso 3

excitex2

6
Saludos,,,

Son muchos los usuarios que están pidiendo ayuda sobre como insertar nuevos campos en el formularios de registro de sus galerías y naturalmente que los datos que se introduzcan en los nuevos campos también se muestren en el perfil del usuario y en el panel de control de dicho usuarios,,, así como en el panel de control de la galería.

Pongamos por ejemplo que un usuarios quiere introducir 5 nuevos campos : Nombre , Apellidos , Edad ,Teléfono y Ciudad.

Paso 1 :

Abrimos includes/db_field_definitions.php

Insertar antes de ?> :

Code: [Select]
$additional_user_fields['user_nombre'] = array($lang['user_nombre'], "text", 1);
$additional_user_fields['user_apellidos'] = array($lang['user_apellidos'], "text", 1);
$additional_user_fields['user_ciudad'] = array($lang['user_ciudad'], "text", 1);
$additional_user_fields['user_edad'] = array($lang['user_edad'], "text", 1);
$additional_user_fields['user_telefono'] = array($lang['user_telefono'], "text", 1);
Nota : el número 1 que está al final de cada array es para lo siguiente : 1 = obligatorio de rellenar ; 0 = no obligatorio osea vuluntario.
            Por lo tanto como lo hemos puesto a 1,,, todo el que se registre tendrá que rellenar ese campo obligatoriamente.

           para un texto = "Text" ,,, para opciones ejemplo si o no = "radio"

Cerrar y guardar cambios.

Paso 2 :


Abrir lang/tu_idioma/main.php :

Localizar :


Quote
$lang['password'] = "Contraseña:";

Añadir debajo :

Code: [Select]
$lang['user_nombre'] = "Nombre : ";
$lang['user_apellidos'] = "Apellidos : ";
$lang['user_ciudad'] = "Ciudad : ";
$lang['user_edad'] = "Edad";
$lang['user_telefono'] = "Teléfono : ";


Cerrar y guardar cambios

Paso 3 :

Abrir templates/tus_plantillas/register_form.html

Localizar :

Quote
<tr>
            <td class="row1"><b>{lang_user_name}</b></td>
            <td class="row1">
              <input type="text" name="user_name" size="30" value="{user_name}" class="input" />
            </td>
          </tr>

Añadir debajo :

         
Code: [Select]
  <tr>
            <td class="row2"><b>{lang_user_nombre}</b></td>
            <td class="row2">
              <input type="text" name="user_nombre" size="30" value="{user_nombre}" class="input" />
            </td>
          </tr>
          <tr>
            <td class="row1"><b>{lang_user_apellidos}</b></td>
            <td class="row1">
              <input type="text" name="user_apellidos" size="30" value="{user_apellidos}" class="input" />
            </td>
          </tr>
          <tr>
            <td class="row2"><b>{lang_user_ciudad}</b></td>
            <td class="row2">
              <input type="text" name="user_ciudad" size="30" value="{user_ciudad}" class="input" />
            </td>
          </tr>
          <tr>
            <td class="row1"><b>{lang_user_edad}</b></td>
            <td class="row1">
              <input type="text" name="user_edad" size="30" value="{user_edad}" class="input" />
            </td>
          </tr>
          <tr>
            <td class="row2"><b>{lang_user_telefono}</b></td>
            <td class="row2">
              <input type="text" name="user_telefono" size="30" value="{user_telefono}" class="input" />
            </td>
          </tr>

Cerrar y guardar cambios

Paso 4 :

Abrir templates/tus_plantillas/member_profile.html


Localizar :

Quote
<tr>
          <td class="row1"><b>{lang_join_date}</b></td>
          <td class="row1">{user_join_date}</td>
        </tr>

Añadir debajo :

Code: [Select]
<tr>
          <td class="row2"><b>{lang_user_nombre}</b></td>
          <td class="row1">{user_nombre}</td>
        </tr>
<tr>
          <td class="row1"><b>{lang_user_apellidos}</b></td>
          <td class="row1">{user_apellidos}</td>
        </tr>
<tr>
          <td class="row2"><b>{lang_user_ciudad}</b></td>
          <td class="row2">{user_ciudad}</td>
        </tr>
<tr>
          <td class="row1"><b>{lang_user_edad}</b></td>
          <td class="row1">{user_edad}</td>
        </tr>
<tr>
          <td class="row2"><b>{lang_user_telefono}</b></td>
          <td class="row2">{user_telefono}</td>
        </tr>

Cerrar y guardar cambios

Paso 5 :

Abrir templates/tus_plantillas/member_editprofile.html


Localizar :

Quote
<tr>
            <td colspan="2" valign="top" class="head1">{lang_profile_of} {user_name}</td>
          </tr>

Añadir debajo :

Code: [Select]
<tr>
            <td class="row1"><b>{lang_user_nombre}</b></td>
            <td class="row1"><input type="text" name="user_nombre"  size="30" value="{user_nombre}" class="input" /></td>
          </tr>
<tr>
            <td class="row2"><b>{lang_user_apellidose}</b></td>
            <td class="row2"><input type="text" name="user_apellidos"  size="30" value="{user_apellidos}" class="input" /></td>
          </tr>
<tr>
            <td class="row1"><b>{lang_user_ciudad}</b></td>
            <td class="row1"><input type="text" name="user_ciudad"  size="30" value="{user_ciudad}" class="input" /></td>
          </tr>
<tr>
            <td class="row2"><b>{lang_user_edad}</b></td>
            <td class="row2"><input type="text" name="user_edad"  size="30" value="{user_edad}" class="input" /></td>
          </tr>
<tr>
            <td class="row1"><b>{lang_user_telefono}</b></td>
            <td class="row1"><input type="text" name="user_telefono"  size="30" value="{user_telefono}" class="input" /></td>
          </tr>

Cerrar y guardar cambios

Paso 6 :

Abrir member.php


Localizar :

Quote
"user_homepage" => $user_homepage,

Añadir debajo :

Code: [Select]
"user_nombre" => $user_nombre,
"user_apellidos" => $user_apellidos,
"user_ciudad" => $user_ciudad,
"user_edad" => $user_edad,
"user_telefono" => $user_telefono,

Localizar :

Quote
$user_email = (isset($HTTP_POST_VARS['user_email'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_email'])) : "";

Añadir arriba :

Code: [Select]
$user_nombre = (isset($HTTP_POST_VARS['user_nombre'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_nombre'])) : "";
$user_apellidos = (isset($HTTP_POST_VARS['user_apellidos'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_apellidos'])) : "";
$user_ciudad = (isset($HTTP_POST_VARS['user_ciudad'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_ciudad'])) : "";
$user_edad = (isset($HTTP_POST_VARS['user_edad'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_edad'])) : "";
$user_telefono = (isset($HTTP_POST_VARS['user_telefono'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_telefono'])) : "";

Localizar :

Quote
$user_email = $user_info['user_email'];

Añadir arriba :

Code: [Select]
$user_nombre = $user_info['user_nombre'];
$user_apellidos = $user_info['user_apellidos'];
$user_ciudad = $user_info['user_ciudad'];
$user_edad = $user_info['user_edad'];
$user_telefono = $user_info['user_telefono'];

Localizar :

Quote
"user_name" => format_text(stripslashes($user_name), 2),

Añadir debajo :

Code: [Select]
"user_nombre" => format_text(stripslashes($user_nombre), 2),
"user_apellidos" => format_text(stripslashes($user_apellidos), 2),
"user_ciudad" => format_text(stripslashes($user_ciudad), 2),
"user_edad" => format_text(stripslashes($user_edad), 2),
"user_telefono" => format_text(stripslashes($user_telefono), 2),

Cerrar y guardar cambios

Paso 7 :


Y por último se tiene que crear los nuevos campos en la base de datos en la tabla users
los nombre de los campos tienen que ser los siguientes :

nombre del campo : user_nombre ; tipo de campo : varchar ; longitud del campo 255 ; nulo : not null
nombre del campo : user_apellidos ; tipo de campo : varchar ; longitud del campo 255 ; nulo : not null
nombre del campo : user_ciudad ; tipo de campo : varchar ; longitud del campo 255 ; nulo : not null
nombre del campo : user_edad ; tipo de campo : varchar ; longitud del campo 10 ; nulo : not null
nombre del campo : user_telefono ; tipo de campo : varchar ; longitud del campo 15 ; nulo : not null

Si hay alguien que no sabe como instertar dichos campos en la base de datos,,, os dejo este script que lo hace automáticamente :

Copiarlo en el directorio raiz de tu galería,, donde teneis el config.php,,, nombrais el script como instalar_campos.php y lo ejecutais en el navegador que useis :

Code: [Select]
<?php

define
('ROOT_PATH''./');
include(
ROOT_PATH.'global.php');

$mod_name "Insertar nuevos campos en el registro";
$mod_author "excitex2";
$sql_data = array(

            
"ALTER TABLE `".USERS_TABLE."` ADD `user_nombre` varchar(255)  NOT NULL",
            
"ALTER TABLE `".USERS_TABLE."` ADD `user_apellidos` varchar(255) NOT NULL"
            
"ALTER TABLE `".USERS_TABLE."` ADD `user_ciudad` varchar(255)  NOT NULL",
            
"ALTER TABLE `".USERS_TABLE."` ADD `user_edad` varchar(10)  NOT NULL",
            
"ALTER TABLE `".USERS_TABLE."` ADD `user_telefono` varchar(15)  NOT NULL",
);

$error_log = array();
$error_msg "";


if (
$action == "modinstall") {
?>

  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <html>
    <head>
    <meta content="text/html; charset=windows-1252" http-equiv="Content-Type">
    <link rel="stylesheet" href="admin/cpstyle.css">
    <title>4images Installer</title>
  </head>
  <body leftmargin="20" topmargin="20" marginwidth="20" marginheight="20" bgcolor="#FFFFFF">
    <table cellpadding="0" cellspacing="0" border="0" width="500" align="center">
      <tr><td class="tableborder"><img src="admin/images/logo_installer.gif" width="500" height="45"><br />
          <table cellpadding="3" cellspacing="1" border="0" width="100%">
            <tr class="tablerow2"><td><b>MOD: <?php echo $mod_name?></b>&nbsp;&nbsp;&nbsp;&nbsp;(por <?php echo $mod_author?>)</td></tr>
            <tr class="tablefooter"><td align="center">&nbsp;</td></tr>
    </table>
  <table cellpadding="3" cellspacing="1" border="0" width="100%">
    <tr class="tablerow"><td colspan="2" align="right"></td></tr>
    <tr class="tablerow2"><td colspan="2"><br /><blockquote>
<?php
  $date 
time();
  
$exist 0;
  
$row $site_db->query("SHOW tables");
  while (
$r $site_db->fetch_array($row)) {
   
/* if ($r[0] == ENCUESTAS) {
      $exist = 1;
      break;
    } */
  
}
  if (!
$exist) {
    foreach (
$sql_data as $val){
      echo (
$change) ? "" "Ejecución: <br>";
      echo 
str_replace("\n""<br />"$val)."<br /><br />";
    
if (!$site_db->query($val)) {
    
  $error_log[] = str_replace("\n""<br />"$val);
    
}
    }
  }

  if (empty(
$error_log)) {
    if (
$exist) {
      echo 
"<h4>.<br />No se ha realizado ningun cambio.</h4>";
    }else{
      echo 
"</blockquote><h4>Operación realizada con exito!</h4>";
    }
  }else{
    echo 
"<a href=\"".$self_url."\">Intentarlo otra vez</a><br />";
  }
  echo 
"<a href=\"./\">Volver a la galería</a>";
?>


    </blockquote></td></tr>
   <tr class="tablefooter"><td colspan="2">&nbsp;</td></tr>
          </table>
        </td>
      </tr>
    </table>
  </table>
  <p align="center"> Powered by <b>4images</b> <?php echo SCRIPT_VERSION?><br />Copyright &copy; 2002 <a href="http://www.4homepages.de" target="_blank">4homepages.de</a><br /></p>
  </body>
  </html>
<?php
  
exit;
}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta content="text/html; charset=windows-1252" http-equiv="Content-Type">
  <link rel="stylesheet" href="admin/cpstyle.css">
  <title>4images Instalador</title>
</head>
<body leftmargin="20" topmargin="20" marginwidth="20" marginheight="20" bgcolor="#FFFFFF">
<form action="<?php echo $self_url?>" name="form" method="post">

  <table cellpadding="0" cellspacing="0" border="0" width="500" align="center">
    <tr><td class="tableborder"><img src="admin/images/logo_installer.gif" width="500" height="45"><br />
        <table cellpadding="3" cellspacing="1" border="0" width="100%">
          <tr class="tablerow2"><td><b>MOD: <?php echo $mod_name?></b>&nbsp;&nbsp;&nbsp;&nbsp;(por <?php echo $mod_author?>)</td></tr>
          <tr class="tablefooter"><td align="center">&nbsp;</td></tr>
  </table>
<table cellpadding="3" cellspacing="1" border="0" width="100%">
  <tr class="tablerow"><td colspan="2" align="right"></td></tr>
  <tr class="tablerow2"><td colspan="2"><center>
  Esta aplicación modificará la base de datos de tu galería, por favor<br><b>
  <font color="#FF0000">HAZ UNA COPIA DE SEGURIDAD DE LA BASE DE DATOS ANTES DE EJECUTAR ESTA APLICACION!</b></font><br><br>
  Por favor comprueba todos los campos que se muestran abajo.<br>
  Si no corresponden con tus datos, por favor<br><b>NO EJECUTES ESTA APLICACION</b>!
  </center></td></tr>
  <tr class="tableheader"><td colspan="2"><b><span class="tableheader">Configuración de la base de datos </span></b></td></tr>
  <tr class="tablerow"><td>Tipo de servidor de la base de datos</td><td><?php echo $db_servertype?></td></tr>
  <tr class="tablerow2"><td>Nombre del servidor donde está instalada la base de datos</td><td><?php echo stripslashes($db_host); ?></td></tr>
  <tr class="tablerow"><td>Nombre de la base de datos</td><td><?php echo stripslashes($db_name); ?></td></tr>
  <tr class="tablerow2"><td>Prefijo de la TABLA en la base de datos</td><td><?php echo stripslashes($table_prefix); ?></td></tr>
  <tr class="tablefooter"><td colspan="2"><center><input type="hidden" name="action" value="modinstall"><input type="submit" value="Iniciar aplicación" class="button" name="submit"></center></td></tr>
        </table>
      </td>
    </tr>
  </table>
</form>
<p align="center"> Powered by <b>4images</b> <?php echo SCRIPT_VERSION ?><br />Copyright &copy; 2006 <a href="http://www.4homepages.de" target="_blank">4homepages.de</a><br /></p>
</body>
</html>

Bueno y eso es todo,,, no lo he probado,, por lo tanto es posible que haya algun error,, si es así,, lo poneis que lo corregiremos.

Estos datos que se insertan en el registro,, es posible sacarlos tambien en los comentarios y en los datos de la imagen,, pero eso es otra historia al registro.

excitex2

7
Saludos,,,

Aquí os dejo prácticamente todos los tipos de MIME que se pueden aplicar a la galería en upload_definitions para poder trabajar con los diferentes tipos de ficheros :

Como no cabe en un solo post os lo pongo en dos partes -- una en cada post

1ª parte

Code: [Select]
$mime_type_match['123'] = array("application/vnd.lotus-1-2-3", "application/lotus");
$mime_type_match['3dmf'] = array("x-world/x-3dmf");
$mime_type_match['3dml'] = array("text/vnd.in3d.3dml", "model/vnd.flatland.3dml", "text/vnd.in3d.3dml");
$mime_type_match['3gp'] = array("video/3gpp", "audio/3gpp");
$mime_type_match['a'] = array("application/octet-stream");
$mime_type_match['aab'] = array("application/x-authorware-bin");
$mime_type_match['aam'] = array("application/x-authorware-map");
$mime_type_match['aas'] = array("application/x-authorware-seg");
$mime_type_match['abc'] = array("text/vnd.abc");
$mime_type_match['acc'] = array("chemical/x-synopsys-accord");
$mime_type_match['acgi'] = array("text/html");
$mime_type_match['acu'] = array("application/vnd.acucobol");
$mime_type_match['aep'] = array("application/vnd.audiograph");
$mime_type_match['afl'] = array("video/animaflex");
$mime_type_match['afp'] = array("application/vnd.ibm.modcap");
$mime_type_match['ai'] = array("application/postscript");
$mime_type_match['aif'] = array("audio/aiff", "audio/x-aiff");
$mime_type_match['aifc'] = array("audio/x-aiff", "audio/aiff");
$mime_type_match['aiff'] = array("audio/x-aiff", "audio/aiff");
$mime_type_match['aim'] = array("application/x-aim");
$mime_type_match['aip'] = array("text/x-audiosoft-intra");
$mime_type_match['ani'] = array("application/x-navi-animation");
$mime_type_match['ano'] = array("application/x-annotator");
$mime_type_match['aos'] = array("application/x-nokia-9000-communicator-add-on-software");
$mime_type_match['apm'] = array("application/studiom");
$mime_type_match['apr'] = array("application/vnd.lotus-approach");
$mime_type_match['aps'] = array("application/mime");
$mime_type_match['arc'] = array("application/octet-stream");
$mime_type_match['arj'] = array("application/arj", "application/octet-stream");
$mime_type_match['art'] = array("image/x-jg");
$mime_type_match['asc'] = array("text/plain");
$mime_type_match['asd'] = array("application/astound");
$mime_type_match['asf'] = array("application/vnd.ms-asf", "video/x-ms-asf");
$mime_type_match['asm'] = array("text/x-asm");
$mime_type_match['asn'] = array("application/astound");
$mime_type_match['aso'] = array("application/vnd.accpac.simply.aso");
$mime_type_match['asp'] = array("application/x-asap", "text/asp");
$mime_type_match['asx'] = array("application/x-mplayer2", "video/x-ms-asf", "video/x-ms-asf-plugin");
$mime_type_match['au'] = array("audio/basic", "audio/x-au");
$mime_type_match['avb'] = array("application/octet-stream");
$mime_type_match['avi'] = array("video/quicktime", "application/x-troff-msvideo", "video/avi", "video/msvideo", "video/x-msvideo");
$mime_type_match['avs'] = array("video/avs-video");
$mime_type_match['avx'] = array("video/x-rad-screenplay");
$mime_type_match['bcpio'] = array("application/x-bcpio");
$mime_type_match['bh2'] = array("application/vnd.fujitsu.oasysprs");
$mime_type_match['bin'] = array("application/mac-binary", "application/macbinary", "application/octet-stream", "application/x-binary", "application/x-macbinary");
$mime_type_match['bld'] = array("application/bld");
$mime_type_match['bld2'] = array("application/bld2");
$mime_type_match['bm'] = array("image/bmp");
$mime_type_match['bmi'] = array("application/vnd.bmi");
$mime_type_match['bmp'] = array("image/bitmap", "image/bmp", "image/x-bmp", "image/x-windows-bmp");
$mime_type_match['boo'] = array("application/book");
$mime_type_match['book'] = array("application/book");
$mime_type_match['box'] = array("application/vnd.previewsystems.box");
$mime_type_match['boz'] = array("application/x-bzip2");
$mime_type_match['bpk'] = array("application/octet-stream");
$mime_type_match['bsh'] = array("application/x-bsh");
$mime_type_match['btf'] = array("image/prs.btif");
$mime_type_match['btif'] = array("image/prs.btif");
$mime_type_match['bz'] = array("application/x-bzip");
$mime_type_match['bz2'] = array("application/x-bzip2");
$mime_type_match['c'] = array("text/x-c", "text/plain");
$mime_type_match['c++'] = array("text/plain");
$mime_type_match['cal'] = array("image/x-cals");
$mime_type_match['cat'] = array("application/vnd.ms-pki.seccat");
$mime_type_match['cc'] = array("text/plain", "text/x-c");
$mime_type_match['ccad'] = array("application/clariscad");
$mime_type_match['ccn'] = array("application/x-cnc");
$mime_type_match['cco'] = array("application/x-cocoa");
$mime_type_match['cdf'] = array("application/cdf", "application/x-netcdf", "application/x-cdf");
$mime_type_match['cdkey'] = array("application/vnd.mediastation.cdkey");
$mime_type_match['cdx'] = array("chemical/x-cdx", "chemical/x-chem3d");
$mime_type_match['cer'] = array("application/pkix-cert", "application/x-x509-ca-cert");
$mime_type_match['cgi'] = array("magnus-internal/cgi");
$mime_type_match['cgm'] = array("image/cgm");
$mime_type_match['cha'] = array("application/x-chat");
$mime_type_match['chat'] = array("application/x-chat");
$mime_type_match['chm'] = array("chemical/x-chemdraw", "chemical/x-cs-chemdraw");
$mime_type_match['cif'] = array("chemical/x-cif");
$mime_type_match['cii'] = array("application/vnd.anser-web-certificate-issue-initiation");
$mime_type_match['cla'] = array("application/vnd.claymore");
$mime_type_match['class'] = array("application/java", "application/java-byte-code", "application/octet-stream", "application/x-java-class", "application/x-java.vm");
$mime_type_match['clp'] = array("application/x-msclip");
$mime_type_match['cmc'] = array("application/vnd.cosmocaller");
$mime_type_match['cmdf'] = array("chemical/x-cmdf");
$mime_type_match['cml'] = array("chemical/x-cml");
$mime_type_match['cmp'] = array("application/vnd.yellowriver-custom-menu");
$mime_type_match['cmx'] = array("application/x-cmx", "image/x-cmx");
$mime_type_match['cod'] = array("image/cis-cod");
$mime_type_match['com'] = array("text/plain", "application/octet-stream");
$mime_type_match['conf'] = array("text/plain");
$mime_type_match['config'] = array("application/x-ns-proxy-autoconfig");
$mime_type_match['cpio'] = array("application/x-cpio");
$mime_type_match['cpp'] = array("text/x-c");
$mime_type_match['cpt'] = array("application/mac-compactpro", "application/x-compactpro", "application/x-cpt");
$mime_type_match['crd'] = array("application/x-mscardfile");
$mime_type_match['crl'] = array("application/pkix-crl", "application/pkcs-crl");
$mime_type_match['crt'] = array("application/pkix-cert", "application/x-x509-ca-cert", "application/x-x509-user-cert");
$mime_type_match['csh'] = array("application/x-csh", "text/x-script.csh");
$mime_type_match['csm'] = array("chemical/x-csml");
$mime_type_match['csml'] = array("chemical/x-csml");
$mime_type_match['csp'] = array("application/vnd.commonspace");
$mime_type_match['css'] = array("text/css", "application/x-pointplus");
$mime_type_match['cst'] = array("application/vnd.commonspace");
$mime_type_match['cub'] = array("chemical/x-gaussian-cube");
$mime_type_match['curl'] = array("text/vnd.curl");
$mime_type_match['cw'] = array("application/prs.cww");
$mime_type_match['cww'] = array("application/prs.cww");
$mime_type_match['cxx'] = array("text/plain");
$mime_type_match['daf'] = array("application/vnd.Mobius.DAF");
$mime_type_match['dcm'] = array("x-lml/x-evm");
$mime_type_match['dcr'] = array("application/x-director");
$mime_type_match['dcx'] = array("image/x-dcx");
$mime_type_match['ddd'] = array("application/vnd.fujixerox.ddd");
$mime_type_match['deepv'] = array("application/x-deepv");
$mime_type_match['def'] = array("text/plain");
$mime_type_match['der'] = array("application/pkix-cert", "application/x-x509-ca-cert");
$mime_type_match['dib'] = array("image/bmp");
$mime_type_match['dic'] = array("text/plain");
$mime_type_match['dif'] = array("video/x-dv");
$mime_type_match['dir'] = array("application/x-director");
$mime_type_match['dis'] = array("application/vnd.Mobius.DIS");
$mime_type_match['dl'] = array("video/dl", "video/x-dl");
$mime_type_match['dll'] = array("application/x-msdownload");
$mime_type_match['dms'] = array("application/octet-stream");
$mime_type_match['dna'] = array("application/vnd.dna");
$mime_type_match['doc'] = array("application/msword");
$mime_type_match['dor'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['dot'] = array("application/msword", "application/x-dot");
$mime_type_match['dp'] = array("application/commonground");
$mime_type_match['dpg'] = array("application/vnd.dpgraph");
$mime_type_match['dpgraph'] = array("application/vnd.dpgraph");
$mime_type_match['drw'] = array("application/drafting");
$mime_type_match['dsc'] = array("text/prs.lines.tag");
$mime_type_match['dtd'] = array("application/xml", "text/xml");
$mime_type_match['dump'] = array("application/octet-stream");
$mime_type_match['dv'] = array("video/x-dv");
$mime_type_match['dvi'] = array("application/x-dvi");
$mime_type_match['dwf'] = array("model/vnd.dwf", "drawing/x-dwf", "drawing/x-dwf");
$mime_type_match['dwg'] = array("image/vnd.dwg", "application/acad", "application/autocad", "image/vnd", "image/x-dwg");
$mime_type_match['dx'] = array("chemical/x-jcamp-dx");
$mime_type_match['dxf'] = array("image/vnd.dxf", "application/dxf", "image/x-dwg", "image/x-dxf");
$mime_type_match['dxr'] = array("application/vnd.dxr", "application/x-director");
$mime_type_match['ebk'] = array("application/x-expandedbook");
$mime_type_match['ecelp4800'] = array("audio/vnd.nuera.ecelp4800");
$mime_type_match['ecelp7470'] = array("audio/vnd.nuera.ecelp7470");
$mime_type_match['edm'] = array("application/vnd.novadigm.EDM");
$mime_type_match['edx'] = array("application/vnd.novadigm.EDX");
$mime_type_match['ei6'] = array("application/vnd.pg.osasli");
$mime_type_match['el'] = array("text/x-script.elisp");
$mime_type_match['elc'] = array("application/x-bytecode.elisp", "application/x-elc");
$mime_type_match['emb'] = array("chemical/x-embl-dl-nucleotide");
$mime_type_match['embl'] = array("chemical/x-embl-dl-nucleotide");
$mime_type_match['eml'] = array("message/rfc822");
$mime_type_match['enc'] = array("video/mpeg");
$mime_type_match['env'] = array("application/x-envoy");
$mime_type_match['eol'] = array("audio/vnd.digital-winds");
$mime_type_match['epb'] = array("application/x-epublisher");
$mime_type_match['eps'] = array("application/postscript");
$mime_type_match['es'] = array("application/x-esrehber", "audio/echospeech");
$mime_type_match['esl'] = array("audio/echospeech");
$mime_type_match['etc'] = array("application/x-earthtime");
$mime_type_match['etx'] = array("text/x-setext");
$mime_type_match['evm'] = array("x-lml/x-evm");
$mime_type_match['evy'] = array("application/envoy", "application/x-envoy");
$mime_type_match['exc'] = array("text/plain");
$mime_type_match['exe'] = array("application/octet-stream", "application/x-msdownload");
$mime_type_match['ext'] = array("application/vnd.novadigm.EXT");
$mime_type_match['ez'] = array("application/andrew-inset");
$mime_type_match['f'] = array("text/plain", "text/x-fortran");
$mime_type_match['f77'] = array("text/x-fortran");
$mime_type_match['f90'] = array("text/plain", "text/x-fortran");
$mime_type_match['faxmgr'] = array("application/x-fax-manager");
$mime_type_match['faxmgrjob'] = array("application/x-fax-manager-job");
$mime_type_match['fbs'] = array("image/vnd.fastbidsheet");
$mime_type_match['fdf'] = array("application/vnd.fdf");
$mime_type_match['fdml'] = array("text/html");
$mime_type_match['fg5'] = array("application/vnd.fujitsu.oasysgp");
$mime_type_match['fgd'] = array("application/x-director");
$mime_type_match['fh'] = array("image/x-freehand");
$mime_type_match['fh4'] = array("image/x-freehand");
$mime_type_match['fh5'] = array("image/x-freehand");
$mime_type_match['fh7'] = array("image/x-freehand");
$mime_type_match['fhc'] = array("image/x-freehand");
$mime_type_match['fif'] = array("application/fractals", "image/fif");
$mime_type_match['fli'] = array("video/fli", "video/x-fli");
$mime_type_match['flo'] = array("image/florian");
$mime_type_match['flv'] = array("application/x-shockwave-flash", "application/octet-stream", "video/flv");
$mime_type_match['flx'] = array("text/vnd.fmi.flexstor", "text/html");
$mime_type_match['fly'] = array("text/vnd.fly");
$mime_type_match['fm'] = array("application/x-framemaker", "application/x-maker");
$mime_type_match['fmf'] = array("video/x-atomic3d-feature");
$mime_type_match['fml'] = array("application/file-mirror-list", "application/x-file-mirror-list");
$mime_type_match['for'] = array("text/plain", "text/x-fortran");
$mime_type_match['fp5'] = array("application/filemaker5");
$mime_type_match['fpx'] = array("application/vnd.netfpx", "image/vnd.fpx", "image/vnd.net-fpx", "image/x-fpx");
$mime_type_match['frame'] = array("application/x-framemaker");
$mime_type_match['frl'] = array("application/freeloader");
$mime_type_match['frm'] = array("application/vnd.ufdl", "application/vnd.xfdl", "application/x-framemaker");
$mime_type_match['fst'] = array("image/vnd.fst");
$mime_type_match['fti'] = array("application/vnd.anser-web-funds-transfer-initiation");
$mime_type_match['funk'] = array("audio/make");
$mime_type_match['fvi'] = array("video/isivideo");
$mime_type_match['fvt'] = array("video/vnd.fvt");
$mime_type_match['g'] = array("text/plain");
$mime_type_match['g3'] = array("image/g3fax");
$mime_type_match['gac'] = array("application/vnd.groove-account");
$mime_type_match['gau'] = array("chemical/x-gaussian-input");
$mime_type_match['gdb'] = array("x-lml/x-gdb");
$mime_type_match['gdl'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['gif'] = array("image/gif");
$mime_type_match['gim'] = array("application/vnd.groove-identity-message");
$mime_type_match['gl'] = array("video/gl", "video/x-gl");
$mime_type_match['gph'] = array("application/vnd.FloGraphIt");
$mime_type_match['gps'] = array("application/x-gps");
$mime_type_match['gqf'] = array("application/vnd.grafeq");
$mime_type_match['gqs'] = array("application/vnd.grafeq");
$mime_type_match['grv'] = array("application/vnd.groove-injector");
$mime_type_match['gsd'] = array("audio/x-gsm");
$mime_type_match['gsm'] = array("model/vnd.gdl", "model/vnd.gs.gdl", "audio/x-gsm");
$mime_type_match['gsp'] = array("application/x-gsp");
$mime_type_match['gss'] = array("application/x-gss");
$mime_type_match['gtar'] = array("application/x-gtar");
$mime_type_match['gtm'] = array("application/vnd.froove-tool-message", "application/vnd.groove-tool-message");
$mime_type_match['gtp'] = array("application/bsi-gtp");
$mime_type_match['gtw'] = array("model/vnd.gtw");
$mime_type_match['gz'] = array("application/x-compressed", "application/x-gzip");
$mime_type_match['gzip'] = array("application/x-gzip", "multipart/x-gzip");
$mime_type_match['h'] = array("text/plain", "text/x-h");
$mime_type_match['hdf'] = array("application/x-hdf");
$mime_type_match['hdml'] = array("text/x-hdml");
$mime_type_match['help'] = array("application/x-helpfile");
$mime_type_match['hgl'] = array("application/vnd.hp-HPGL");
$mime_type_match['hh'] = array("text/plain", "text/x-h");
$mime_type_match['hlb'] = array("text/x-script");
$mime_type_match['hlp'] = array("application/hlp", "application/winhlp", "application/x-helpfile", "application/x-winhelp");
$mime_type_match['hpg'] = array("application/vnd.hp-HPGL");
$mime_type_match['hpgl'] = array("application/vnd.hp-HPGL");
$mime_type_match['hpi'] = array("application/vnd.hp-hpid");
$mime_type_match['hpid'] = array("application/vnd.hp-hpid");
$mime_type_match['hps'] = array("application/vnd.hp-hps");
$mime_type_match['hqx'] = array("application/mac-binhex40", "application/binhex", "application/binhex4", "application/mac-binhex", "application/x-binhex40", "application/x-mac-binhex40");
$mime_type_match['hta'] = array("application/hta");
$mime_type_match['htc'] = array("text/x-component");
$mime_type_match['htm'] = array("text/html");
$mime_type_match['html'] = array("text/html");
$mime_type_match['htmls'] = array("text/html");
$mime_type_match['htt'] = array("text/webviewhtml");
$mime_type_match['htx'] = array("text/html");
$mime_type_match['ic0'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic1'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic2'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic3'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic4'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic5'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic6'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic7'] = array("application/vnd.commerce-battelle");
$mime_type_match['ic8'] = array("application/vnd.commerce-battelle");
$mime_type_match['ica'] = array("application/vnd.commerce-battelle");
$mime_type_match['icc'] = array("application/vnd.commerce-battelle");
$mime_type_match['icd'] = array("application/vnd.commerce-battelle");
$mime_type_match['ice'] = array("x-conference/x-cooltalk");
$mime_type_match['icf'] = array("application/vnd.commerce-battelle");
$mime_type_match['ico'] = array("image/x-icon");
$mime_type_match['idc'] = array("text/plain");
$mime_type_match['ief'] = array("image/ief");
$mime_type_match['iefs'] = array("image/ief");
$mime_type_match['ifm'] = array("application/vnd.shana.informed.formdata");
$mime_type_match['ifs'] = array("image/ifs");
$mime_type_match['iges'] = array("model/iges", "application/iges");
$mime_type_match['igs'] = array("model/iges", "application/iges");
$mime_type_match['iif'] = array("application/vnd.shana.informed.interchange");
$mime_type_match['iii'] = array("application/x-iphone");
$mime_type_match['ima'] = array("application/x-ima");
$mime_type_match['imap'] = array("application/x-httpd-imap");
$mime_type_match['imd'] = array("application/immedia");
$mime_type_match['imp'] = array("application/vnd.accpac.simply.imp");
$mime_type_match['ims'] = array("application/immedia");
$mime_type_match['inf'] = array("application/inf");
$mime_type_match['ins'] = array("application/x-NET-Install", "application/x-insight", "application/x-internet-signup");
$mime_type_match['insight'] = array("application/x-insight");
$mime_type_match['inst'] = array("application/x-install");
$mime_type_match['ip'] = array("application/x-ip2");
$mime_type_match['ipk'] = array("application/vnd.shana.informed.package");
$mime_type_match['ips'] = array("application/x-ipscript");
$mime_type_match['ipx'] = array("application/x-ipix");
$mime_type_match['ism'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['isp'] = array("application/x-internet-signup");
$mime_type_match['ist'] = array("chemical/x-isostar");
$mime_type_match['istr'] = array("chemical/x-isostar");
$mime_type_match['isu'] = array("video/x-isvideo");
$mime_type_match['it'] = array("audio/it", "audio/x-mod");
$mime_type_match['itp'] = array("application/vnd.shana.informed.formtemp");
$mime_type_match['itz'] = array("audio/x-mod");
$mime_type_match['iv'] = array("application/x-inventor");
$mime_type_match['ivf'] = array("video/x-ivf");
$mime_type_match['ivr'] = array("i-world/i-vrml");
$mime_type_match['ivy'] = array("application/x-livescreen");
$mime_type_match['jad'] = array("text/vnd.sun.j2me.app-descriptor");
$mime_type_match['jam'] = array("audio/x-jam");
$mime_type_match['jar'] = array("application/java-archive", "application/x-java-archive");
$mime_type_match['jav'] = array("text/plain", "text/x-java-source");
$mime_type_match['java'] = array("text/plain", "text/x-java-source");
$mime_type_match['jcm'] = array("application/x-java-commerce");
$mime_type_match['jdx'] = array("chemical/x-jcamp-dx");
$mime_type_match['jfif'] = array("image/jpeg", "image/pjpeg");
$mime_type_match['jfif-tbnl'] = array("image/jpeg");
$mime_type_match['jpe'] = array("image/jpeg", "image/pjpeg");
$mime_type_match['jpeg'] = array("image/jpeg", "image/pjpeg");
$mime_type_match['jpg'] = array("image/jpeg", "image/pjpeg");
$mime_type_match['jps'] = array("image/x-jps");
$mime_type_match['js'] = array("application/x-javascript", "application/x-ns-proxy-autoconfig");
$mime_type_match['jut'] = array("image/jutvision");
$mime_type_match['jvs'] = array("application/x-ns-proxy-autoconfig");
$mime_type_match['jwc'] = array("application/jwc");
$mime_type_match['kar'] = array("audio/midi", "music/x-karaoke");
$mime_type_match['kin'] = array("chemical/x-kinemage");
$mime_type_match['ksh'] = array("application/x-ksh", "text/x-script.ksh");
$mime_type_match['la'] = array("audio/nspaudio", "audio/x-nspaudio");
$mime_type_match['lak'] = array("x-lml/x-lak");
$mime_type_match['lam'] = array("audio/x-liveaudio");
$mime_type_match['latex'] = array("application/x-latex");
$mime_type_match['lcc'] = array("application/fastman");
$mime_type_match['lcl'] = array("application/x-digitalloca");
$mime_type_match['lcr'] = array("application/x-digitalloca");
$mime_type_match['lgh'] = array("application/lgh");
$mime_type_match['lha'] = array("application/lha", "application/octet-stream", "application/x-lha");
$mime_type_match['lhx'] = array("application/octet-stream");
$mime_type_match['lic'] = array("application/x-enterlicense");
$mime_type_match['licmgr'] = array("application/x-licensemgr");
$mime_type_match['list'] = array("text/plain");
$mime_type_match['list3820'] = array("application/vnd.ibm.modcap");
$mime_type_match['listafp'] = array("application/vnd.ibm.modcap");
$mime_type_match['lma'] = array("audio/nspaudio", "audio/x-nspaudio");
$mime_type_match['lml'] = array("x-lml/x-lml");
$mime_type_match['lmlpack'] = array("x-lml/x-lmlpack");
$mime_type_match['lmp'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['log'] = array("text/plain");
$mime_type_match['lsf'] = array("video/x-la-asf", "video/x-ms-asf");
$mime_type_match['lsp'] = array("application/x-lisp", "text/x-script.lisp");
$mime_type_match['lst'] = array("text/plain");
$mime_type_match['lsx'] = array("text/x-la-asf", "video/x-la-asf", "video/x-ms-asf");
$mime_type_match['ltx'] = array("application/x-latex");
$mime_type_match['lvp'] = array("audio/vnd.lucent.voice");
$mime_type_match['lwp'] = array("application/vnd.lotus-wordpro");
$mime_type_match['lzh'] = array("application/octet-stream", "application/x-lzh");
$mime_type_match['lzx'] = array("application/lzx", "application/octet-stream", "application/x-lzx");
$mime_type_match['m'] = array("text/plain", "text/x-m");
$mime_type_match['m13'] = array("application/x-msmediaview");
$mime_type_match['m14'] = array("application/x-msmediaview");
$mime_type_match['m1v'] = array("video/mpeg");
$mime_type_match['m2a'] = array("audio/mpeg");
$mime_type_match['m2v'] = array("video/mpeg");
$mime_type_match['m3a'] = array("audio/mpeg");
$mime_type_match['m3u'] = array("audio/mpegurl", "audio/x-mpegurl", "audio/x-mpequrl", "audio/x-scpls", "uadio/scpls");
$mime_type_match['ma'] = array("application/mathematica-old", "application/mathematica");
$mime_type_match['mag'] = array("application/vnd.ecowin.chart");
$mime_type_match['mail'] = array("application/x-mailfolder");
$mime_type_match['maker'] = array("application/x-framemaker");
$mime_type_match['man'] = array("application/x-troff-man");
$mime_type_match['map'] = array("application/x-navimap", "magnus-internal/imagemap");
$mime_type_match['mar'] = array("text/plain");
$mime_type_match['mb'] = array("application/mathematica-old", "application/mathematica");
$mime_type_match['mbd'] = array("application/mbedlet");
$mime_type_match['mbm'] = array("image/x-epoc-mbm");
$mime_type_match['mc$'] = array("application/x-magic-cap-package-1.0");
$mime_type_match['mcd'] = array("application/vnd.mcd", "application/vnd.vectorworks", "application/mcad", "application/x-mathcad");
$mime_type_match['mcf'] = array("image/vasa", "text/mcf");
$mime_type_match['mcm'] = array("chemical/x-macmolecule");
$mime_type_match['mcp'] = array("application/netmc");
$mime_type_match['mct'] = array("application/x-mascot");
$mime_type_match['mdb'] = array("application/msaccess", "application/x-msaccess");
$mime_type_match['mdz'] = array("audio/x-mod");
$mime_type_match['me'] = array("application/x-troff-me");
$mime_type_match['med'] = array("application/x-att-a2bmusic-pu");
$mime_type_match['mes'] = array("application/x-att-a2bmusic");
$mime_type_match['mesh'] = array("model/mesh");
$mime_type_match['mht'] = array("message/rfc822");
$mime_type_match['mhtml'] = array("message/rfc822");
$mime_type_match['mi'] = array("application/x-mif");
$mime_type_match['mid'] = array("application/x-midi", "audio/mid", "audio/midi", "audio/x-mid", "audio/x-midi", "music/crescendo", "x-music/x-midi");
$mime_type_match['midi'] = array("application/x-midi", "audio/midi", "audio/x-mid", "audio/x-midi", "music/crescendo", "x-music/x-midi");
$mime_type_match['mif'] = array("application/vnd.mif", "application/x-frame", "application/x-mif");
$mime_type_match['mil'] = array("image/x-cals");
$mime_type_match['mime'] = array("message/rfc822", "www/mime");
$mime_type_match['mio'] = array("audio/x-mio");
$mime_type_match['mjf'] = array("audio/x-vnd.AudioExplosion.MjuiceMediaFile");
$mime_type_match['mjpg'] = array("video/x-motion-jpeg");
$mime_type_match['ml5'] = array("application/ml5");
$mime_type_match['mm'] = array("application/base64", "application/x-meme");
$mime_type_match['mmd'] = array("chemical/x-macromodel", "chemical/x-macromodel-input");
$mime_type_match['mme'] = array("application/base64");
$mime_type_match['mmod'] = array("chemical/x-macromodel-input");
$mime_type_match['mmr'] = array("image/vnd.fujixerox.edmics-mmr");
$mime_type_match['mng'] = array("video/x-mng");
$mime_type_match['mny'] = array("application/x-msmoney");
$mime_type_match['moc'] = array("application/x-mocha");
$mime_type_match['mocha'] = array("application/x-mocha");
$mime_type_match['mod'] = array("audio/mod", "audio/x-mod");
$mime_type_match['mof'] = array("application/x-yumekara");
$mime_type_match['mol'] = array("chemical/x-mdl-molfile", "chemical/x-mdl-molfile");
$mime_type_match['moov'] = array("video/quicktime");
$mime_type_match['mop'] = array("chemical/x-mopac-input");
$mime_type_match['mov'] = array("video/quicktime");
$mime_type_match['movie'] = array("video/x-sgi-movie");
$mime_type_match['mp2'] = array("video/mpeg", "audio/mpeg", "audio/x-mpeg", "video/x-mpeg", "video/x-mpeg2a");
$mime_type_match['mp2a'] = array("audio/x-mpeg2");
$mime_type_match['mp2v'] = array("video/x-mpeg2");
$mime_type_match['mp3'] = array("video/mpeg", "audio/mp3", "audio/mpeg", "audio/mpeg3", "audio/mpg", "audio/x-mpeg", "audio/x-mpeg-3", "video/x-mpeg");
$mime_type_match['mp3url'] = array("audio/x-mpegurl");
$mime_type_match['mpa'] = array("video/mpeg", "audio/mpeg");
$mime_type_match['mpa2'] = array("audio/x-mpeg2");
$mime_type_match['mpc'] = array("application/x-project");
$mime_type_match['mpd'] = array("application/vnd.ms-project");
$mime_type_match['mpe'] = array("video/mpeg");
$mime_type_match['mpeg'] = array("video/mpeg");
$mime_type_match['mpf'] = array("text/vnd.ms-mediapackage", "text/vnd-mediapackage");
$mime_type_match['mpg'] = array("video/mpegaudio/mpeg");
$mime_type_match['mpga'] = array("audio/mpeg");
$mime_type_match['mpp'] = array("application/vnd.ms-project");
$mime_type_match['mps'] = array("application/x-mapserver", "video/x-mpeg-system");
$mime_type_match['mpt'] = array("application/vnd.ms-project", "application/x-project");
$mime_type_match['mpv'] = array("application/x-project", "video/mpeg");
$mime_type_match['mpv2'] = array("video/mpeg", "video/x-mpeg2");
$mime_type_match['mpx'] = array("application/x-project");
$mime_type_match['mpy'] = array("application/vnd.ibm.MiniPay");
$mime_type_match['mrc'] = array("application/marc");
$mime_type_match['mrl'] = array("text/x-mrml");
$mime_type_match['ms'] = array("application/x-troff-ms");
$mime_type_match['msf'] = array("application/vnd.epson.msf");
$mime_type_match['msh'] = array("model/mesh");
$mime_type_match['msl'] = array("application/vnd.Mobius.MSL");
$mime_type_match['msm'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['mss'] = array("audio/mss");
$mime_type_match['msv'] = array("application/x-mystars-view");
$mime_type_match['mts'] = array("model/vnd.mts", "application/metastream");
$mime_type_match['mus'] = array("application/vnd.musician");
$mime_type_match['mv'] = array("video/x-sgi-movie");
$mime_type_match['mwc'] = array("application/vnd.dpgraph");
$mime_type_match['mxs'] = array("application/vnd.triscape.mxs");
$mime_type_match['my'] = array("audio/make");
$mime_type_match['mzz'] = array("application/x-vnd.AudioExplosion.mzz");
$mime_type_match['nap'] = array("image/naplps");
$mime_type_match['naplps'] = array("image/naplps");
$mime_type_match['nb'] = array("application/mathematica");
$mime_type_match['nc'] = array("application/x-netcdf");
$mime_type_match['nclk'] = array("text/html");
$mime_type_match['ncm'] = array("application/vnd.nokia.configuration-message");
$mime_type_match['ndb'] = array("x-lml/x-ndb");
$mime_type_match['ndl'] = array("application/vnd.lotus-notes");
$mime_type_match['nif'] = array("application/x-nif", "image/x-niff");
$mime_type_match['niff'] = array("image/x-niff");
$mime_type_match['nix'] = array("application/x-mix-transfer");
$mime_type_match['nls'] = array("text/nls");
$mime_type_match['nml'] = array("application/vnd.enliven");
$mime_type_match['nmz'] = array("application/x-scream");
$mime_type_match['nnd'] = array("application/vnd.noblenet-directory");
$mime_type_match['nns'] = array("application/vnd.noblenet-sealer");
$mime_type_match['nnw'] = array("application/vnd.noblenet-web");
$mime_type_match['npx'] = array("application/x-netfpx");
$mime_type_match['ns2'] = array("application/vnd.lotus-notes");
$mime_type_match['ns3'] = array("application/vnd.lotus-notes");
$mime_type_match['ns4'] = array("application/vnd.lotus-notes");
$mime_type_match['nsc'] = array("application/x-conference");
$mime_type_match['nsf'] = array("application/vnd.lotus-notes");
$mime_type_match['nsg'] = array("application/vnd.lotus-notes");
$mime_type_match['nsh'] = array("application/vnd.lotus-notes");
$mime_type_match['ntf'] = array("application/vnd.lotus-notes");
$mime_type_match['nvd'] = array("application/x-navidoc");
$mime_type_match['nvm'] = array("application/x-navimap");
$mime_type_match['nws'] = array("message/rfc822");
$mime_type_match['o'] = array("application/octet-stream");
$mime_type_match['oa2'] = array("application/vnd.fujitsu.oasys2");
$mime_type_match['oa3'] = array("application/vnd.fujitsu.oasys3");
$mime_type_match['oas'] = array("application/vnd.fujitsu.oasys");
$mime_type_match['obd'] = array("application/x-msbinder");
$mime_type_match['oda'] = array("application/oda");
$mime_type_match['omc'] = array("application/x-omc");
$mime_type_match['omcd'] = array("application/x-omcdatamaker");
$mime_type_match['omcr'] = array("application/x-omcregerator");
$mime_type_match['or2'] = array("application/vnd.lotus-organizer");
$mime_type_match['or3'] = array("application/vnd.lotus-organizer");
$mime_type_match['org'] = array("application/vnd.lotus-organizer");
$mime_type_match['orq'] = array("application/ocsp-request");
$mime_type_match['ors'] = array("application/ocsp-response");
$mime_type_match['ota'] = array("image/x-ota-bitmap");
$mime_type_match['p'] = array("text/x-pascal");
$mime_type_match['p10'] = array("application/pkcs10", "application/x-pkcs10");
$mime_type_match['p12'] = array("application/pkcs-12", "application/x-pkcs12");
$mime_type_match['p7a'] = array("application/x-pkcs7-signature");
$mime_type_match['p7b'] = array("application/x-pkcs7-certificates");
$mime_type_match['p7c'] = array("application/pkcs7-mime", "application/x-pkcs7-mime");
$mime_type_match['p7m'] = array("application/pkcs7-mime", "application/x-pkcs7-mime");
$mime_type_match['p7r'] = array("application/x-pkcs7-certreqresp");
$mime_type_match['p7s'] = array("application/pkcs7-signature");
$mime_type_match['pac'] = array("application/x-ns-proxy-autoconfig", "audio/x-pac");
$mime_type_match['pae'] = array("audio/x-epac");
$mime_type_match['pan'] = array("application/x-pan");
$mime_type_match['part'] = array("application/pro_eng");
$mime_type_match['pas'] = array("text/pascal");
$mime_type_match['pat'] = array("audio/x-pat");
$mime_type_match['pbd'] = array("application/vnd.powerbuilder6-s", "application/vnd.powerbuilder6", "application/vnd.powerbuilder7-s", "application/vnd.powerbuilder75-s", "application/vnd.powerbuilder75", "application/vnd.powerbuilder7");
$mime_type_match['pbm'] = array("image/x-portable-bitmap");
$mime_type_match['pcd'] = array("image/x-photo-cd");
$mime_type_match['pcl'] = array("application/vnd.hp-PCL", "application/x-pcl");
$mime_type_match['pct'] = array("image/x-pict");
$mime_type_match['pcx'] = array("image/x-pcx");
$mime_type_match['pda'] = array("image/x-pda");
$mime_type_match['pdb'] = array("chemical/x-pdb");
$mime_type_match['pdf'] = array("application/pdf");
$mime_type_match['pfr'] = array("application/font-tdpfr");
$mime_type_match['pfunk'] = array("audio/make", "audio/make.my.funk");
$mime_type_match['pfx'] = array("application/x-pkcs12");
$mime_type_match['pgm'] = array("image/x-portable-graymap", "image/x-portable-greymap");
$mime_type_match['pgn'] = array("application/x-chess-pgn");
$mime_type_match['pgp'] = array("application/pgp-encrypted");
$mime_type_match['pic'] = array("image/pict");
$mime_type_match['pict'] = array("image/pict", "image/x-pict");
$mime_type_match['pkg'] = array("application/x-newton-compatible-pkg");
$mime_type_match['pki'] = array("application/pkixcmp");
$mime_type_match['pko'] = array("application/vnd.ms-pki.pko");
$mime_type_match['pl'] = array("text/plain", "text/x-script.perl");
$mime_type_match['plc'] = array("application/vnd.Mobius.PLC");
$mime_type_match['plg'] = array("text/html");
$mime_type_match['plj'] = array("audio/vnd.everad.plj");
$mime_type_match['pls'] = array("audio/mpegurl", "audio/scpls", "audio/x-mpequrl", "audio/x-scpls", "audio/scpls");
$mime_type_match['plx'] = array("application/x-PiXCLscript");
$mime_type_match['pm'] = array("application/x-perl", "image/x-xpixmap", "text/x-script.perl-module");
$mime_type_match['pm4'] = array("application/x-pagemaker");
$mime_type_match['pm5'] = array("application/x-pagemaker");
$mime_type_match['pml'] = array("application/vnd.ctc-posml");
$mime_type_match['png'] = array("image/png", "image/x-png");
$mime_type_match['pnm'] = array("application/x-portable-anymap", "image/x-portable-anymap");
$mime_type_match['pot'] = array("application/vnd.ms-powerpoint", "application/mspowerpoint");
$mime_type_match['pov'] = array("model/x-pov");
$mime_type_match['ppa'] = array("application/vnd.ms-powerpoint");
$mime_type_match['ppm'] = array("image/x-portable-pixmap");
$mime_type_match['pps'] = array("application/vnd.ms-powerpoint", "application/mspowerpoint");
$mime_type_match['ppt'] = array("application/vnd.ms-powerpoint", "application/mspowerpoint", "application/powerpoint", "application/x-mspowerpoint");
$mime_type_match['ppz'] = array("application/mspowerpoint", "application/ppt");
$mime_type_match['pqf'] = array("application/x-cprplayer");
$mime_type_match['pqi'] = array("application/cprplayer");
$mime_type_match['pre'] = array("application/vnd.lotus-freelance", "application/x-freelance");
$mime_type_match['prf'] = array("application/pics-rules");
$mime_type_match['proxy'] = array("application/x-ns-proxy-autoconfig");
$mime_type_match['prt'] = array("application/pro_eng");
$mime_type_match['prz'] = array("application/vnd.lotus-freelance");
$mime_type_match['ps'] = array("application/postscript");
$mime_type_match['psd'] = array("application/octet-stream");
$mime_type_match['pseg3820'] = array("application/vnd.ibm.modcap");
$mime_type_match['psid'] = array("audio/prs.sid");
$mime_type_match['pti'] = array("image/prs.pti");
$mime_type_match['ptlk'] = array("application/listenup");
$mime_type_match['pub'] = array("application/x-mspublisher");
$mime_type_match['puz'] = array("application/x-crossword");
$mime_type_match['pvu'] = array("paleovu/x-pv");
$mime_type_match['pwn'] = array("application/vnd.3M.Post-it-Notes");
$mime_type_match['pwz'] = array("application/vnd.ms-powerpoint");
$mime_type_match['py'] = array("text/x-script.phyton");
$mime_type_match['pyc'] = array("applicaiton/x-bytecode.python");
$mime_type_match['qam'] = array("application/vnd.epson.quickanime");
$mime_type_match['qbo'] = array("application/vnd.intu.qbo");
$mime_type_match['qca'] = array("application/vnd.ericsson.quickcall");
$mime_type_match['qcall'] = array("application/vnd.ericsson.quickcall");
$mime_type_match['qcp'] = array("audio/vnd.qcelp");
$mime_type_match['qd3'] = array("x-world/x-3dmf");
$mime_type_match['qd3d'] = array("x-world/x-3dmf");
$mime_type_match['qfx'] = array("application/vnd.intu.qfx");
$mime_type_match['qif'] = array("image/x-quicktime");
$mime_type_match['qps'] = array("application/vnd.publishare-delta-tree");
$mime_type_match['qry'] = array("text/html");
$mime_type_match['qt'] = array("video/quicktime");
$mime_type_match['qtc'] = array("video/x-qtc");
$mime_type_match['qti'] = array("image/x-quicktime");
$mime_type_match['qtif'] = array("image/x-quicktime");
$mime_type_match['qtvr'] = array("video/quicktime");
$mime_type_match['r3t'] = array("text/vnd.rn-realtext3d");
$mime_type_match['ra'] = array("application/x-pn-realaudio", "audio/vnd.rn-realaudio", "audio/x-pn-realaudio", "audio/x-pn-realaudio-plugin", "audio/x-realaudio");
$mime_type_match['ram'] = array("application/x-pn-realaudio", "audio/x-pn-realaudio", "audio/x-pn-realaudio-plugin");
$mime_type_match['rar'] = array("application/rar");
$mime_type_match['ras'] = array("application/x-cmu-raster", "image/cmu-raster", "image/x-cmu-raster");
$mime_type_match['rast'] = array("image/cmu-raster");
$mime_type_match['rb'] = array("application/x-rocketbook");
$mime_type_match['rct'] = array("application/prs.nprend");
$mime_type_match['rep'] = array("application/vnd.businessobjects");
$mime_type_match['rexx'] = array("text/x-script.rexx");
$mime_type_match['rf'] = array("image/vnd.rn-realflash");
$mime_type_match['rgb'] = array("image/x-rgb");
$mime_type_match['rjs'] = array("application/vnd.rn-realsystem-rjs");
$mime_type_match['rlc'] = array("image/vnd.fujixerox.edmics-rlc");
$mime_type_match['rlf'] = array("application/x-richlink");
$mime_type_match['rm'] = array("application/vnd.rn-realmedia", "application/x-pn-realaudio", "audio/x-pn-realaudio", "audio/x-pn-realaudio-plugin");
$mime_type_match['rmi'] = array("audio/mid");
$mime_type_match['rmm'] = array("audio/x-pn-realaudio");
$mime_type_match['rmp'] = array("application/vnd.rn-rn_music_package", "audio/x-pn-realaudio", "audio/x-pn-realaudio-plugin");
$mime_type_match['rmx'] = array("application/vnd.rn-realsystem-rmx");
$mime_type_match['rnd'] = array("application/prs.nprend");
$mime_type_match['rng'] = array("application/ringing-tones", "application/vnd.nokia.ringing-tone");
$mime_type_match['rnx'] = array("application/vnd.rn-realplayer");
$mime_type_match['roff'] = array("application/x-troff");
$mime_type_match['rp'] = array("image/vnd.rn-realpix");
$mime_type_match['rpm'] = array("application/x-pn-realaudio", "audio/x-pn-RealAudio-plugin", "audio/x-pn-realaudio-plugin");
$mime_type_match['rsm'] = array("model/vnd.gdl", "model/vnd.gs.gdl");
$mime_type_match['rsml'] = array("application/vnd.rn-rsml");
$mime_type_match['rt'] = array("text/richtext", "text/vnd.rn-realtext");
$mime_type_match['rte'] = array("x-lml/x-gps");
$mime_type_match['rtf'] = array("text/richtext", "application/msword", "application/rtf", "application/x-rtf", "text/rtf");
$mime_type_match['rtg'] = array("application/metastream");
$mime_type_match['rts'] = array("application/x-rtsl");
$mime_type_match['rtx'] = array("text/richtext", "application/rtf");
$mime_type_match['rv'] = array("video/vnd.rn-realvideo");
$mime_type_match['rxn'] = array("chemical/x-mdl-rxn", "chemical/x-mdl-rxnfile");
$mime_type_match['s'] = array("text/x-asm");
$mime_type_match['s3m'] = array("audio/s3m", "audio/x-mod");
$mime_type_match['s3z'] = array("audio/x-mod");
$mime_type_match['sam'] = array("application/vnd.lotus-wordpro");
$mime_type_match['saveme'] = array("application/octet-stream");
$mime_type_match['sbk'] = array("application/x-tbook", "audio/x-sbk");
$mime_type_match['sc'] = array("application/x-showcase");
$mime_type_match['scd'] = array("application/x-msschedule");
$mime_type_match['scm'] = array("application/vnd.lotus-screencam", "application/x-lotusscreencam", "text/x-script.guile", "text/x-script.scheme", "video/x-scm");
$mime_type_match['scp'] = array("text/plain");
$mime_type_match['sct'] = array("text/scriptlet");
$mime_type_match['sdf'] = array("application/e-score", "chemical/x-mdl-sdf");
$mime_type_match['sdml'] = array("text/plain");
$mime_type_match['sdp'] = array("application/sdp", "application/x-sdp");
$mime_type_match['sdr'] = array("application/sounder");
$mime_type_match['sds'] = array("application/x-onlive");
$mime_type_match['sea'] = array("application/sea", "application/x-sea", "application/x-stuffit");
$mime_type_match['see'] = array("application/vnd.seemail");
$mime_type_match['ser'] = array("application/x-java-serialized-object");
$mime_type_match['set'] = array("application/set");
$mime_type_match['sgi-lpr'] = array("application/x-sgi-lpr");
$mime_type_match['sgm'] = array("text/sgml", "text/x-sgml");
$mime_type_match['sgml'] = array("text/sgml", "text/x-sgml");
$mime_type_match['sh'] = array("application/x-bsh", "application/x-sh", "application/x-shar", "text/x-script.sh");
$mime_type_match['sha'] = array("application/x-shar");
$mime_type_match['shar'] = array("application/x-bsh", "application/x-shar");
$mime_type_match['sho'] = array("application/x-showcase");
$mime_type_match['show'] = array("application/x-showcase");
$mime_type_match['showcase'] = array("application/x-showcase");
$mime_type_match['shtml'] = array("text/html", "magnus-internal/parsed-html", "text/x-server-parsed-html");
$mime_type_match['shw'] = array("application/presentations");
$mime_type_match['si'] = array("text/vnd.wap.si");
$mime_type_match['sic'] = array("application/vnd.wap.sic");
$mime_type_match['sid'] = array("audio/prs.sid", "audio/x-psid");
$mime_type_match['silo'] = array("model/mesh");
$mime_type_match['sis'] = array("application/vnd.symbian.install");
$mime_type_match['sit'] = array("application/x-sit", "application/x-stuffit");
$mime_type_match['skc'] = array("chemical/x-mdl-isis");
$mime_type_match['skd'] = array("application/vnd.koan", "application/x-koan");
$mime_type_match['skm'] = array("application/vnd.koan", "application/x-koan");
$mime_type_match['skp'] = array("application/vnd.koan", "application/x-koan");
$mime_type_match['skt'] = array("application/vnd.koan", "application/x-koan");
$mime_type_match['sl'] = array("text/vnd.wap.sl", "application/x-seelogo");
$mime_type_match['slc'] = array("application/vnd.wap.slc", "application/x-salsa");
$mime_type_match['slides'] = array("application/x-showcase");
$mime_type_match['slt'] = array("application/vnd.epson.salt");
$mime_type_match['smd'] = array("chemical/x-smd");
$mime_type_match['smi'] = array("application/smil", "chemical/x-daylight-smiles", "chemical/x-x-daylight-smiles");
$mime_type_match['smil'] = array("application/smil");
$mime_type_match['smp'] = array("application/studiom");
$mime_type_match['snd'] = array("audio/basic", "audio/x-adpcm");
$mime_type_match['sol'] = array("application/solids");
$mime_type_match['spc'] = array("application/x-pkcs7-certificates", "chemical/x-galactic-spc", "text/x-speech");
$mime_type_match['spl'] = array("application/futuresplash", "application/x-futuresplash");
$mime_type_match['spo'] = array("text/vnd.in3d.spot");
$mime_type_match['spot'] = array("text/vnd.in3d.spot");
$mime_type_match['spr'] = array("application/x-sprite");
$mime_type_match['sprite'] = array("application/x-sprite");
$mime_type_match['spt'] = array("application/x-spt");
$mime_type_match['src'] = array("application/x-wais-source");
$mime_type_match['ssf'] = array("application/vnd.epson.ssf");
$mime_type_match['ssi'] = array("text/x-server-parsed-html");
$mime_type_match['ssm'] = array("application/streamingmedia");
$mime_type_match['sst'] = array("application/vnd.ms-pki.certstore");
$mime_type_match['step'] = array("application/step");
$mime_type_match['stf'] = array("application/vnd.wt.stf");
$mime_type_match['stk'] = array("application/hyperstudio");
$mime_type_match['stl'] = array("application/sla", "application/vnd.ms-pki.stl", "application/x-navistyle");
$mime_type_match['stp'] = array("application/step");
$mime_type_match['str'] = array("application/vnd.pg.format", "audio/x-str");
$mime_type_match['sv4cpio'] = array("application/x-sv4cpio");
$mime_type_match['sv4crc'] = array("application/x-sv4crc");
$mime_type_match['svf'] = array("image/vnd.svf", "image/vnd", "image/x-dwg");
$mime_type_match['svg'] = array("image/svg-xml");
$mime_type_match['svh'] = array("image/svh");
$mime_type_match['svr'] = array("application/x-world", "x-world/x-svr");
$mime_type_match['swf'] = array("application/x-shockwave-flash");
$mime_type_match['swfl'] = array("application/x-shockwave-flash");
$mime_type_match['sys'] = array("video/x-mpeg-system");

2ª parte en el siguiente post

8
Saludos,,,

Caracteristicas :

Este MOD se tiene que usar desde el Panel de Control ( Admin)
Se crearan dos archivos txt uno de nombres y otro de E-mail en el directorio principal de tu galería.

Sube este script al directorio admin/plugins y lo nombras como listar_email.php,, si el directorio plugins no existe lo creas dentro del directorio admin.

listar_email.php

Code: [Select]
<?php // PLUGIN_TITLE: Listar E-mail

$root_path = (eregi("\/plugins\/"$PHP_SELF)) ? "./../../" "./../";
define('ROOT_PATH'$root_path);
require(
ROOT_PATH.'admin/admin_global.php');
show_admin_header();
$contador 0;

#Abrimos los ficheros de texto en modo de escritura,,,
#cada vez que se ejecute el script,, borrará todos los datos de los ficheros y los creará de nuevo  
$escribir_nombre fopen(ROOT_PATH."nombre_usuarios.txt","w"); 
$escribir_email fopen(ROOT_PATH."email_usuarios.txt","w"); 

#Realizamos lectura en la base de datos
$qry "SELECT user_id, user_name, user_level, user_email 
FROM "
.USERS_TABLE."
ORDER  BY user_name"
;
$datos mysql_query($qry);
while(
$fila mysql_fetch_array($datos))
{

# Seleccionamos solamente los E-mail de los usuarios registrados
if ($fila[user_level] == 2) { 

#Insertamos los datos en los dos ficheros ( nombre - E-mail) y contabilizamos los registros
$leer_nombre "$fila[user_name]\r\n";
$leer_email "$fila[user_email]\r\n";
fputs($escribir_nombre,$leer_nombre); 
fputs($escribir_email,$leer_email);
$contador ++;
}
}

#Cerramos los ficheros
fclose($escribir_nombre); 
fclose($escribir_email);


#Creamos 1ª parte de la plantilla de presentación de resultados 
echo <<<ESQUEMA
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td class="tableborder">
<table cellpadding="3" cellspacing="1" border="0" width="100%">
<tr class="tableheader">
<td colspan="2"><a name=""><b><span class="tableheader">Listado de los E-mail de los usuarios registrados</span></b></a>
</td>
</tr>
<tr class="tablerow2">
<td height="25" class="rowtitle"> <center><b>Tienes un total de <font color="#FF0000">
$contador</font> usuarios registrados en tu base de datos </b></td>
</tr>
<tr class="tablerow">
<td><p class="rowtitle"><center>
ESQUEMA;

#Creamos el formato para la presentación en forma de menú
echo "<SELECT name=\"$buffer\">\n";
$correo fopen(ROOT_PATH."email_usuarios.txt","r");
$usuario fopen(ROOT_PATH."nombre_usuarios.txt","r");
while(!
feof($correo)){

# Leemos los 100 primeros caracteres del cada linea de los diferentes fichero txt
$email fgets($correo,100); 
$nombre fgets($usuario,100);

#Insertamos solamente los registros que tengan datos
if (!feof($correo) != ""){
echo 
"<option>Usuario $nombre &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; E-mail : &nbsp;&nbsp; $email</option>\n";
}
}

#Creamos 2ª parte de la plantilla de presentación de resultados 
echo <<<ESQUEMA2
</p></td>
</tr>
<tr class="tablerow2">
<td height="25"><center>MOD creado por excitex2</td>
</tr>
<td colspan="2" align="center">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
  <tr>
  </tr>
  </tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
ESQUEMA2;

?>

 


Seguidamente crea dos ficheros txt con los nombres :

nombre_usuario.txt y email_usuario.txt

Súbelos al directorio principal de tu galería y dale permisos CHMOD 666

Para ejecutar el script entra el panel de control de tu galería

Espero que te sirva

excitex2

9
Saludos,,,

Estas son casi todas las modificaciones que se han realizado en la versión 1.7.1,, y que al final se ha transformado en la versión 1.7.2

http://www.4homepages.de/forum/index.php?topic=11883.msg63244#msg63244

excitex2

10
Español / Castellano / MOD Estadisticas Gráficas
« on: March 05, 2006, 12:43:20 AM »
Saludos,,,,

Este MOD es para mostrar las estadisticas de la galería con gráficos verticales y gráficos porcentuales de grados




Solo he insertado en estas estadisticas graficas las opciones que trae por defecto la aplicación,, por ejemplo,, no he insertado las estadisticas correspondiente a los MMS enviados,, porque esas estadisticas se tienen que optener a traves de la instalación del MOD correspondiente,, asi como otras que igual veis insertas en mi galería.

Si hay alguien que este interesado en insertar otras estadisticas que lo ponga en un post y asi se dará solución personalizada,, y no afectara a posible errores en las estadisticas de otros usuarios.

Instalación :

Descarga el siguiente ZIP : << >>

Descomprime el ZIP y sube los archivos tal y como estan en las carpetas descomprimidas,,, es decir :

Fichero estadisticas_graficas.php  subirlo al directorio raiz de tu galería
Fichero estadisticas_graficas2.php  subirlo al directorio includes/
Fichero estadisticas_graficas.html  subirlo al directorio templates/tus_plantillas/
Carpeta fonts subirlo al directorio raiz de tu galeria y dar permiso CHMOD 755
Carpeta graficos subirlo al directorio raiz de tu galería y darle permisos CHMOD 777.
.

Abrir templates/tus_plantillas/user_logininfo.html

Localizar :

Quote
&raquo; <a href="{url_logout}">{lang_logout}</a></td>

Añadir debajo :

Quote
&raquo; <a href="estadisticas_graficas.php">Estadisticas graficas</a></td>

Cerrar y guardar cambios

Abrir templates/tus_plantillas/user_loginform.html

Quote
&raquo; <a href="{url_register}">{lang_register}</a></td>

Añadir debajo :

Quote
&raquo; <a href="estadisticas_graficas.php">Estadisticas graficas</a></td>

Cerrar y guardar cambios

Abrir lang/tu_idioma/main.php

Añadir antes de ?>

Quote
$lang['estadisticas_graficas'] = "Estadisticas gráficas";


excitex2

11
Español / Castellano / [MOD] Mostrar última imagen
« on: February 24, 2006, 12:31:00 AM »
Saludos,,,

Se ha modificado el script para que sea compatible con las nuevas versiones

El MOD es para mostrar en la página principal de la galería,, la  última imagen que se ha subido, descargado, comentado, votado y enviado via postal.

No he incorporado la última imagen que se ha enviado via MMS,, por que lo más seguro que daría más de un error,,, debido a que muchos no tienen instalado el MOD para descargar imágenes via MMS,,,  pero si alguien lo necesita,, que lo pida y lo insertaré aparte 


Pasos a seguir para la instalación :

1) Abrir index.php

Localizar :

Code: [Select]
require(ROOT_PATH.'includes/sessions.php');
Añadir debajo :

Code: [Select]
include(ROOT_PATH.'ultimos.php');
Cerrar y guardar cambios

2) Abrir download.php

Localizar :

Code: [Select]
if ($user_info['user_level'] != ADMIN) {
    $sql = "UPDATE ".IMAGES_TABLE."
            SET image_downloads = image_downloads + 1
            WHERE image_id = $image_id";
    $site_db->query($sql);

Añadir debajo :

Code: [Select]
///////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////  Insertar fecha de la descarga de la imagen //////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////

$fecha = time();
$sql = "UPDATE ".IMAGES_TABLE."
            SET image_downloads_date = $fecha
            WHERE image_id = $image_id";
    $site_db->query($sql);

///////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////  Fin de insertar fecha de la descarga de la imagen //////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////

Cerrar y guardar cambios

3) Abrir details.php

Localizar :

Code: [Select]
// Update Hits
if ($user_info['user_level'] != ADMIN) {
  $sql = "UPDATE ".IMAGES_TABLE."
          SET image_hits = image_hits + 1
          WHERE image_id = $image_id";
  $site_db->query($sql);


Añadir debajo :

Code: [Select]
///////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////// Insertar fecha de la votación de la imagen //////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////

$fecha = time();
$sql = "UPDATE ".IMAGES_TABLE."
SET image_voted_date = $fecha
WHERE image_id = $image_id";
$site_db->query($sql);

///////////////////////////////////////////////////////////////////////////////////////////////////
///////////////// Fin de insertar fecha de votacion de la imagen //////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////

Cerrar y guardar cambios

4) Abrir lang/tu_idioma/main.php

Añadir antes de :  ?>

Code: [Select]
//----------------------------------------------------------------------
//--- Ultimas imagenes subida,comentada,votada,mms,postal,descargada ---
//----------------------------------------------------------------------
$lang['ultima_postal'] = "Última postal enviada";
$lang['ultima_coment'] = "Últi. imagen comentada";
$lang['ultima_subida'] = "Última imagen subida";
$lang['ultima_descargada'] = "Últi. imagen descargada";
$lang['ultima_votada'] = "Última imagen votada";

Cerrar y  guardar cambios.

5) Abrir templates/tus_plantillas/home.html

Aqui tienes dos opciones para mostrar las imágenes en tu galería : vertical o bien horizontal

Insertar el siguiente código donde quiera que se visualicen las imágenes: en vertical :

Code: [Select]
<tr>
<td class="row2" height="20">
<p align="center">
<img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" /><b>{lang_ultima_subida}</b></p>
</td>
</tr>

<tr>
<td valign="top" class="row1" width="100%">
<p align="center">{subida}</p>
</td>
</tr>

<tr>
<td class="row2" height="20">
<p align="center">
<img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" /><b>{lang_ultima_descargada}</b></p>
</td>
</tr>

<tr>
<td valign="top" class="row1" width="100%">
<p align="center">{descargada}</p>
</td>
</tr>

<tr>
<td class="row2" height="20">
<p align="center">
<img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" /><b>{lang_ultima_coment}</b></p>
</td>
</tr>

<tr>
<td valign="top" class="row1" width="100%">
<p align="center">{comentada}</p>
</td>
</tr>

<tr>
<td class="row2" height="20">
<p align="center">
<img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" /><b>{lang_ultima_votada}</b></p>
</td>
</tr>

<tr>
<td valign="top" class="row1" width="100%">
<p align="center">{votada}</p>
</td>
</tr>

<tr>
<td class="row2" height="20">
<p align="center">
<img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" /><b>{lang_ultima_postal}</b></p>
</td>
</tr>

<tr>
<td valign="top" class="row1" width="100%">
<p align="center">{postales}</p>
</td>
</tr>

Cerrar y guardar cambios

Insertar el siguiente código donde quiera que se visualicen las imágenes: en horizontal :

Code: [Select]
<table width="100%">
  <tr>
    <td width="20%" height="20">
    <p align="center"><b>{lang_ultima_subida}</b></td>
    <td width="20%" height="20">
    <p align="center"><b>{lang_ultima_descargada}</b></td>
    <td width="20%" height="20">
    <p align="center"><b>{lang_ultima_coment}</b></td>
    <td width="20%" height="20">
    <p align="center"><b>{lang_ultima_votada}</b></td>
    <td width="20%" height="20">
    <p align="center"><b>{lang_ultima_postal}</b></td>
  </tr>
  <tr>
    <td width="20%">
    <p align="center">{subida}</td>
    <td width="20%" >
    <p align="center">{descargada}</td>
    <td width="20%">
    <p align="center">{comentada}</td>
    <td width="20%" >
    <p align="center">{votada}</td>
    <td width="20%" >
    <p align="center">{postales}</td>
  </tr>
</table>

Cerrar y guardar cambios

6) Descargar el siguiente zip,, descomprimir,, y subir al directorio raiz de tu galería ( donde tienes situado el config.php) los dos ficheros,,, :

Descargar los 2 nuevos ficheros << >>

7) Ejecutar el install_ultimas_images.php

excitex2

12
Español / Castellano / [MOD] al clicar en la imagen se abre en un poput
« on: January 03, 2006, 12:37:59 AM »
Saludos,,,

Este MOD es para que al picar sobre la imagen se pueda ver dicha imagen en un poput.

Las caracteristicas del poput son las siguiente  :
Las dimensiones del poput se ajustan a las de la imagen,,idependientemente de que varien en cada imagen.
Al pulsar cualquier botón del raton,,, se cierra el poput.
No permite copiar la imagen de dicho poput,,, si se intenta copiar o arrastrar la imagen se cierra el poput.
Funciona tanto en details,, como en postcard.

Abrir templates/tus_plantillas/header.html

Inserar el siguiente código entre las etiquetas <HEAD> y </HEAD>

Quote
<script language="JavaScript">
<!--
function JustSoPicWindow(imageName,imageWidth,imageHeight,alt,bgcolor,hugger,hugMargin) {

   if (bgcolor=="") {
      bgcolor="#FFFFFF";
   }
   var adj=10, lift;
   var w = screen.width;
   var h = screen.height;
   var byFactor=1;

   if(w<740){
     lift=0.90;
   }
   if(w>=740 & w<835){
     lift=0.91;
   }
   if(w>=835){
     lift=0.93;
   }
   if (imageWidth>w){   
     byFactor = w / imageWidth;         
     imageWidth = w;
     imageHeight = imageHeight * byFactor;
   }
   if (imageHeight>h-adj){
     byFactor = h / imageHeight;
     imageWidth = (imageWidth * byFactor);
     imageHeight = h;
   }
      
   var scrWidth = w-adj;
   var scrHeight = (h*lift)-adj;

   if (imageHeight>scrHeight){
       imageHeight=imageHeight*lift;
     imageWidth=imageWidth*lift;
   }

   var posLeft=0;
   var posTop=0;

   if (hugger == "hug image"){
     if (hugMargin == ""){
       hugMargin = 0;
     }
     var scrHeightTemp = imageHeight - 0 + 2*hugMargin;
     if (scrHeightTemp < scrHeight) {
      scrHeight = scrHeightTemp;
     }
     var scrWidthTemp = imageWidth - 0 + 2*hugMargin;
     if (scrWidthTemp < scrWidth) {
      scrWidth = scrWidthTemp;
     }
    
     if (scrHeight<100){scrHeight=100;}
     if (scrWidth<100){scrWidth=100;}

     posTop =  ((h-(scrHeight/lift)-adj)/2);
     posLeft = ((w-(scrWidth)-adj)/2);
    }

   if (imageHeight > (h*lift)-adj || imageWidth > w-adj){
      imageHeight=imageHeight-adj;
      imageWidth=imageWidth-adj;
   }

   var agt=navigator.userAgent.toLowerCase();
   if (agt.indexOf("opera") != -1){
     var args= new Array();
     args[0]='parent';
     args[1]=imageName;
     var i ; document.MM_returnValue = false;
     for (i=0; i<(args.length-1); i+=2) eval(args+".location='"+args[i+1]+"'");
   } else {
   newWindow = window.open("{template_url}/apertura.html","newWindow","width="+scrWidth+",height="+scrHeight+",left="+posLeft+",top="+posTop);
   newWindow.document.open();
   newWindow.document.write('<html><title>'+alt+'</title><meta http-equiv="ImageToolbar" content="no" /><body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0" bgcolor='+bgcolor+' onBlur="self.close()" onClick="self.close()">'); 
   newWindow.document.write('<table width='+imageWidth+' border="0" cellspacing="0" cellpadding="0" align="center" height='+scrHeight+' ><tr><td>');
   newWindow.document.write('<img src="'+imageName+'" width='+imageWidth+' height='+imageHeight+' alt="Click para cerrar ventana" >');
   newWindow.document.write('</td></tr></table></body></html>');
   newWindow.document.close();
   newWindow.focus();
   }
}
//-->
</script>

Cerrar y guardar cambios

Nombrar el siguiente código html como apertura.html y subir la nueva plantilla a templates/tus_plantillas/

Quote
<HTML>
<HEAD>
</HEAD>
<body>
</body>
</html>

Abrir templates/tus_plantillas/media/jpg.html

Cambia el código de dicha plantilla por este otro:

Quote
<!-- Template file for JPG Files -->
<a href="#"><img src="{media_src}" border="1" alt="{image_name}"{width_height} onClick="JustSoPicWindow('{media_src}','{width}','{height}','{image_name}','#000000','hug image','0');return document.MM_returnValue" width={widh} height={height} /></a></br>

OJO si trabajas con plantillas que uses background cambia el contenido de dicha plantilla, por este otro :

Quote
<!-- Template file for JPG Files -->
<table style="background: url('{media_src}') no-repeat center; " cellpadding="0" cellspacing="0">
  <tr>
    <td>{link_back}<a href="#"><img src="{template_url}/images/spacer.gif" border="1" alt="{image_name}"{width_height}  onClick="JustSoPicWindow('{media_src}','{width}','{height}','{image_name}','#000000','hug image','0');return document.MM_returnValue" width={widh} height={height} /></a>{link_back_end}</td>
  </tr>
</table>

Realizar los cambios en todas las plantillas que utiliceis,, jpg,jpeg,gif,png,,etc,etc,  pero yo no cambiaría las que son de sonido o videos.

excitex2







13
Saludos,,,

Este MOD es  para recomendar nuestra galería a uno o varios amigos en una nueva versión multilingue el formato de los E-Mail es en HTML por lo tanto se puede incluir nuestro logo,,,  imagenes o una plantilla definida.

Nombrar este script como recomendar.php y subirlo al directorio raiz de tu galería.

Code: [Select]
<?php

$main_template 
'recomendar';

define('GET_CACHES'1);
define('ROOT_PATH''./');
include(
ROOT_PATH.'global.php');
require(
ROOT_PATH.'includes/sessions.php');
$user_access get_permission();
include(
ROOT_PATH.'includes/page_header.php');

///////////////////////////////////////////////////////////////////////////////////////
//Configuramos valores para el correo
///////////////////////////////////////////////////////////////////////////////////////

$web $lang['web'];
$titulo_web $lang['titulo_web'];
$txt_clickstream $lang['recomendar'];
$asunto $lang['asunto'];
$recomendar $lang['recomendar'];
$restablecer $lang['reset'];
$nombre_tuyo $lang['nombre_tuyo'];
$email_tuyo $lang['email_tuyo'];
$nombre_del_amigo $lang['nombre_amigos'];
$email_del_amigo $lang['email_amigos'];
$regresar_formulario $lang['regresar_formulario'];
$aviso_complementar_campos $lang['aviso_complementar_campos'];
$gracias $lang['gracias'];
$regresar $lang['regresar'];
$mensaje_enviado $lang['mensaje_enviado'];
$error $lang['error'];
$recomendar_sitio $lang['recomendar_sitio'];
$opcionales $lang['opcionales'];
$saludo $lang['saludo'];
$presentacion $lang['presentacion'];
$te_recomienda $lang['te_recomienda'];
$visitelo $lang['visitelo'];
$no_correcto $lang['no_correcto']; 
$error_email_amigo $lang['error_email_amigo'];
$error_caracteres $lang['error_caracteres'];
$falta $lang['falta'];
$ofensivo $lang['ofensivo'];
$manda_mensaje $lang['manda_mensaje'];
$ofensa $lang['ofensa'];
$mandado $lang['mandado'];
$saludo_equipo $lang['saludo_equipo'];  
$soy 
$lang['soy'];
$error_espacios $lang['error_espacios'];
$error_punto $lang['error_punto'];
$error_extension_email_amigo $lang['error_extension_email_amigo'];
$error_extension_email $lang['error_extension_email'];
$error_no_email_amigo $lang['error_no_email_amigo'];
$error_no_nombre_amigo $lang['error_no_nombre_amigo'];
$error_email $lang['error_email'];
$error_no_email $lang['error_no_email'];
$error_no_nombre $lang['error_no_nombre'];

// Controlamos la función que realiza en ese momento el script
if ($HTTP_GET_VARS["accion"] == "") { 

//Creamos el formulario de envio
$formulario ="<form method=\"post\" action=\"recomendar.php?accion=enviar\" name=\"recomendar\">
<table border=0 cellspacing=\"0\" cellpadding=\"0\" width=\"100%\">
<tr><td><table cellspacing=\"0\" cellpadding=\"0\" width=\"100%\" >
<tr><td class=\"head1\" colspan=\"2\" height=\"20\"> 
$recomendar_sitio</b>
</td></tr>

<tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_tuyo : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"tu_nombre\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_tuyo : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"tu_email\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_del_amigo 1 : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[1]\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_del_amigo 1 : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[1]\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
<tr><td width=\"33%\" height=\"20\" class=\"head2\"><b>
$opcionales</b></td><td class=\"head2\" width=\"66%\" height=\"20\"></td></tr>

<tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_del_amigo 2 : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[2]\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_del_amigo 2 : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[2]\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_del_amigo 3 : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[3]\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_del_amigo 3 : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[3]\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_del_amigo 4 : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[4]\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_del_amigo 4 : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[4]\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

<tr><td class=\"row1\" width=\"33%\"><b>&nbsp; 
$nombre_del_amigo 5 : </b><br></td>
<td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[5]\" size=\"30\"></td></tr>
<tr><td class=\"row2\" width=\"33%\"><b>&nbsp; 
$email_del_amigo 5 : </b><br></td>
<td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[5]\" size=\"30\"></td></tr>
<tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>

</table><table width=\"100%\"><tr><td class=\"row2\" width=\"33%\"><b>&nbsp; Mensaje : </b></td>
<td class=\"row2\" width=\"66%\"><textarea name=\"comentario\" rows=\"7\" cols=\"23\">
</textarea></td></tr></table></td></tr></table>

<p align=\"center\"><input type=\"submit\" value=\"
$recomendar\" class=\"button\" size=\"20\">
<input type=\"reset\" value=\"
$restablecer\" class=\"button\" /></form>";



// Controlamos que todos los campos esten correctos antes de enviarlos
elseif ($HTTP_GET_VARS["accion"] == "enviar") { 

if (empty(
$tu_nombre)){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error: </b></font> $error_no_nombre.</br>";
$control 1;
}

if (empty(
$tu_email)){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_no_email.</br>";
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($tu_email)) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($tu_email,"'")) && (!strstr($tu_email,"\"")) && (!strstr($tu_email,"\\")) && (!strstr($tu_email,"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($tu_email,"@") == 1) && (substr($tu_email,0,1) != "@") && (substr($tu_email,strlen($tu_email)-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($tu_email," "))) { 

//Verificamos que contenga el punto '.' 
if (substr_count($tu_email,".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($tu_email'.'),1); 

//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

// compruebo que el formato antes del dominio sea correcto 
// $anterior = substr($tu_email,0,strlen($tu_email) - strlen($dominio) - 1); 
// $ultimo = substr($anterior,strlen($anterior)-1,1); 
// if ($ultimo != "@" && $ultimo != "."){ 
// $mail_correcto = 1; 
// }

}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_extension_email $no_correcto.</br>";
$control 1;
}

}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email $no_correcto$error_punto '<font color=\"#FF0000\">.</font>'</br>";
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email $no_correcto$error_espacios.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email $no_correcto$falta '<font color=\"#FF0000\">@</font>'.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email $no_correcto$error_caracteres.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email $no_correcto.</br>";
$control 1;
}
}

FOR (
$numero=1;$numero<=5;$numero++){

if (
$numero == 1) {

if (empty(
$nombre_amigo[1])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_no_nombre_amigo 1.</br>";
$control 1;
}

if (empty(
$email_amigo[1])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_no_email_amigo 1.</br>";
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($email_amigo[1])) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($email_amigo[1],"'")) && (!strstr($email_amigo[1],"\"")) && (!strstr($email_amigo[1],"\\")) && (!strstr($email_amigo[1],"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($email_amigo[1],"@") == 1) && (substr($email_amigo[1],0,1) != "@") && (substr($email_amigo[1],strlen($email_amigo[1])-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($email_amigo[1]," "))) { 

//Verificamos que contenga el punto '.' 
if (substr_count($email_amigo[1],".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($email_amigo[1], '.'),1); 

//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

//Verificamos que el formato existente antes del dominio sea correcto 
$anterior substr($email_amigo[1],0,strlen($email_amigo[1]) - strlen($dominio) - 1); 
$ultimo substr($anterior,strlen($anterior)-1,1); 
if (
$ultimo != "@" && $ultimo != "."){ 
}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b>
</font> 
$error_email_amigo 1 $no_correcto.</br>";
$control 1;


}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_extension_email_amigo 1 $no_correcto.</br>";
$control 1;
}

}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo 1 $no_correcto$error_punto '<font color=\"#FF0000\">.</font>'</br>";
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo 1 $no_correcto$error_espacios.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo 1 $no_correcto$falta '<font color=\"#FF0000\">@</font>'.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo 1 $no_correcto$error_caracteres.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo 1 $no_correcto.</br>";
$control 1;
}
}
}
else
{

if (
$nombre_amigo[$numero] != "" || $email_amigo[$numero] != "") { 

if (empty(
$nombre_amigo[$numero])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_no_nombre_amigo $numero.</br>";
$control 1;
}

if (empty(
$email_amigo[$numero])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_no_email_amigo $numero.</br>";
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($email_amigo[$numero])) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($email_amigo[$numero],"'")) && (!strstr($email_amigo[$numero],"\"")) && (!strstr($email_amigo[$numero],"\\")) && (!strstr($email_amigo[$numero],"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($email_amigo[$numero],"@") == 1) && (substr($email_amigo[$numero],0,1) != "@") && (substr($email_amigo[$numero],strlen($email_amigo[$numero])-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($email_amigo[$numero]," "))) { 

//Verificamos que contenga el punto '.' 
if (substr_count($email_amigo[$numero],".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($email_amigo[$numero], '.'),1); 

//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

//Verificamos que el formato existente antes del dominio sea correcto 
$anterior substr($email_amigo[$numero],0,strlen($email_amigo[$numero]) - strlen($dominio) - 1); 
$ultimo substr($anterior,strlen($anterior)-1,1); 
if (
$ultimo != "@" && $ultimo != "."){ 
}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b>
</font> 
$error_email_amigo $numero $no_correcto .</br>";
$control 1;


}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_extension_email_amigo $numero $no_correcto.</br>";
$control 1;
}

}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo $numero $no_correcto$error_punto '<font color=\"#FF0000\">.</font>'</br>";
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo $numero $no_correcto$error_espacios.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo $numero $no_correcto$falta '<font color=\"#FF0000\">@</font>'.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo $numero $no_correcto$error_caracteres.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp$error:</b></font> $error_email_amigo $numero $no_correcto.</br>";
$control 1;
}
}
// finaliza el if

}
// finaliza el for

//Iniciamos el bucle mandamos los E-mails a los diferentes amigos
FOR ($contador=1;$contador<=5;$contador++){

if (
$nombre_amigo[$contador] != "" && $email_amigo[$contador] != "") { 

// Realizamos el control para mandar el correo 
if ($control == 0) { 

//Limpiamos de posibles ataques.
$tunombre htmlentities($tu_nombre);
$tuemail htmlentities($tu_email);
$nombreamigo htmlentities($nombre_amigo[$contador]);
$emailamigo htmlentities($email_amigo[$contador]);

//Mensaje que recibirá tu amigo. No lo edites, o se caerá el script!.
$mensaje "<center><body bgcolor=\"#C0C0C0\"><table border= \"1\" cellpadding= \"0\" cellspacing= \"0\" style=\"border-collapse: collapse\" id=\"AutoNumber1\" bgcolor=\"#C0C0C0\">
<tr><td ><br><font face=\"verdana\" size=\"2\">&nbsp;&nbsp; 
$saludo <b><font color=\"#FF0000\"> $nombreamigo </font></b> !!!<p>&nbsp;&nbsp; $presentacion <b>
$tu_nombre </b>(<a href=\"mailto:$tuemail?subject=Re:$asunto\">$tuemail</a>), $te_recomienda <b><font color=\"#FF0000\">$titulo_web</font></b>.</br>
&nbsp;&nbsp; 
$visitelo <b><a href=$web>$web</a></b> .</font><p>";

if (
$comentario != "")
{
$mensaje .= "&nbsp;&nbsp; <b> $manda_mensaje</b><p>&nbsp;&nbsp; $comentario</p>";
}
$mensaje .= "<hr>&nbsp;&nbsp; $ofensivo $tunombre (<a href=\"mailto:$tuemail?subject=$tu_nombre $ofensa\">$tuemail</a>)
$mandado&nbsp;&nbsp;<hr> &nbsp;&nbsp;$saludo_equipo <b>$titulo_web</b>!!!<br>
&nbsp;&nbsp;<a href=
$web target=\"_blank\"><b>$web</b></a></font></p></td></tr></table></center>";

//Cabecera del e-mail
$cabecera "From: ".$nombreamigo." ".$soy." ".$tunombre."\nReply-To:".$tu_email."\n"
$cabecera .= "X-Mailer:PHP/".phpversion()."\n"
$cabecera .= "Mime-Version: 1.0\n"
$cabecera .= "Content-Type: text/html"

//Recopilamos el mensaje.
mail("$emailamigo""$asunto""$mensaje""$cabecera");

//Informa al usuario que se ha enviado el mensaje 
$msg .="<b>$mensaje_enviado $contador</b>. </br>"

}


if (
$control == 0) { 

//Damos las gracias al visitante por recomendarnos.
$msg .="<br>$gracias </br><a href=$web>$regresar</a>."
}
else {
$msg .="$aviso_complementar_campos";
$msg .=" <p><form><input type=\"button\" class=\"button\" value=\"$regresar_formulario\" onClick=\"history.go(-1);return true\"></form></p></center>"
}
}
//-----------------------------------------------------
//--- Clickstream -------------------------------------
//-----------------------------------------------------
$clickstream "<span class=\"clickstream\"><a href=\"".$site_sess->url(ROOT_PATH."index.php")."\" class=\"clickstream\">".$lang['home']."</a>".$config['category_separator'];
if (
$cat_id && isset($cat_cache[$cat_id])) {
$clickstream .= get_category_path($cat_id1).$config['category_separator'];
}
$clickstream .= "recomendar"//$lang['top_images']."</span>";
$clickstream_title $config['category_separator'].$txt_clickstream;

//-----------------------------------------------------
//--- Print Out ---------------------------------------
//-----------------------------------------------------
$site_template->register_vars(array(
"msg" => $msg,
"msg_error" => $msg_error
"clickstream" => $clickstream,
"formulario" => $formulario,
"clickstream_title" => $clickstream_title
));
$site_template->print_template($site_template->parse_template($main_template));

?>

 

Nombrar esta plantilla como recomendar.html y la subes a templates/tus_plantillas/

Code: [Select]
{header}
<table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
    <td>
<table cellpadding="0" cellspacing="0"  width="100%"  border="0" bgcolor="#006699" >
 <tr>
  <td width="100%">
   <table border="0" cellpadding="0" cellspacing="0" bgcolor="#000000" width="100%" height="62" background="bbcell.gif" >
    <tr>
     <td width="50%" align="left"><img src="{template_url}/images/excitex.gif" width="246" height="58" align="center" alt="" /></td>
     <td width="50%" align="right" >
<form method="post" action="{url_search}">
              <table border="0" cellspacing="0" cellpadding="1">
                <tr>
                  <td>
                    <input type="text" name="search_keywords" size="15" class="searchinput" />
                  </td>
                  <td>
                    <input type="submit" value="{lang_search}" class="button" name="submit" />&nbsp;
                  </td>
                </tr>
                <tr valign="top">
                  <td colspan="2"><a href="{url_search}" class="smalltext">{lang_advanced_search}</a></td>
                </tr>
              </table>
            </form>
     </td>
   </tr>
  </table>
</td>
</tr>
</table>
     

    </td>
  </tr>
  <tr>
    <td class="bordercolor">
      <table width="100%" border="0" cellspacing="1" cellpadding="0">
        <tr>
          <td class="tablebgcolor">
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
   <tr>
    <td class="navbar" height="23">
     <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
       <td align="left" width="50%">
        <img src="{template_url}/images/spacer.gif" width="4" height="4" alt="" />{clickstream}
       </td>
       <td align="right">
     
        &nbsp;<a href="{url_top_images}" style="text-decoration: none; font-weight: 700">{lang_top_images}</a></b><font color="#00FF00"><b>&nbsp;/</b></font>
        <a href="{url_new_images}" style="text-decoration: none; font-weight: 700">{lang_new_images}<font color="#666666">
        </font><font color="#00FF00">/</font>
        <a href="{url_all_images}" style="text-decoration: none; font-weight: 700">{lang_all_images}&nbsp;&nbsp;
        </td>
      </tr>
     </table>
    </td>
   </tr>
  </table>
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="150" class="row2" valign="top">
                  <table width="150" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td class="head2" height="20"><img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_registered_user}</td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                    <tr>
                      <td align="center" class="row1">{user_box} </td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                  </table>
  {if random_image}
                  <table width="150" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td class="head2" height="20"> <img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_random_image}</td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                    <tr>
                      <td align="center" class="row1">
    <br />
                        {random_image}
<br />
                        <br />
                      </td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                  </table>
{endif random_image}
        </td>
                <td width="1" class="bordercolor" valign="top"><img src="{template_url}/images/spacer.gif" width="1" height="1" alt="" /></td>
                <td width="18" valign="top"><img src="{template_url}/images/spacer.gif" width="18" height="18" alt="" /></td>
                <td width="100%" valign="top"><br />
                   {if msg_error} <center>
                  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
                    <tr>
                      <td width="100%">{msg_error}</td>
                    </tr>
                </table>
               <br><p>{endif msg_error}{msg}{formulario} </p></br>

                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td>{category_dropdown_form}</td>
                      <td align="right">{setperpage_dropdown_form}</td>
                    </tr>
                  </table>
                  <p>&nbsp;</p>
                </td>
<td width="19" valign="top"><img src="{template_url}/images/spacer.gif" alt="" width="19" height="19" /></td>
              </tr>
            </table>
          </td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td>
     
    </td>
  </tr>
</table>
{footer}

o bien si tienes una plantilla ya definida copia este código en ella :

Code: [Select]
{if msg_error} <center>
                  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
                    <tr>
                      <td width="100%">{msg_error}</td>
                    </tr>
                </table>
               <br><p>{endif msg_error}{msg}{formulario}

Abrir lang/tu_idioma/main.php

Añadir antes de ?>

Code: [Select]
//---------------------------------------------------------------------------
// ------------------------------- Recomendar -------------------------------
//-----------------------------------------------------------------------------------
$lang['web'] = "http://www.tu_dominio.com/tu_galeria/";
$lang['titulo_web'] = "titulo de la galeria";
$lang['asunto'] = "Sitio Recomendado";
$lang['recomendar'] = "Recomendar";
$lang['nombre_tuyo'] = "Tu Nombre ";
$lang['email_tuyo'] = "Tu E-Mail ";
$lang['nombre_amigos'] = "Nombre de tu amigo";
$lang['email_amigos'] = "E-Mail de tu amigo";
$lang['regresar_formulario'] = "Regresar al formulario";
$lang['aviso_complementar_campos'] ="<center>Por favor, es necesario que complementes todos los campos.<br>";
$lang['gracias'] = "Gracias por recomendarnos !!!";
$lang['regresar'] = "Regresar al inicio";
$lang['mensaje_enviado'] = "El mensaje ha sido enviado al amigo ";
$lang['recomendar_sitio'] = "Recomienda este sitio";
$lang['opcionales'] = "Opcionales";
$lang['saludo'] = "Hola";
$lang['presentacion'] = "Tu amigo";
$lang['te_recomienda'] = "te recomienda el sitio";
$lang['visitelo'] = "Visítalo, haciendo click en :";
$lang['no_correcto'] = "no es correcto";
$lang['falta'] = "le falta";
$lang['ofensivo'] = "Si este E-Mail te es ofensivo,, por favor contacta con";
$lang['manda_mensaje'] = "además te manda el siguiente mensaje :";
$lang['ofensa'] = "me has ofendido";
$lang['mandado'] = "que es quien te lo ha mandado";
$lang['saludo_equipo'] = "Recibe un cordial saludo del equipo de";
$lang['soy'] = "soy";
$lang['error_email_amigo'] = "El formato del E-Mail del amigo";
$lang['error_email'] = "El formato de tu E-Mail";
$lang['error_caracteres'] = "contiene caracteres especiales";
$lang['error_espacios'] = "contiene espacios en blanco";
$lang['error_punto'] = "le falta el punto";
$lang['error_extension_email_amigo'] = "La extensión del dominio del E-mail del amigo";
$lang['error_extension_email'] = "La extensión del dominio de tu E-mail";
$lang['error_no_email_amigo'] = "No has introducido el E-Mail del amigo";
$lang['error_no_nombre_amigo'] = "No has introducido el Nombre de tu amigo";
$lang['error_no_email'] = "No has introducido tu E-Mail";
$lang['error_no_nombre'] = "No has introducido tu Nombre";


NOTA : Cambiar los valores de $lang[web] = "http://www.tu_dominio.com/tu_galeria/"; por la dirección de tu galería y el $lang[titulo_web] = "titulo de la galeria"; por el título de tu galería .

Añadir esta etiqueta en las plantillas y lugar donde quieras que salga el link para recomedar la galería :

Quote
<a href="recomendar.php">Recomendar</a>

excitex2


14
Saludos,,,

Ya hay varias voces que piden la unificación de los MOD's que hay ,, ya sean traducidos o realizados en español.

Cuando alguien traduzca o realice un MOD,, que incorpore un link en esta lista.

Pero seamos serios,,, porque si no ,,  esta lista no valdrá para nada.

Tampoco insertemos en este listado : Observaciones,,, dudas,, agradecimientos,,, quejas,,, etc,etc,, dejemos que sea solo un listado,,, para todo lo demás podemos abrir otro post

15
Español / Castellano / [MOD] Recomendar a un amigo - Versión 1.0
« on: June 02, 2005, 12:07:23 AM »
Saludos,,,

Este MOD es para recomendar nuestra galería a uno o varios amigos.

Nombrar este script como recomendar.php y subirlo al directorio raiz de tu galería.

MUY IMPORTANTE : Se tiene que modificar los valores de las variables $web y $titulo_web con la dirección de tu galería y el título de la misma

Code: [Select]
<?php

$main_template 
'recomendar';

define('GET_CACHES'1);
define('ROOT_PATH''./');
include(
ROOT_PATH.'global.php');
require(
ROOT_PATH.'includes/sessions.php');
$user_access get_permission();
include(
ROOT_PATH.'includes/page_header.php');

// Controlamos la función que realiza en ese momento el script
if ($HTTP_GET_VARS["accion"] == "") { 
 
//Creamos el formulario de envio
$formulario ="<form method=\"post\" action=\"recomendar.php?accion=enviar\" name=\"Recomendar\">
<table border=0 cellspacing=\"0\" cellpadding=\"0\" width=\"100%\">
<tr><td><table cellspacing=\"0\" cellpadding=\"0\" width=\"100%\" >
<tr><td class=\"head1\" colspan=\"2\" height=\"20\"> Recomienda este sitio</b>
</td></tr>

 <tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Tu Nombre: </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"tu_nombre\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; Tu E-mail: </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"tu_email\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Nombre de tu amigo 1 : </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[1]\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; E-mail de tu amigo 1 : </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[1]\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
 <tr><td width=\"33%\" height=\"20\" class=\"head2\"><b>Opcionales</b></td><td class=\"head2\" width=\"66%\" height=\"20\"></td></tr>

 <tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>
 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Nombre de tu amigo 2 : </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[2]\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; E-mail de tu amigo 2 : </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[2]\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Nombre de tu amigo 3 : </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[3]\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; E-mail de tu amigo 3 : </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[3]\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Nombre de tu amigo 4 : </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[4]\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; E-mail de tu amigo 4 : </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[4]\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"5\"></td><td width=\"66%\" height=\"5\"></td></tr>

 <tr><td class=\"row1\" width=\"33%\"><b>&nbsp; Nombre de tu amigo 5 : </b><br></td>
     <td class=\"row1\" width=\"66%\"><input type=\"text\" name=\"nombre_amigo[5]\" size=\"30\"></td></tr>
 <tr><td class=\"row2\" width=\"33%\"><b>&nbsp; E-mail de tu amigo 5 : </b><br></td>
     <td class=\"row2\" width=\"66%\"><input type=\"text\" name=\"email_amigo[5]\" size=\"30\"></td></tr>
 <tr><td width=\"33%\" height=\"10\"></td><td width=\"66%\" height=\"10\"></td></tr>

</table></td></tr></table>

<p align=\"center\"><input type=\"submit\" value=\"Recomendar\" class=\"button\" size=\"20\">
<input type=\"reset\" value=\"Restablecer\" class=\"button\" /></form>"
;



// Controlamos que todos los campos esten correctos antes de enviarlos
elseif ($HTTP_GET_VARS["accion"] == "enviar") { 

if (empty(
$tu_nombre)){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido tu Nombre.</br>"
;
$control 1;
}

if (empty(
$tu_email)){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido tu E-Mail.</br>"
;
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($tu_email)) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($tu_email,"'")) && (!strstr($tu_email,"\"")) && (!strstr($tu_email,"\\")) && (!strstr($tu_email,"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($tu_email,"@") == 1) && (substr($tu_email,0,1) != "@") && (substr($tu_email,strlen($tu_email)-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($tu_email," "))) { 
       
//Verificamos que contenga el punto '.' 
if (substr_count($tu_email,".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($tu_email'.'),1); 
 
//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

// compruebo que lo de antes del dominio sea correcto 
// $anterior = substr($tu_email,0,strlen($tu_email) - strlen($dominio) - 1); 
// $ultimo = substr($anterior,strlen($anterior)-1,1); 
// if ($ultimo != "@" && $ultimo != "."){ 
//  $mail_correcto = 1; 
// }
 
}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> La extensión 
del dominio de tu E-mail no es la correcta.</br>"
;
$control 1;
}
 
}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato de
 tu E-Mail no es correcto, le falta el punto '<font color=\"#FF0000\">.</font>'</br>"
;
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato de
 tu E-Mail no es correcto, contiene espacios en blanco.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato de
 tu E-Mail no es correcto, le falta '<font color=\"#FF0000\">@</font>'.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato de
 tu E-Mail no es correcto, contiene caracteres especiales.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato de
 tu E-Mail no es correcto.</br>"
;
$control 1;
}
}

FOR (
$numero=1;$numero<=5;$numero++){

if (
$numero == 1) {

if (empty(
$nombre_amigo[1])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido el Nombre de tu amigo 1.</br>"
;
$control 1;
}

if (empty(
$email_amigo[1])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido el E-Mail del amigo 1.</br>"
;
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($email_amigo[1])) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($email_amigo[1],"'")) && (!strstr($email_amigo[1],"\"")) && (!strstr($email_amigo[1],"\\")) && (!strstr($email_amigo[1],"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($email_amigo[1],"@") == 1) && (substr($email_amigo[1],0,1) != "@") && (substr($email_amigo[1],strlen($email_amigo[1])-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($email_amigo[1]," "))) { 
       
//Verificamos que contenga el punto '.' 
if (substr_count($email_amigo[1],".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($email_amigo[1], '.'),1); 
 
//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

//Verificamos que el formato existente antes del dominio sea correcto 
$anterior substr($email_amigo[1],0,strlen($email_amigo[1]) - strlen($dominio) - 1); 
$ultimo substr($anterior,strlen($anterior)-1,1); 
if (
$ultimo != "@" && $ultimo != "."){ 
}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b>
</font> El formato del E-Mail del amigo 1 no es correcto--------.</br>"
;
$control 1;


}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> La extensión 
del dominio del E-mail del amigo 1 no es la correcta.</br>"
;
$control 1;
}
 
}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 1 no es correcto, le falta el punto '<font color=\"#FF0000\">.</font>'</br>"
;
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 1 no es correcto, contiene espacios en blanco.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 1 no es correcto, le falta '<font color=\"#FF0000\">@</font>'.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 1 no es correcto, contiene caracteres especiales.</br>"
;
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 1 no es correcto.</br>"
;
$control 1;
}
}
}
else
{

if (
$nombre_amigo[$numero] != "" || $email_amigo[$numero] != "") { 

if (empty(
$nombre_amigo[$numero])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido el Nombre de tu amigo 
$numero.</br>";
$control 1;
}

if (empty(
$email_amigo[$numero])){
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> No has
introducido el E-Mail del amigo 
$numero.</br>";
$control 1;
}
else
{
//Verificamos la longuitud del E-Mail
if ((strlen($email_amigo[$numero])) >= 6) {

//Verificamos que no contengan caracteres especiales no permitidos
if ((!strstr($email_amigo[$numero],"'")) && (!strstr($email_amigo[$numero],"\"")) && (!strstr($email_amigo[$numero],"\\")) && (!strstr($email_amigo[$numero],"\$"))) {

//Verificamos que contenga el simbolo '@'
if ((substr_count($email_amigo[$numero],"@") == 1) && (substr($email_amigo[$numero],0,1) != "@") && (substr($email_amigo[$numero],strlen($email_amigo[$numero])-1,1) != "@")){ 

//Verificamos que no contenga espacios en blanco
if ((!strstr($email_amigo[$numero]," "))) { 
       
//Verificamos que contenga el punto '.' 
if (substr_count($email_amigo[$numero],".")>= 1) { 

//Verificamos que exista un dominio 
$dominio substr(strrchr ($email_amigo[$numero], '.'),1); 
 
//Verificamos que la longuitud del dominio sea correcta 
if (strlen($dominio)>&& strlen($dominio)<&& (!strstr($dominio,"@")) ){ 

//Verificamos que el formato existente antes del dominio sea correcto 
$anterior substr($email_amigo[$numero],0,strlen($email_amigo[$numero]) - strlen($dominio) - 1); 
$ultimo substr($anterior,strlen($anterior)-1,1); 
if (
$ultimo != "@" && $ultimo != "."){ 
}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b>
</font> El formato del E-Mail del amigo 
$numero no es correcto .</br>";
$control 1;


}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> La extensión 
del dominio del E-mail del amigo 
$numero no es la correcta.</br>";
$control 1;
}
 
}

else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 
$numero no es correcto, le falta el punto '<font color=\"#FF0000\">.</font>'</br>";
$control 1;
}


else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 
$numero no es correcto, contiene espacios en blanco.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 
$numero no es correcto, le falta '<font color=\"#FF0000\">@</font>'.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 
$numero no es correcto, contiene caracteres especiales.</br>";
$control 1;
}

}
else
{
$msg_error .="<font color=\"#FF0000\"><b>&nbsp;&nbsp;Error:</b></font> El formato del
 E-Mail del amigo 
$numero no es correcto.</br>";
$control 1;
}
}
// finaliza el if

}
// finaliza el for

//Iniciamos el bucle mandamos los E-mails a los diferentes amigos

FOR ($contador=1;$contador<=5;$contador++){

if (
$nombre_amigo[$contador] != "" && $email_amigo[$contador] != "") { 

// Realizamos el control para mandar el correo 
  if ($control == 0) { 

//Limpiamos de posibles ataques.

$tunombre htmlentities($tu_nombre);
$tuemail htmlentities($tu_email);
$nombreamigo htmlentities($nombre_amigo[$contador]);
$emailamigo htmlentities($email_amigo[$contador]);

//Enviamos el E-mail con todos los datos.
$web "http://www.tu_dominio/tu_galeria/";

$titulo_web "titulo o nombre de tu galería";

//Asunto del E-mail.
$asunto "Sitio Recomendado";

//Mensaje que recibirá tu amigo. No lo edites, o se caerá el script!.
$mensaje "Hola $nombreamigo! \n
Tu Amigo 
$tu_nombre, te recomienda el sitio $titulo_web, porque es interesante.
Visítalo, haciendo click en: 
$web \n\n";
    
//Recopilamos el mensaje.
mail("$emailamigo""$asunto""$mensaje""FROM: $tuemail");

//Informa al usuario que se ha enviado el mensaje 

     $msg .="<b>El mensaje ha sido enviado al amigo $contador</b>. </br>"
     

//si existen campos vacíos, envía un mensaje de error 

    }

if (
$control == 0) { 

//Damos las gracias al visitante por recomendarnos.

$msg .="<br>Gracias por recomendarnos! </br><a href=$web>Regresar al inicio</a>."
}
else {
$msg .="<center>Por favor, es necesario que complementes todos los campos.<br>"
     $msg .=" <p>
<form><input type=\"button\" class=\"button\" value=\"Regresar al formulario\" onClick=\"history.go(-1);return true\"></form>
</p></center>"

}
}
//-----------------------------------------------------
//--- Clickstream -------------------------------------
//-----------------------------------------------------
$clickstream "<span class=\"clickstream\"><a href=\"".$site_sess->url(ROOT_PATH."index.php")."\" class=\"clickstream\">".$lang['home']."</a>".$config['category_separator'];
if (
$cat_id && isset($cat_cache[$cat_id])) {
  $clickstream .= get_category_path($cat_id1).$config['category_separator'];
}
$clickstream .= "recomendar"//$lang['top_images']."</span>";

//-----------------------------------------------------
//--- Print Out ---------------------------------------
//-----------------------------------------------------
$site_template->register_vars(array(
  "msg" => $msg,
  "msg_error" => $msg_error
  "clickstream" => $clickstream,
  "formulario" => $formulario
));
$site_template->print_template($site_template->parse_template($main_template));

?>

Nombrar esta plantilla como recomendar.html y la subes a templates/tus_plantillas/

Code: [Select]
{header}
<table width="640" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
    <td>
      <table width="640" border="0" cellspacing="0" cellpadding="0" class="tablehead">
        <tr>
          <td colspan="4"><img src="{template_url}/images/header_top.gif" width="640" height="6" alt="" /></td>
        </tr>
        <tr>
          <td width="6"><img src="{template_url}/images/header_left.gif" width="6" height="60" alt="" /></td>
          <td width="405"><img src="{template_url}/images/header_logo.gif" width="405" height="60" alt="" /></td>
          <td width="225" align="right">
            <form method="post" action="{url_search}">
              <table border="0" cellspacing="0" cellpadding="1">
                <tr>
                  <td>
                    <input type="text" name="search_keywords" size="15" class="searchinput" />
                  </td>
                  <td>
                    <input type="submit" value="{lang_search}" class="button" name="submit" />
                  </td>
                </tr>
                <tr valign="top">
                  <td colspan="2"><a href="{url_search}" class="smalltext">{lang_advanced_search}</a></td>
                </tr>
              </table>
            </form>
          </td>
          <td align="right" width="6"><img src="{template_url}/images/header_right.gif" width="6" height="60" alt="" /></td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td class="bordercolor">
      <table width="640" border="0" cellspacing="1" cellpadding="0">
        <tr>
          <td class="tablebgcolor">
            <table width="638" border="0" cellspacing="1" cellpadding="0">
              <tr>
                <td height="23" class="navbar">
                  <table width="636" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td><img src="{template_url}/images/spacer.gif" width="4" height="4" alt="" />{clickstream}</td>
                      <td align="right">
                      <a href="{url_top_images}"><b>{lang_top_images}</b></a>&nbsp;
<a href="{url_new_images}"><b>{lang_new_images}</b></a>&nbsp;</td>
                    </tr>
                  </table>
                </td>
              </tr>
            </table>
            <table width="638" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="150" valign="top" class="row2">
                  <table width="150" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td class="head2" height="20"><img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_registered_user}</td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                    <tr>
                      <td align="center" class="row1">{user_box} </td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                  </table>
                  {if random_image}
                  <table width="150" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td class="head2" height="20"> <img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_random_image}</td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                    <tr>
                      <td align="center" class="row1">
    <br />
                        {random_image}
<br />
                        <br />
                      </td>
                    </tr>
                    <tr>
                      <td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
                    </tr>
                  </table>
                  {endif random_image}
                </td>
                <td width="1" class="bordercolor" valign="top"><img src="{template_url}/images/spacer.gif" width="1" height="1" alt="" /></td>
                <td width="18" valign="top"><img src="{template_url}/images/spacer.gif" width="18" height="18" alt="" /></td>
                <td width="450" valign="top"><br />
               
                {if msg_error} <center>
                  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
                    <tr>
                      <td width="100%">{msg_error}</td>
                    </tr>
                </table>
               <br><p>{endif msg_error}{msg}{formulario} </p></br>
                  <hr size="1" />
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td>{category_dropdown_form}</td>
                      <td align="right">{setperpage_dropdown_form}</td>
                    </tr>
                  </table>
                  <p>&nbsp;</p>
                </td>
                <td width="20" valign="top"><img src="{template_url}/images/spacer.gif" width="19" height="19" alt="" /></td>
              </tr>
            </table>
          </td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td>
      <table width="640" border="0" cellspacing="0" cellpadding="0" class="tablebottom">
        <tr>
          <td width="6"><img src="{template_url}/images/footer_left.gif" width="6" height="19" alt="" /></td>
          <td width="405">&nbsp;</td>
          <td width="225">&nbsp;</td>
          <td width="6"><img src="{template_url}/images/footer_right.gif" width="6" height="19" alt="" /></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
{footer}

o bien si tienes una plantilla ya definida copia este código en ella :

Code: [Select]
{if msg_error} <center>
                  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
                    <tr>
                      <td width="100%">{msg_error}</td>
                    </tr>
                </table>
               <br><p>{endif msg_error}{msg}{formulario}

Añadir esta etiqueta en las plantillas y lugar donde quieras que salga el link para recomedar la galería :

Quote
<a href="recomendar.php">Recomendar</a>

En una próxima versión,, este MOD será multilingue y se podrá enviar mensajes en formato html junto a la recomendación.

excitex2


Pages: [1] 2