Guía rápida para agregar módulos extras a mkportal.
Primero comenzaremos con el agregado de tablas a la base de datos, para esto tomaremos como ejemplo que ya esta instalado el modulo de mkp proyectos y queremos instalar el modulo mkp blockchat.
1.- Primero entramos a phpMyAdmin y buscamos la tabla llamada “mkp_pgroups” y nos desplazamos al final de ella, debe verse más o menos así:

2.- Ahora abrimos el archivo mkp_blockchat.sql que contiene las tablas de mkp blockchat y buscamos las líneas:
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_access_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_mod_reviews`;
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_send_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_access_blockchat`;
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_mod_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_send_blockchat`;
Si se fijan verán que la primera línea dice que debe agregar la columna “g_access_blockchat” después de la columna “g_mod_reviews” pero la columna “g_access_blockchat” debe agregarse después de la ultima columna de la tabla “mkp_pgroups” así que cambiaremos la líneas anteriores a:
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_access_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_mod_proyectos`;
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_send_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_access_blockchat`;
ALTER TABLE `mkp_pgroups` ADD COLUMN `g_mod_blockchat` TINYINT(1) NOT NULL DEFAULT 0 AFTER `g_send_blockchat`;
Importen las tablas modificadas mkp_blockchat.sql a su base de datos y las líneas deben quedar más o menos así:
2.- Otro punto que hay que modificar de las instrucciones de instalación es cuando se hacen las modificaciones al script ad_perms.php.
Cuando hicieron la instalación de mkp proyectos las líneas:
for ($i = 1; $i <= 23; $i++) {
$n[$i] = "checked";
}
Quedaron así:
for ($i = 1; $i <= 26; $i++) {
$n[$i] = "checked";
}
El conteo quedo en 26 porque se agregaron 3 columnas de mkp proyectos a la tabla mkp_pgroups, como esta vez estamos agregando otras 3 columnas de mkp blockchat a esa tabla el conteo aumentara a 29, así:
for ($i = 1; $i <= 29; $i++) {
$n[$i] = "checked";
}
Siguiendo la secuencia, el siguiente punto seria agregar las líneas:
if ($row['g_access_blockchat'] == 1) {
$y[27] = "checked";
$n[27] = "";
}
if ($row['g_send_blockchat'] == 1) {
$y[28] = "checked";
$n[28] = "";
}
if ($row['g_mod_blockchat'] == 1) {
$y[29] = "checked";
$n[29] = "";
}
Después de:
if ($row['g_access_proyectos'] == 1) {
$y[24] = "checked";
$n[24] = "";
}
if ($row['g_send_proyectos'] == 1) {
$y[25] = "checked";
$n[25] = "";
}
if ($row['g_mod_proyectos'] == 1) {
$y[26] = "checked";
$n[26] = "";
}
Nuevamente, siguiendo la secuencia debemos agregar las líneas:
<tr>
<td width=\"250\" class=\"tdblock\">{$mklib->lang['ad_p_accblockchat']}</td>
<td> {$mklib->lang['ad_yes']}<input type=\"radio\" value=\"1\" name=\"p27\" $y[27] />{$mklib->lang['ad_no']}<input type=\"radio\" value=\"0\" name=\"p27\" $n[27] /></td>
</tr>
<tr>
<td width=\"250\" class=\"tdblock\">{$mklib->lang['ad_p_sendblockchat']}</td>
<td> {$mklib->lang['ad_yes']}<input type=\"radio\" value=\"1\" name=\"p28\" $y[28] />{$mklib->lang['ad_no']}<input type=\"radio\" value=\"0\" name=\"p28\" $n[28] /></td>
</tr>
<tr>
<td width=\"250\" class=\"tdblock\">{$mklib->lang['ad_p_modblockchat']}</td>
<td> {$mklib->lang['ad_yes']}<input type=\"radio\" value=\"1\" name=\"p29\" $y[29] />{$mklib->lang['ad_no']}<input type=\"radio\" value=\"0\" name=\"p29\" $n[29] /></td>
</tr>
<tr><td><br /></td></tr>
Nuevamente en la próxima modificación se sigue la secuencia; casi al final de esta línea:
$DB->query("UPDATE mkp_pgroups SET g_title ='$g_title', g_send_news ='{$mkportals->input['p1']}', g_mod_news ='{$mkportals->input['p2']}', g_access_download ='{$mkportals->input['p3']}', g_send_download ='{$mkportals->input['p4']}', g_mod_download ='{$mkportals->input['p5']}', g_access_gallery ='{$mkportals->input['p6']}', g_send_gallery ='{$mkportals->input['p7']}', g_mod_gallery ='{$mkportals->input['p8']}', g_access_urlobox ='{$mkportals->input['p9']}', g_send_urlobox ='{$mkportals->input['p10']}', g_mod_urlobox ='{$mkportals->input['p11']}', g_access_chat ='{$mkportals->input['p12']}', g_access_cpa ='{$mkportals->input['p13']}', g_access_blog ='{$mkportals->input['p14']}', g_send_blog ='{$mkportals->input['p15']}', g_access_topsite='{$mkportals->input['p16']}', g_send_topsite='{$mkportals->input['p17']}', g_send_ecard='{$mkportals->input['p18']}', g_send_quote='{$mkportals->input['p19']}', g_send_comments='{$mkportals->input['p20']}', g_access_reviews ='{$mkportals->input['p21']}', g_send_reviews ='{$mkportals->input['p22']}', g_mod_reviews ='{$mkportals->input['p23']}', g_access_proyectos ='{$mkportals->input['p24']}', g_send_proyectos ='{$mkportals->input['p25']}', g_mod_proyectos ='{$mkportals->input['p26']}' WHERE g_id = '$g_id' ");
Antes de “WHERE” deben agregar la frase:
, g_access_blockchat ='{$mkportals->input['p27']}', g_send_blockchat ='{$mkportals->input['p28']}', g_mod_blockchat ='{$mkportals->input['p29']}'
Por último, en la línea:
$DB->query("INSERT INTO mkp_pgroups(g_id, g_title, g_send_news, g_mod_news, g_access_download, g_send_download, g_mod_download, g_access_gallery, g_send_gallery, g_mod_gallery, g_access_urlobox, g_send_urlobox, g_mod_urlobox, g_access_chat, g_access_cpa, g_access_blog, g_send_blog, g_access_topsite, g_send_topsite, g_send_ecard, g_send_quote, g_send_comments, g_access_reviews, g_send_reviews, g_mod_reviews, g_access_proyectos, g_send_proyectos, g_mod_proyectos)VALUES('$g_id', '$g_title', '{$mkportals->input['p1']}', '{$mkportals->input['p2']}', '{$mkportals->input['p3']}', '{$mkportals->input['p4']}', '{$mkportals->input['p5']}', '{$mkportals->input['p6']}', '{$mkportals->input['p7']}', '{$mkportals->input['p8']}', '{$mkportals->input['p9']}', '{$mkportals->input['p10']}', '{$mkportals->input['p11']}', '{$mkportals->input['p12']}', '{$mkportals->input['p13']}', '{$mkportals->input['p14']}', '{$mkportals->input['p15']}', '{$mkportals->input['p16']}', '{$mkportals->input['p17']}', '{$mkportals->input['p18']}', '{$mkportals->input['p19']}', '{$mkportals->input['p20']}', '{$mkportals->input['p21']}', '{$mkportals->input['p22']}', '{$mkportals->input['p23']}', '{$mkportals->input['p24']}', '{$mkportals->input['p25']}', '{$mkportals->input['p26']}') ");
Antes de “)VALUES(“ deben agregar la frase:
, g_access_blockchat, g_send_blockchat, g_mod_blockchat
Y por último, después de la frase:
'{$mkportals->input['p24']}', '{$mkportals->input['p25']}', '{$mkportals->input['p26']}'
Deben agregar:
, '{$mkportals->input['p27']}', '{$mkportals->input['p28']}', '{$mkportals->input['p29']}'
Básicamente son todos los cambios que deben tomar en cuenta cuando instalan mas de un modulo extra, todo es cuestión de seguir la secuencia de números, por ejemplo cuando instalan un tercer modulo la cuenta aumentara 3 mas, de 27, 28 y 29 a 30, 31 y 32 y así sucesivamente, pero sin afectar las que ya tienen instaladas, tambien deben ponerle especial atencion a las comas y comillas ya que si falta aunque sea una la instalacion no funcionara.
Saludos.